45 lines
1.1 KiB
Lua
45 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
|