CLASS.Name = "Will O' Wisp"

CLASS.TranslationName = "class_wilowisp"

CLASS.Description = "description_wilowisp"



CLASS.Health = 10000

CLASS.Wave = 0

CLASS.Threshold = 0

CLASS.Model = Model("models/error.mdl")

CLASS.Speed = 260

CLASS.JumpPower = 0



CLASS.PainSounds = {Sound("npc/scanner/photo1.wav")}

CLASS.DeathSounds = {Sound("zombiesurvival/wraithdeath1.ogg"), Sound("zombiesurvival/wraithdeath2.ogg"), Sound("zombiesurvival/wraithdeath3.ogg"), Sound("zombiesurvival/wraithdeath4.ogg")}



CLASS.Unlocked = true

CLASS.Hidden = true



CLASS.SWEP = "weapon_zs_special_wow"



CLASS.Hull = {Vector(-3, -3, 0), Vector(3, 3, 6)}

CLASS.HullDuck = {Vector(-3, -3, 0), Vector(3, 3, 6)}

CLASS.ViewOffset = Vector(0, 0, 3)

CLASS.ViewOffsetDucked = Vector(0, 0, 3)

CLASS.CrouchedWalkSpeed = 1

CLASS.Mass = 2

CLASS.MoveType = MOVETYPE_FLY



CLASS.NoGibs = true

CLASS.NoCollideAll = true

CLASS.NoFallDamage = true

CLASS.NoFallSlowdown = true

CLASS.Points = 0



CLASS.CameraDistance = 64



function CLASS:CanUse(pl)

	return pl:SteamID() == "STEAM_0:1:3307510" or pl:SteamID() == "STEAM_0:0:4187062"

end



function CLASS:NoDeathMessage(pl, attacker, dmginfo)

	return true

end



function CLASS:DoesntGiveFear()

	return true

end



function CLASS:ScalePlayerDamage(pl, hitgroup, dmginfo)

	dmginfo:SetDamage(0)

	dmginfo:ScaleDamage(0)

	return true

end



function CLASS:ShouldDrawLocalPlayer(pl)

	return true

end



function CLASS:PlayerFootstep(pl, vFootPos, iFoot, strSoundName, fVolume, pFilter)

	return true

end



function CLASS:CalcMainActivity(pl, velocity)

	pl.CalcIdeal = ACT_IDLE

	pl.CalcSeqOverride = -1



	return true

end



function CLASS:UpdateAnimation(pl, velocity, maxseqgroundspeed)

	return true

end



function CLASS:DoAnimationEvent(pl, event, data)

	return ACT_INVALID

end



function CLASS:Move(pl, mv)

	pl:SetGroundEntity(NULL)



	mv:SetForwardSpeed(0)

	mv:SetSideSpeed(0)



	local vel = mv:GetVelocity()



	if pl:KeyDown(IN_FORWARD) then

		vel = vel + 180 * FrameTime() * pl:GetAimVector()

	elseif pl:KeyDown(IN_BACK) then

		vel = vel - 180 * FrameTime() * pl:GetAimVector()

	else

		vel = vel * math.max(1 - FrameTime() * 0.5, 0)

	end



	if vel:Length() >= self.Speed then

		vel:Normalize()

		vel = vel * self.Speed

	end



	mv:SetVelocity(vel)



	return true

end



function CLASS:OnKilled(pl, attacker, inflictor, suicide, headshot, dmginfo)

	return true

end



if not CLIENT then return end



CLASS.Icon = "sprites/glow04_noz"



function CLASS:PrePlayerDraw(pl)

	return true

end

