Advertisement
Guest User

Hexercise's Sapphire Wand

a guest
Jan 16th, 2014
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.39 KB | None | 0 0
  1. Actor "SapphireWand" : MWeapWand replaces MWeapWand
  2. {
  3. Tag "Sapphire Wand"
  4. Weapon.YAdjust 0
  5. +UNDROPPABLE
  6. +NOAUTOFIRE
  7. +NOALERT
  8. Weapon.SelectionOrder 6
  9. States
  10. {
  11. select:
  12. tnt1 aa 0 a_raise
  13. mwnd a 1 a_raise
  14. loop
  15. deselect:
  16. "----" a 1 a_lower
  17. "----" aa 0 a_lower
  18. loop
  19. fire:
  20. mwnd a 0 offset(0,35) a_jumpifinventory("wandcounter",1,"fire2")
  21. mwnd a 0 offset(0,35) a_giveinventory("wandcounter",1)
  22. mwnd b 1 bright offset(0,33) a_firecustommissile("wandmissile",0,0,0,5)
  23. mwnd b 1 bright offset(0,42) a_weaponready(wrf_nobob|wrf_noswitch)
  24. goto fireend
  25. fire2:
  26. mwnd a 0 offset(0,35) a_jump(128,"fire3")
  27. mwnd b 1 bright offset(-6,33) a_firecustommissile("wandmissile2",frandom(-2,2),0,0,5,0,frandom(-2,2))
  28. mwnd b 1 bright offset(-3,42) a_weaponready(wrf_nobob|wrf_noswitch)
  29. goto fireend
  30. fire3:
  31. mwnd b 1 bright offset(6,33) a_firecustommissile("wandmissile2",frandom(-2,2),0,0,5,0,frandom(-2,2))
  32. mwnd b 1 bright offset(3,42) a_weaponready(wrf_nobob|wrf_noswitch)
  33. fireend:
  34. mwnd a 1 offset(0,49) a_weaponready(wrf_nobob|wrf_noswitch)
  35. mwnd a 1 offset(0,50) a_weaponready(wrf_nobob|wrf_noswitch)
  36. mwnd a 1 offset(0,49) a_weaponready(wrf_nobob|wrf_noswitch)
  37. mwnd a 1 offset(0,48) a_weaponready(wrf_nobob|wrf_noswitch)
  38. mwnd a 1 offset(0,47) a_weaponready(wrf_nobob|wrf_noswitch)
  39. mwnd a 1 offset(0,46) a_weaponready(wrf_nobob|wrf_noswitch)
  40. mwnd a 1 offset(0,45) a_weaponready(wrf_nobob|wrf_noswitch)
  41. mwnd a 1 offset(0,43) a_weaponready(wrf_nobob|wrf_noswitch)
  42. mwnd a 1 offset(0,41) a_weaponready(wrf_nobob|wrf_noswitch)
  43. mwnd a 1 offset(0,40) a_weaponready(wrf_nobob|wrf_noswitch)
  44. mwnd a 1 offset(0,37) a_weaponready(wrf_nobob|wrf_noswitch)
  45. mwnd a 1 offset(0,35) a_weaponready(wrf_nobob|wrf_noswitch)
  46. mwnd a 0 offset(0,35) a_takeinventory("wandcounter",10)
  47. mwnd a 0 offset(0,35) a_refire
  48. goto ready
  49. altfire:
  50. con2 c 0 a_takeinventory("wandcounter",1)
  51. charge:
  52. con2 a 1 offset(-51,31)
  53. con2 a 1 offset(-50,29)
  54. con2 a 1 offset(-51,30)
  55. con2 b 1 offset(-49,31)
  56. con2 c 0 a_jumpifinventory("wandcounter",5,"charged")
  57. con2 a 0 a_giveinventory("wandcounter",1)
  58. con2 a 0 a_refire("charge")
  59. goto blast
  60. charged:
  61. con2 a 0 a_jump(128,"charged2")
  62. con2 b 1 offset(-52,31)
  63. con2 b 1 offset(-49,29)
  64. con2 a 0 a_refire("charged")
  65. goto blast
  66. charged2:
  67. con2 b 1 offset(-51,30)
  68. con2 b 1 offset(-49,31)
  69. con2 a 0 a_refire("charged")
  70. blast:
  71. mln2 a 0 a_playsoundex("centaurleaderattack","weapon")
  72. mln2 a 0 a_jumpifcloser(96,"realblast")
  73. blast1:
  74. mln2 a 0 setplayerproperty(0,1,0)
  75. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck1",0,JLOSF_NOAUTOAIM,96)
  76. con2 e 1 offset(-12,21) //a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  77. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck2",0,JLOSF_NOAUTOAIM,96)
  78. con2 e 1 offset(-9,19) //a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  79. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck3",0,JLOSF_NOAUTOAIM,96)
  80. con2 c 1 offset(-11,20) //a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  81. mln2 a 0 setplayerproperty(0,0,0)
  82. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck4",0,JLOSF_NOAUTOAIM,96)
  83. con2 c 1 offset(-9,21) //a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  84. con2 c 0 a_takeinventory("wandcounter",1)
  85. con2 c 0 a_jumpifinventory("wandcounter",1,"blast1")
  86. goto blastend
  87. realblast:
  88. mln2 a 0 setplayerproperty(0,1,0)
  89. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck1",0,JLOSF_NOAUTOAIM,96)
  90. con2 e 1 offset(-12,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  91. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck2",0,JLOSF_NOAUTOAIM,96)
  92. con2 e 1 offset(-9,19) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  93. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck3",0,JLOSF_NOAUTOAIM,96)
  94. con2 c 1 offset(-11,20) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  95. mln2 a 0 setplayerproperty(0,0,0)
  96. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck4",0,JLOSF_NOAUTOAIM,96)
  97. con2 c 1 offset(-9,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  98. con2 c 0 a_takeinventory("wandcounter",1)
  99. con2 c 0 a_jumpifinventory("wandcounter",1,"blast1")
  100. goto blastend
  101. ProjCheck1:
  102. mln2 a 0 A_CheckFlag("MISSILE","ProjAbsorb",AAPTR_PLAYER_GETTARGET)
  103. con2 e 1 offset(-12,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  104. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck2",0,JLOSF_NOAUTOAIM,96)
  105. con2 e 1 offset(-9,19) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  106. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck3",0,JLOSF_NOAUTOAIM,96)
  107. con2 c 1 offset(-11,20) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  108. mln2 a 0 setplayerproperty(0,0,0)
  109. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck4",0,JLOSF_NOAUTOAIM,96)
  110. con2 c 1 offset(-9,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  111. con2 c 0 a_takeinventory("wandcounter",1)
  112. con2 c 0 a_jumpifinventory("wandcounter",1,"blast1")
  113. goto blastend
  114. ProjCheck2:
  115. mln2 a 0 A_CheckFlag("MISSILE","ProjAbsorb",AAPTR_PLAYER_GETTARGET)
  116. con2 e 1 offset(-9,19) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  117. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck3",0,JLOSF_NOAUTOAIM,96)
  118. con2 c 1 offset(-11,20) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  119. mln2 a 0 setplayerproperty(0,0,0)
  120. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck4",0,JLOSF_NOAUTOAIM,96)
  121. con2 c 1 offset(-9,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  122. con2 c 0 a_takeinventory("wandcounter",1)
  123. con2 c 0 a_jumpifinventory("wandcounter",1,"blast1")
  124. goto blastend
  125. ProjCheck3:
  126. mln2 a 0 A_CheckFlag("MISSILE","ProjAbsorb",AAPTR_PLAYER_GETTARGET)
  127. con2 c 1 offset(-11,20) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,64)
  128. mln2 a 0 setplayerproperty(0,0,0)
  129. mln2 a 0 A_JumpIfTargetInLOS("ProjCheck4",0,JLOSF_NOAUTOAIM,96)
  130. con2 c 1 offset(-9,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  131. con2 c 0 a_takeinventory("wandcounter",1)
  132. con2 c 0 a_jumpifinventory("wandcounter",1,"blast1")
  133. goto blastend
  134. ProjCheck4:
  135. mln2 a 0 A_CheckFlag("MISSILE","ProjAbsorb",AAPTR_PLAYER_GETTARGET)
  136. con2 c 1 offset(-9,21) a_firebullets(5,5,5,(ACS_ExecuteWithResult(532,0,0,0)),"magicpuff",fbf_norandom,96)
  137. con2 c 0 a_takeinventory("wandcounter",1)
  138. con2 c 0 a_jumpifinventory("wandcounter",1,"blast1")
  139. goto blastend
  140. ProjAbsorb:
  141. cshl a 0 ACS_ExecuteAlways(533,0,AAPTR_PLAYER_GETTARGET,0,0) // Send targeted projectile to script for absorption
  142. mln2 a 0 A_PlaySoundEx("WraithAttack","Body",0,0)
  143. blastend:
  144. mln2 a 0 setplayerproperty(0,0,0)
  145. cone f 1 offset(-10,45) a_weaponready(wrf_nobob|wrf_nosecondary|wrf_noswitch)
  146. cone f 1 offset(1,50)
  147. cone f 1 offset(15,60)
  148. con2 a 1 offset(10,33)
  149. con2 a 1 offset(20,40)
  150. con2 a 1 offset(30,50) a_refire
  151. mwnd a 1 offset(-100,80)
  152. mwnd a 1 offset(-80,60)
  153. mwnd a 1 offset(-40,50)
  154. mwnd a 1 offset(1,33)
  155. goto ready
  156. }
  157. }
  158.  
  159. actor wandcounter : inventory
  160. { inventory.maxamount 5 }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement