Advertisement
Guest User

Untitled

a guest
Dec 17th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. function SWEP:GetFireSound()
  2.  
  3. local SND_NAME = self:GetSilenced() and self.Primary.Fire_S or self.Primary.Fire
  4.  
  5. return SND_NAME
  6. end
  7.  
  8. local distance = 1024
  9.  
  10. function SWEP:HandleReverb(player)
  11.  
  12. if self:GetSilenced() == true then
  13. return
  14. end
  15.  
  16. local vecOrigin = player:GetShootPos()
  17. local vecAiming = player:GetAimVector()
  18. local vecAngles = vecAiming:Angle()
  19.  
  20. -- Detect by traces
  21.  
  22. local traces = {}
  23. local length = 0
  24. local directions = {
  25. vecAngles:Right(), -- right
  26. vecAngles:Right() *-1, -- left
  27. vecAngles:Up(), -- up
  28. vecAngles:Up() *-1, -- down
  29. vecAngles:Forward(), -- forward
  30. vecAngles:Forward() *-1, -- backward
  31. }
  32.  
  33. for _,direction in pairs(directions) do
  34.  
  35. local trace = {}
  36. trace.start = vecOrigin
  37. trace.endpos = vecOrigin + (direction * distance)
  38. trace.filter = player
  39.  
  40. local traceRes = util.TraceLine(trace)
  41.  
  42. table.insert(traces,traceRes)
  43. end
  44.  
  45. for _,traceRes in pairs(traces) do
  46. length = length + (vecOrigin - traceRes.HitPos):Length()
  47. end
  48.  
  49. local layer,reflection
  50.  
  51. if length > 2500 then
  52. layer = "BTB_REVERB.LayerUrban"
  53. reflection = "BTB_REVERB.ReflectionUrban"
  54. else
  55. layer = "BTB_REVERB.LayerIndoor"
  56. reflection = "BTB_REVERB.ReflectionIndoor"
  57. end
  58.  
  59. if self.Type == "Sniper Rifle" then
  60. layer = "BTB_REVERB.ReflectionSniper"
  61. end
  62.  
  63. if self.Type == "Pistol" or self.Type == "Revolver" then
  64. layer = "BTB_REVERB.ReflectionUrbanPistol"
  65. end
  66.  
  67. self:EmitSoundPredicted(layer)
  68. self:EmitSoundPredicted(reflection)
  69.  
  70. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement