Advertisement
Guest User

Untitled

a guest
Jun 22nd, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.54 KB | None | 0 0
  1.  
  2.  
  3. function EFFECT:Init(data)
  4.  
  5. self.WeaponEnt = data:GetEntity()
  6. self.Attachment = data:GetAttachment()
  7.  
  8. self.Position = self:GetTracerShootPos(data:GetOrigin(), self.WeaponEnt, self.Attachment)
  9. self.Forward = data:GetNormal()
  10. self.Angle = self.Forward:Angle()
  11. self.Right = self.Angle:Right()
  12.  
  13. local emitter = ParticleEmitter(self.Position)
  14.  
  15. local particle = emitter:Add("sprites/heatwave", self.Position)
  16. particle:SetVelocity(80*self.Forward + 20*VectorRand())
  17. particle:SetDieTime(math.Rand(0.15,0.2))
  18. particle:SetStartSize(16)
  19. particle:SetEndSize(16)
  20. particle:SetRoll(math.Rand(180,480))
  21. particle:SetRollDelta(math.Rand(-1,1))
  22. particle:SetAirResistance(160)
  23.  
  24. local particle = emitter:Add("particle/smokesprites_000"..math.random(1,9), self.Position)
  25. particle:SetVelocity(math.Rand(288,344)*self.Forward + math.Rand(4,16)*VectorRand())
  26. particle:SetDieTime(math.Rand(0.4,0.5))
  27. particle:SetStartAlpha(math.Rand(142,158))
  28. particle:SetEndAlpha(0)
  29. particle:SetStartSize(math.random(6,10))
  30. particle:SetEndSize(math.Rand(18,24))
  31. particle:SetRoll(math.Rand(0,360))
  32. particle:SetRollDelta(math.Rand(-0.5,0.5))
  33. particle:SetColor(0,0,0)
  34. particle:SetAirResistance(550)
  35. particle:SetLighting( true )
  36.  
  37.  
  38. for i=-0,math.Rand(4,6) do
  39. local particle = emitter:Add("effects/spark", self.Position)
  40. particle:SetVelocity(980*self.Forward + 200*VectorRand())
  41. particle:SetDieTime(math.Rand(0.075,0.1))
  42. particle:SetStartAlpha(255)
  43. particle:SetEndAlpha(0)
  44. particle:SetStartSize(3)
  45. particle:SetStartLength(6)
  46. particle:SetEndLength(12)
  47. particle:SetRoll(math.Rand(0,360))
  48. particle:SetRollDelta(math.Rand(-1,1))
  49. particle:SetColor(200,200,200)
  50. particle:SetAirResistance(1500)
  51. end
  52.  
  53. for i=-0,math.Rand(4,6) do
  54. local particle = emitter:Add("effects/spark", self.Position)
  55. particle:SetVelocity(980*self.Forward + 200*VectorRand())
  56. particle:SetDieTime(math.Rand(0.075,0.1))
  57. particle:SetStartAlpha(255)
  58. particle:SetEndAlpha(0)
  59. particle:SetStartSize(1.5)
  60. particle:SetStartLength(6)
  61. particle:SetEndLength(12)
  62. particle:SetRoll(math.Rand(0,360))
  63. particle:SetRollDelta(math.Rand(-1,1))
  64. particle:SetColor(200,200,200)
  65. particle:SetAirResistance(1500)
  66. end
  67.  
  68. for i=0,6 do
  69. local particle = emitter:Add("effects/fire_cloud"..math.random(1,3), self.Position+self.Forward*math.Rand(1,5))
  70. particle:SetDieTime(0.075)
  71. particle:SetStartAlpha(255)
  72. particle:SetEndAlpha(255)
  73. particle:SetStartSize(5)
  74. particle:SetEndSize(4)
  75. particle:SetRoll(math.Rand(0,360))
  76. particle:SetRollDelta(math.Rand(-10,10))
  77. particle:SetColor(255,255,255)
  78. end
  79.  
  80.  
  81. local particle = emitter:Add("particle/particle_smokegrenade", self.Position)
  82.  
  83. particle:SetVelocity(100 * self.Forward + 8 * VectorRand()) -- + AddVel)
  84. particle:SetAirResistance(400)
  85. particle:SetGravity(Vector(0, 0, math.Rand(25, 100)))
  86.  
  87. particle:SetDieTime(math.Rand(3.0, 4.0))
  88.  
  89. particle:SetStartAlpha(math.Rand(225, 255))
  90. particle:SetEndAlpha(0)
  91.  
  92. particle:SetStartSize(math.Rand(2, 3))
  93. particle:SetEndSize(math.Rand(6, 8))
  94.  
  95. particle:SetRoll(math.Rand(-25, 25))
  96. particle:SetRollDelta(math.Rand(-0.05, 0.05))
  97.  
  98. particle:SetColor(0, 0, 0)
  99.  
  100. local d = DynamicLight(0)
  101. if (d) then
  102. d.Pos = self.Position
  103. d.r = 160
  104. d.g = 160
  105. d.b = 50
  106. d.Brightness = 0.2
  107. d.size = 200
  108. d.DieTime = CurTime() + 0.05
  109. end
  110. emitter:Finish()
  111.  
  112. end
  113.  
  114.  
  115. function EFFECT:Think()
  116.  
  117. return false
  118.  
  119. end
  120.  
  121.  
  122. function EFFECT:Render()
  123.  
  124.  
  125. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement