zombiesurvival-evolved/gamemodes/zombiesurvival/entities/weapons/weapon_zs_swissarmyknife.lua

78 lines
2.2 KiB
Lua
Raw Normal View History

2014-10-02 08:49:54 +08:00
AddCSLuaFile()
if CLIENT then
SWEP.PrintName = "Knife"
SWEP.Description = "Deals double damage to the back."
SWEP.ViewModelFlip = false
SWEP.ViewModelFOV = 55
end
SWEP.Base = "weapon_zs_basemelee"
SWEP.HoldType = "knife"
SWEP.ViewModel = "models/weapons/cstrike/c_knife_t.mdl"
SWEP.WorldModel = "models/weapons/w_knife_t.mdl"
SWEP.UseHands = true
SWEP.MeleeDamage = 19
SWEP.MeleeRange = 62
SWEP.MeleeSize = 0.875
SWEP.WalkSpeed = SPEED_FASTEST
SWEP.Primary.Delay = 0.85
SWEP.HitDecal = "Manhackcut"
SWEP.HitGesture = ACT_HL2MP_GESTURE_RANGE_ATTACK_KNIFE
SWEP.MissGesture = SWEP.HitGesture
SWEP.HitAnim = ACT_VM_MISSCENTER
SWEP.MissAnim = ACT_VM_PRIMARYATTACK
SWEP.NoHitSoundFlesh = true
function SWEP:PlaySwingSound()
self:EmitSound("weapons/knife/knife_slash"..math.random(2)..".wav")
end
function SWEP:PlayHitSound()
self:EmitSound("weapons/knife/knife_hitwall1.wav")
end
function SWEP:PlayHitFleshSound()
self:EmitSound("weapons/knife/knife_hit"..math.random(4)..".wav")
end
function SWEP:OnMeleeHit(hitent, hitflesh, tr)
if hitent:IsValid() and hitent:IsPlayer() and not self.m_BackStabbing and math.abs(hitent:GetForward():Angle().yaw - self.Owner:GetForward():Angle().yaw) <= 90 then
self.m_BackStabbing = true
self.MeleeDamage = self.MeleeDamage * 2
end
end
function SWEP:PostOnMeleeHit(hitent, hitflesh, tr)
if self.m_BackStabbing then
self.m_BackStabbing = false
self.MeleeDamage = self.MeleeDamage / 2
end
end
if SERVER then
function SWEP:InitializeHoldType()
self.ActivityTranslate = {}
self.ActivityTranslate[ACT_HL2MP_IDLE] = ACT_HL2MP_IDLE_KNIFE
self.ActivityTranslate[ACT_HL2MP_WALK] = ACT_HL2MP_WALK_KNIFE
self.ActivityTranslate[ACT_HL2MP_RUN] = ACT_HL2MP_RUN_KNIFE
self.ActivityTranslate[ACT_HL2MP_IDLE_CROUCH] = ACT_HL2MP_IDLE_CROUCH_PHYSGUN
self.ActivityTranslate[ACT_HL2MP_WALK_CROUCH] = ACT_HL2MP_WALK_CROUCH_KNIFE
self.ActivityTranslate[ACT_HL2MP_GESTURE_RANGE_ATTACK] = ACT_HL2MP_GESTURE_RANGE_ATTACK_KNIFE
self.ActivityTranslate[ACT_HL2MP_GESTURE_RELOAD] = ACT_HL2MP_GESTURE_RELOAD_KNIFE
self.ActivityTranslate[ACT_HL2MP_JUMP] = ACT_HL2MP_JUMP_KNIFE
self.ActivityTranslate[ACT_RANGE_ATTACK1] = ACT_RANGE_ATTACK_KNIFE
end
end