Advertisement
Chronos_Ouroboros

FuckyTracer

Dec 19th, 2015
351
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.94 KB | None | 0 0
  1. /* Credits:
  2. ** Decorate: WildWeasel, Chronos "phantombeta" Ouroboros
  3. ** Sprites: ???
  4. ** Weapons: A_FireCustomMissile (tracerName, fRandom [weaponSpread] (-, horizontalSpread), 1, horizontalOffset, verticalOffset, 0, fRandom [weaponSpread] (-, verticalSpread))
  5. ** Monsters: A_CustomMissile (tracerName, verticalOffset, horizontalOffset, fRandom [monsterSpread] (-, horizontalSpread), 0, fRandom [monsterSpread] (-, verticalSpread))
  6. */
  7.  
  8. /*** Base ***/
  9. actor VD_TracerEffectsBase {
  10. height 2
  11. radius 2
  12. alpha 1.0
  13. scale 0.025
  14. renderStyle add
  15. +noBlockmap +noGravity +noTeleport +cannotPush
  16. +noInteraction +clientsideOnly +forceXYBillboard
  17. }
  18.  
  19. actor VD_BaseTracer : fastProjectile {
  20. alpha 1.0
  21. renderStyle add
  22. radius 2
  23. height 2
  24. speed 25
  25. args 100, 1, 8, 1, 3
  26. // args [speed, numBullets, damage, damageRandomMin, damageRandomMax]
  27. projectile
  28. +bloodSplatter +noExtremeDeath +noDamageThrust +puffGetsOwner
  29. -noBlockmap
  30. damage (random (1, 3) * 6)
  31. decal Bullet
  32. states {
  33. Spawn:
  34. TNT1 AA 0 A_ScaleVelocity (1.0 / (25 * 1.0))
  35. TNT1 A 0 A_ScaleVelocity (args [0] * 1.0)
  36. TNT1 A 0 A_Jump (256, "Spawn2")
  37. wait
  38. Spawn2:
  39. TNT1 A 0 A_SetPitch (CallACS ("VD_GetProjectilePitch") / 65535.0)
  40. TNT1 A 0 A_CustomBulletAttack (0.0, 0.0, args [1], args [2] * random (args [3], args [4]), "VD_BulletPuff", 32767.0, CBAF_AimFacing | CBAF_NoRandom | CBAF_ExplicitAngle)
  41. TNT1 A 0 A_SetPitch (0)
  42. TNT1 A 0 A_Jump (256, "Idle")
  43. wait
  44. Idle:
  45. SPRK A 1 bright
  46. wait
  47. Death:
  48. TNT1 A 1
  49. stop
  50. }
  51. }
  52. actor VD_BulletPuff : VD_TracerEffectsBase replaces BulletPuff {
  53. +puffGetsOwner
  54. -clientsideOnly -noInteraction
  55. states {
  56. Spawn:
  57. TNT1 AAAAA 0 noDelay A_SpawnItemEx ("VD_BulletPuffSparks", 0.0, 0.0, 0.0, fRandom [sfx] (0.0, 2.0), fRandom [sfx] (-2.0, 2.0), fRandom [sfx] (0.0, 3.0), 0, SXF_Clientside)
  58. TNT1 A 1 A_SpawnItemEx ("VD_BulletPuffSparks", 0.0, 0.0, 0.0, fRandom [sfx] (0.0, 2.0), fRandom [sfx] (-2.0, 2.0), fRandom [sfx] (0.0, 3.0), 0, SXF_Clientside)
  59. stop
  60. }
  61. }
  62.  
  63. actor VD_BaseTracerPlayer : VD_BaseTracer {
  64. states {
  65. Spawn2:
  66. TNT1 A 0 A_SetPitch (CallACS ("VD_GetProjectilePitch") / 65535.0)
  67. TNT1 A 0 A_CustomBulletAttack (0.0, 0.0, args [1], args [2] * random (args [3], args [4]), "VD_BulletPuffPlayer", 32767.0, CBAF_AimFacing | CBAF_NoRandom | CBAF_ExplicitAngle)
  68. TNT1 A 0 A_SetPitch (0)
  69. TNT1 A 0 A_Jump (256, "Idle")
  70. wait
  71. }
  72. }
  73. actor VD_BulletPuffPlayer : VD_BulletPuff { +ThruGhost }
  74.  
  75. actor VD_BulletPuffSparks : VD_TracerEffectsBase {
  76. mass 1
  77. damage 0
  78. +missile +dropOff +ghost +dontSplash
  79. -doomBounce -noGravity -noInteraction
  80. speed 10
  81. gravity 1.0
  82. states {
  83. Spawn:
  84. SPRK A 1 bright
  85. SPRK A 1 bright A_FadeOut (0.05)
  86. wait
  87. }
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement