Public feed
#532174
SWEP.ScaleStartTime = 0
SWEP.SpriteScale = 0
SWEP.DoSpriteScale = false
function SWEP:Think() -- Called every frame
if !self.Nova:IsValid() then return end
if self.DoSpriteScale == false then return end
if self.SpriteScale < 4 then
self.SpriteScale = 1.1^(CurTime() - self.ScaleStartTime) - 1
self.Nova:SetKeyValue("scale", tostring(self.SpriteScale))
end
end
function SWEP:Initialize()
util.PrecacheSound("ambient/wind/wind_snippet4.wav")
if ( SERVER ) then
self:SetWeaponHoldType( self.HoldType )
end
self.SpriteScale = 0
self.Nova = ents.Create("env_sprite")
end
function SWEP:PrimaryAttack()
local MuzzlePos = self.Owner:GetRight() * 7 + self.Owner:GetShootPos() + self.Owner:GetUp() --+ self.Owner:GetForward() )
if CLIENT then return end
if self.Weapon:Clip1() == 0 then return end
self.Weapon:SetNextPrimaryFire(CurTime() + .15)
self.Weapon:SendWeaponAnim(ACT_VM_PRIMARYATTACK)
self.Owner:SetAnimation( PLAYER_ATTACK1 )
self.Owner:MuzzleFlash()
self:TakePrimaryAmmo(1)
self.Weapon:EmitSound("ambient/wind/wind_snippet4.wav")
local shot = ents.Create("red_whisp")
shot:SetPos(MuzzlePos)
shot:SetAngles(self.Owner:EyeAngles())
shot:SetOwner(self.Owner)
shot.damage = 35
shot:Spawn()
local phys = shot:GetPhysicsObject()
phys:SetMass(1)
phys:ApplyForceCenter(self.Owner:GetAimVector() * 99999)
end
function SWEP:SecondaryAttack()
self.Weapon:SetNextSecondaryFire(CurTime() + 1)
self.Weapon:SendWeaponAnim(ACT_VM_PRIMARYATTACK)
self.Owner:SetAnimation( PLAYER_ATTACK1 )
local trace = self.Owner:GetEyeTrace()
self.ScaleStartTime = CurTime()
self.DoSpriteScale = true
if SERVER then
self.Nova:SetPos( self.Owner:GetPos() )
self.Nova:SetKeyValue( "renderfx", "15" )
self.Nova:SetKeyValue( "model", "sprite/glow1.vmt")
self.Nova:SetKeyValue( "scale", "1" )
self.Nova:SetKeyValue( "spawnflags", "1")
self.Nova:SetKeyValue( "angles", "0 0 0")
self.Nova:SetKeyValue( "rendermode", "9")
self.Nova:SetKeyValue( "renderamt", "255")
self.Nova:SetKeyValue( "rendercolor", "255 0 0" )
self.Nova:Spawn()
self.Nova:Activate()
self.Nova:SetParent( self.Owner )
self.Nova:Fire("kill", "", 5)
end
end