diff options
| author | Alexander Pickering <Alexander.Pickering@anondomain.site90.net> | 2016-04-16 02:02:00 -0400 |
|---|---|---|
| committer | Alexander Pickering <Alexander.Pickering@anondomain.site90.net> | 2016-04-16 02:02:00 -0400 |
| commit | 7e5db609550cca0d8b8a76c4bf78ba4658962167 (patch) | |
| tree | 4df54e0c4eccff0b022e0732c258b7b193fd6cfe /entities/effects/m9k_effect_mad_penetration_trace/init.lua | |
| download | gmstranded-7e5db609550cca0d8b8a76c4bf78ba4658962167.tar.gz gmstranded-7e5db609550cca0d8b8a76c4bf78ba4658962167.tar.bz2 gmstranded-7e5db609550cca0d8b8a76c4bf78ba4658962167.zip | |
Initial commit
Diffstat (limited to 'entities/effects/m9k_effect_mad_penetration_trace/init.lua')
| -rw-r--r-- | entities/effects/m9k_effect_mad_penetration_trace/init.lua | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/entities/effects/m9k_effect_mad_penetration_trace/init.lua b/entities/effects/m9k_effect_mad_penetration_trace/init.lua new file mode 100644 index 0000000..24a23e8 --- /dev/null +++ b/entities/effects/m9k_effect_mad_penetration_trace/init.lua @@ -0,0 +1,45 @@ +EFFECT.Mat = Material( "effects/spark" ) + +/*--------------------------------------------------------- + EFFECT:Init(data) +---------------------------------------------------------*/ +function EFFECT:Init(data) + + self.StartPos = data:GetStart() + self.EndPos = data:GetOrigin() + self.Dir = self.EndPos - self.StartPos + self.Entity:SetRenderBoundsWS(self.StartPos, self.EndPos) + + self.TracerTime = 0.4 + + // Die when it reaches its target + self.DieTime = CurTime() + self.TracerTime + +end + +/*--------------------------------------------------------- + THINK +---------------------------------------------------------*/ +function EFFECT:Think() + + if (CurTime() > self.DieTime) then return false end + + return true +end + +/*--------------------------------------------------------- + Draw the effect +---------------------------------------------------------*/ +function EFFECT:Render() + + local fDelta = (self.DieTime - CurTime()) / self.TracerTime + fDelta = math.Clamp(fDelta, 0, 1) + + render.SetMaterial(self.Mat) + + local sinWave = math.sin(fDelta * math.pi) + + local color = Color(255, 255, 255, 255 * fDelta) + + render.DrawBeam(self.StartPos, self.EndPos, 8 * fDelta, 1, 0, color) +end
\ No newline at end of file |
