44 lines
1.1 KiB
Lua
44 lines
1.1 KiB
Lua
include("shared.lua")
|
|
|
|
SWEP.PrintName = "Resupply Box"
|
|
SWEP.Description = "Allows survivors to get ammunition for their current weapon. Each person can only use the box once every so often.\nPress PRIMARY ATTACK to deploy the box.\nPress SECONDARY ATTACK and RELOAD to rotate the box."
|
|
SWEP.DrawCrosshair = false
|
|
|
|
SWEP.Slot = 4
|
|
SWEP.SlotPos = 0
|
|
|
|
function SWEP:DrawHUD()
|
|
if GetConVarNumber("crosshair") ~= 1 then return end
|
|
self:DrawCrosshairDot()
|
|
end
|
|
|
|
function SWEP:PrimaryAttack()
|
|
end
|
|
|
|
function SWEP:DrawWeaponSelection(...)
|
|
return self:BaseDrawWeaponSelection(...)
|
|
end
|
|
|
|
function SWEP:Think()
|
|
if self.Owner:KeyDown(IN_ATTACK2) then
|
|
self:RotateGhost(FrameTime() * 60)
|
|
end
|
|
if self.Owner:KeyDown(IN_RELOAD) then
|
|
self:RotateGhost(FrameTime() * -60)
|
|
end
|
|
end
|
|
|
|
function SWEP:Deploy()
|
|
gamemode.Call("WeaponDeployed", self.Owner, self)
|
|
|
|
return true
|
|
end
|
|
|
|
local nextclick = 0
|
|
function SWEP:RotateGhost(amount)
|
|
if nextclick <= RealTime() then
|
|
surface.PlaySound("npc/headcrab_poison/ph_step4.wav")
|
|
nextclick = RealTime() + 0.3
|
|
end
|
|
RunConsoleCommand("_zs_ghostrotation", math.NormalizeAngle(GetConVarNumber("_zs_ghostrotation") + amount))
|
|
end
|