mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 05:43:46 +03:00
Upload
This commit is contained in:
93
lua/weapons/weapon_vj_hla_snark/shared.lua
Normal file
93
lua/weapons/weapon_vj_hla_snark/shared.lua
Normal file
@@ -0,0 +1,93 @@
|
||||
--[[
|
||||
| This file was obtained through the combined efforts
|
||||
| of Madbluntz & Plymouth Antiquarian Society.
|
||||
|
|
||||
| Credits: lifestorm, Gregory Wayne Rossel JR.,
|
||||
| Maloy, DrPepper10 @ RIP, Atle!
|
||||
|
|
||||
| Visit for more: https://plymouth.thetwilightzone.ru/
|
||||
--]]
|
||||
|
||||
if (!file.Exists("autorun/vj_base_autorun.lua","LUA")) then return end
|
||||
---------------------------------------------------------------------------------------------------------------------------------------------
|
||||
SWEP.Base = "weapon_vj_base"
|
||||
SWEP.PrintName = "Snark"
|
||||
SWEP.Author = ""
|
||||
SWEP.Contact = ""
|
||||
SWEP.Purpose = "This weapon is made for NPCs"
|
||||
SWEP.Instructions = "Controls are like a regular weapon."
|
||||
SWEP.Category = "Half-Life: Alyx"
|
||||
SWEP.HoldType = "grenade"
|
||||
SWEP.Spawnable = true
|
||||
SWEP.AdminOnly = false -- Is this weapon admin only?
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
------ View Model Variables ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
SWEP.ViewModel = "models/weapons/v_vr_xen_snark.mdl"
|
||||
SWEP.UseHands = false -- Should this weapon use Garry's Mod hands? (The model must support it!)
|
||||
SWEP.ViewModelFOV = 90 -- Player FOV for the view model
|
||||
-- Main Settings ---------------------------------------------------------------------------------------------------------------------------------------------
|
||||
SWEP.WorldModel = "models/weapons/w_vr_xen_snark.mdl" -- The world model (Third person, when a NPC is holding it, on ground, etc.)
|
||||
SWEP.WorldModel_UseCustomPosition = true -- Should the gun use custom position? This can be used to fix guns that are in the crotch
|
||||
SWEP.WorldModel_CustomPositionAngle = Vector(90, -10, 180)
|
||||
SWEP.WorldModel_CustomPositionOrigin = Vector(-3, 1, 0)
|
||||
SWEP.WorldModel_CustomPositionBone = "ValveBiped.Bip01_R_Hand" -- The bone it will use as the main point (Owner's bone)
|
||||
-- ====== Deployment Variables ====== --
|
||||
SWEP.AnimTbl_Deploy = {ACT_VM_PICKUP}
|
||||
SWEP.HasDeploySound = false -- Does the weapon have a deploy sound?
|
||||
SWEP.DeploySound = {"creatures/snark/draw_admire01.wav"} -- Sound played when the weapon is deployed
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
------ General Player Variables ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
-- ====== Inventory-Related Variables ====== --
|
||||
SWEP.Slot = 4 -- Which weapon slot you want your SWEP to be in? (1 2 3 4 5 6)
|
||||
-- ====== Secondary Fire Variables ====== --
|
||||
SWEP.AnimTbl_SecondaryFire = {ACT_VM_SECONDARYATTACK}
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
------ Primary Fire Variables ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
SWEP.Primary.DisableBulletCode = true -- The bullet won't spawn, this can be used when creating a projectile-based weapon
|
||||
SWEP.Primary.ClipSize = 1 -- Max amount of bullets per clip
|
||||
SWEP.Primary.Delay = 0.25 -- Time until it can shoot again
|
||||
SWEP.Primary.TakeAmmo = 0 -- How much ammo should it take from the clip after each shot? | 0 = Unlimited clip
|
||||
SWEP.Primary.Automatic = false -- Is it automatic?
|
||||
SWEP.Primary.Ammo = "Snark" -- Ammo type
|
||||
SWEP.AnimTbl_PrimaryFire = {ACT_VM_THROW}
|
||||
-- ====== Sound Variables ====== --
|
||||
SWEP.Primary.Sound = {"creatures/snark/vox_jump_01.wav","creatures/snark/vox_jump_02.wav"}
|
||||
----------------------------------------
|
||||
function SWEP:CustomOnInitialize()
|
||||
timer.Simple(1,function()
|
||||
if IsValid(self) then
|
||||
self.AnimTbl_Deploy = {ACT_VM_DRAW}
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
function SWEP:CustomOnThink()
|
||||
if self:GetOwner():IsPlayer() and self:GetOwner():IsSprinting() == true then
|
||||
self.AnimTbl_Idle = {ACT_VM_SPRINT_IDLE}
|
||||
else
|
||||
self.AnimTbl_Idle = {ACT_VM_IDLE}
|
||||
end
|
||||
end
|
||||
|
||||
function SWEP:CustomOnPrimaryAttackEffects(owner)
|
||||
local snark = ents.Create("npc_vj_hla_snark")
|
||||
snark:SetPos(self:GetOwner():GetPos()+Vector(0,0,60)+self:GetOwner():GetForward()*50+self:GetOwner():GetRight()*7)
|
||||
snark:SetAngles(snark:GetAngles()+Angle(0,(self:GetOwner():GetAngles().Y),0))
|
||||
snark:Spawn()
|
||||
snark:SetVelocity(self:GetOwner():GetAimVector() * 700)
|
||||
-- snark.VJ_NPC_Class = {"CLASS_ALIEN_MILITARY","CLASS_SNARK","CLASS_XEN","CLASS_PLAYER_ALLY"}
|
||||
-- snark.FriendsWithAllPlayerAllies = true
|
||||
|
||||
return false
|
||||
end -- Return false to disable the base effects
|
||||
|
||||
function SWEP:CustomOnFireAnimationEvent(pos, ang, event, options)
|
||||
if options == "snark_drawadmire" then
|
||||
VJ_EmitSound(self,"creatures/snark/draw_admire01.wav",75,100)
|
||||
end
|
||||
return false
|
||||
end
|
||||
-- All functions and variables are located inside the base files. It can be found in the GitHub Repository: https://github.com/DrVrej/VJ-Base
|
||||
Reference in New Issue
Block a user