Guest User

Firebat code

a guest
Apr 3rd, 2013
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.14 KB | None | 0 0
  1. // Orca
  2. actor Firebat : MechPlayer_Base {
  3. Radius 58
  4. Height 128
  5. Mass 1000
  6. health 4000
  7. player.maxhealth 4000
  8. Player.DisplayName "Firebat"
  9. player.forwardmove 0.75
  10. player.sidemove 0.5
  11. player.soundclass "mech"
  12. Player.ViewHeight 64
  13. Player.AttackZOffset 0
  14. Player.MorphWeapon "FirebatWeapons"
  15. damagefactor "Falling", 4.0
  16. scale 0.5
  17. +NOSKIN
  18. +FLOATBOB
  19. +NOGRAVITY
  20. States {
  21. Spawn:
  22. ORCV A 0
  23. ORCV A 0 SetPlayerProperty (0, 1, 3)
  24. ORCV A 0 ACS_ExecuteAlways (SC_STEALTH, 0, STEALTH_FORCEOFF)
  25. ORCV A 0 ACS_Execute (315, 0)
  26. ORCV A 0 A_GiveInventory ("MechEjectButton", 1)
  27. ORCV I 0 A_GiveInventory ("IsMech", 1)
  28. ORCV A 35 A_PlaySound ("jumpjet/loop", 5, 1.0, 1)
  29. ORCV AAAA 35
  30. ORCV A 35
  31. loop
  32. See:
  33. ORCV A 0 A_PlaySound ("orca/loop", 5, 1.0, 1)
  34. ORCV A 0 A_JumpIf (health < 300, "SeeDamaged")
  35. ORCV A 2 A_SpawnItemEx("MechStepDamageOrca", 32, 0, -8, 0, 0, 0, 0, 0, 0)
  36. ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,-48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
  37. ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
  38. ORCV A 0 A_SpawnItemEx("OrcaSmokePuff",-38,-48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
  39. ORCV A 0 A_SpawnItemEx("OrcaSmokePuff",-38,48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
  40. ORCV A 0 A_JumpIf(WaterLevel >= 1, "Drown")
  41. goto See+1
  42. SeeDamaged:
  43. ORCV A 0 A_PlaySound ("orca/loop", 5, 1.0, 1)
  44. ORCV A 0 A_JumpIf (health >= 300, "See")
  45. ORCV A 2 A_SpawnItemEx("EjectedMechSmokePuff",random(-8,8),random(-8,8),random(64,96),0,0,3,0,0,0)
  46. ORCV A 0 A_SpawnItemEx("MechStepDamageOrca", 32, 0, -8, 0, 0, 0, 0, 0, 0)
  47. ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,-48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
  48. ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
  49. ORCV AA 0 A_SpawnItemEx("OrcaSmokePuff",-38,-48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
  50. ORCV AA 0 A_SpawnItemEx("OrcaSmokePuff",-38,48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
  51. ORCV A 0 A_JumpIf(WaterLevel >= 1, "Drown")
  52. goto SeeDamaged+1
  53. Drown:
  54. TNT1 A 0 Thing_Damage(0,100,12)
  55. goto Spawn
  56. Death:
  57. TNT1 A 0
  58. TNT1 A 0 A_JumpIfInventory("IsKamikaze", 1, "Death.IonExplosion")
  59. TNT1 A 0 A_JumpIfInventory("IsBombCrate", 1, "Death.BombExplosion")
  60. DeathGo:
  61. TNT1 A 0 A_StopSound (5)
  62. TNT1 A 0 A_StopSound (CHAN_WEAPON)
  63. TNT1 A 0 A_NoBlocking
  64. TNT1 A 5 A_PlaySoundEx ("weapons/rocklx","SoundSlot5")
  65. TNT1 K 0 A_SetTranslucent (0, 0.0)
  66. TNT1 Z 0 A_SpawnItemEx ("EjectedOrca", 0, 0, 0, 5, 0, 0, 0, SXF_NOCHECKPOSITION)
  67. DISR Z -1
  68. stop
  69. Death.IonExplosion:
  70. TNT1 A 0
  71. TNT1 A 0 A_JumpIfInventory ("IsRed", 1, "Death.NukeExplosion")
  72. TNT1 A 0 A_SpawnItemEx("BlueStrikeKamikaze", 0, 0, 32)
  73. goto DeathGo
  74. Death.NukeExplosion:
  75. TNT1 A 0
  76. TNT1 A 0 A_SpawnItemEx("NukeKamikaze", 0, 0, 32)
  77. goto DeathGo
  78. Death.BombExplosion:
  79. PLAY H 0
  80. PLAY N 0 A_SpawnItemEx("BombExplosion")
  81. goto DeathGo
  82. }
  83. }
  84.  
  85. actor FirebatSwitch : PermanentPowerup {Powerup.Type "Firebat"}
  86. actor PowerFirebat : AOWMorph {powermorph.playerclass "Firebat"}
  87.  
  88. actor FirebatWeapons : AOWWeapon {
  89. Weapon.SelectionOrder 1
  90. Weapon.AmmoUse 1
  91. Weapon.AmmoGive 1000
  92. Weapon.AmmoType "FFA"
  93. Weapon.AmmoUse2 1
  94. Weapon.AmmoGive2 10
  95. Weapon.AmmoType2 "Orca-RocketAmmo"
  96. obituary "%o was burnt by %k's Firebat."
  97. +WEAPON.CHEATNOTWEAPON
  98. +WEAPON.DONTBOB
  99. states {
  100. Ready:
  101. MHUD A 35 A_WeaponReady
  102. MHUD A 0 A_GiveInventory("FFA",1)
  103. wait
  104. Deselect:
  105. MHUD A 0 A_JumpIfHealthLower(1,1)
  106. goto Ready
  107. MHUD CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 0 A_Lower
  108. TNT1 A 1 A_Lower
  109. wait
  110. Select:
  111. MHUD C 0
  112. MHUD CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 0 A_Raise
  113. TNT1 A 1 A_Raise
  114. wait
  115. Fire:
  116. MHUD B 0 A_PlayWeaponSound("flamer2/fire")
  117. MHUD B 0 A_GunFlash
  118. MHUD B 3 A_FireCustomMissile ("Flameshot", 0, 1, 0, -32)
  119. MHUD B 0 A_FireCustomMissile ("Flameshot", 0, 1, 0, -32)
  120. MHUD B 0 A_FireCustomMissile ("Flameshot", 0, 1, 0, -32)
  121. MHUD A 2 A_Refire
  122. Goto Ready
  123. AltFire:
  124. MHUD B 0 A_PlayWeaponSound("orca/fire2")
  125. MHUD B 0 A_GunFlash
  126. MHUD B 0 A_JumpIfInventory ("GrenadeSwitch", 1, "AltFire2")
  127. MHUD B 0 A_FireCustomMissile("OrcaFireFlame",0,0,-32,-16)
  128. MHUD B 12 BRIGHT A_FireCustomMissile("PhosphorusGrenade",0,1,-32,-16)
  129. MHUD A 12 BRIGHT A_GiveInventory("GrenadeSwitch",1)
  130. MHUD A 2 A_Refire
  131. Goto Ready
  132. AltFire2:
  133. MHUD B 0 A_FireCustomMissile ("OrcaFireFlame",0,0,32,-16)
  134. MHUD B 12 BRIGHT A_FireCustomMissile ("PhosphorusGrenade",0,1,32,-16)
  135. MHUD A 12 BRIGHT A_TakeInventory ("GrenadeSwitch",1)
  136. MHUD A 2 A_Refire
  137. Goto Ready
  138. Flash:
  139. TNT1 A 1 Bright A_Light2
  140. TNT1 A 2 Bright A_Light1
  141. Goto LightDone
  142. Spawn:
  143. TNT1 A 0
  144. stop
  145. }
  146. }
  147.  
  148. actor Firebat-PNadeAmmo : Ammo {
  149. inventory.amount 4
  150. inventory.maxamount 20
  151. ammo.backpackamount 4
  152. ammo.backpackmaxamount 20
  153. }
  154.  
  155. actor FFA : Ammo {
  156. inventory.amount 50
  157. inventory.maxamount 800
  158. ammo.backpackamount 50
  159. ammo.backpackmaxamount 800
  160. }
  161.  
  162. actor OrcaRocket2 {
  163. PROJECTILE
  164. -RANDOMIZE
  165. +ROCKETTRAIL
  166. Radius 11
  167. Height 8
  168. obituary "$OB_ORCA"
  169. Speed 40
  170. Damage (60)
  171. DeathSound "weapons/rocklx"
  172. DamageType "Explosion"
  173. states {
  174. Spawn:
  175. MISL A 2 bright
  176. MISL A -1 bright A_PlaySoundEx("ambient/rocket","Body",1,-1)
  177. loop
  178. Death:
  179. TNT1 A 0 A_PlaySoundEx("blanksnd","Body",0)
  180. TNT1 A 0 A_Explode (80, 128)
  181. TNT1 A 0 A_SpawnItemEx("FlameDecay", random(-16,16), random(-16,16), 4, 0, 0, 0, 0, 0, 160)
  182. TNT1 A 5 A_SpawnItemEx("ExplosionMain")
  183. stop
  184. }
  185. }
  186.  
  187. actor OrcaFlame2 {
  188. PROJECTILE
  189. +NOINTERACTION
  190. +CLIENTSIDEONLY
  191. radius 13
  192. height 8
  193. speed 20
  194. damage 0
  195. renderstyle Add
  196. alpha 1.0
  197. scale 0.6
  198. states {
  199. Spawn:
  200. TNT1 A 0
  201. FLMX AABCDEFGHIJK 1 bright A_Fadeout(0.1)
  202. stop
  203. }
  204. }
  205.  
  206. actor OrcaFireFlame2 : OrcaFlame {
  207. scale 0.8
  208. states {
  209. Spawn:
  210. TNT1 AA 0 A_SpawnItemEx("OrcaSmokePuff", 0, 0, 0, 0, 0, 1, 0, 128, 0)
  211. Goto Super::Spawn
  212. }
  213. }
  214.  
  215. actor OrcaFlash2 : OrcaFlame {
  216. scale 0.66
  217. states {
  218. Spawn:
  219. TNT1 A 0
  220. FLMX ABCD 1 bright A_Fadeout(0.25)
  221. stop
  222. }
  223. }
  224.  
  225. actor EjectedFirebatSpawner {
  226. +NOINTERACTION
  227. +SERVERSIDEONLY
  228. states {
  229. Spawn:
  230. TNT1 AA 0 A_SpawnItemEx ("EjectedFirebat", 0,0,0, 4)
  231. stop
  232. }
  233. }
  234.  
  235. actor EjectedFirebat {
  236. PROJECTILE
  237. -NOGRAVITY
  238. +NOCLIP
  239. radius 58
  240. height 128
  241. damage (300)
  242. scale 0.5
  243. speed 10
  244. obituary "%o was hit by %k's Firebat."
  245. translation "112:127=[255,255,255]:[0,0,0]"
  246. gravity 0.2
  247. damagetype "Monster"
  248. States {
  249. Spawn:
  250. ORCV A 0
  251. ORCV A 0 A_NoBlocking
  252. ORCV A 0 A_PlaySound ("weapons/rocklx", 5)
  253. ORCV A 10 A_SpawnItemEx ("ExplosionMain")
  254. ORCV A 0 A_PlaySound ("weapons/rocklx", 6)
  255. ORCV A 10 A_SpawnItemEx ("ExplosionMain")
  256. ORCV A 0 A_ChangeFlag("NOCLIP",0)
  257. goto Spawn+3
  258. Death:
  259. TNT1 A 0 A_StopSound (5)
  260. TNT1 A 0 A_StopSound (6)
  261. TNT1 A 0 A_SpawnItemEx ("MechExplosionSmall", 0,0,0,0,0,0,0, SXF_NOCHECKPOSITION)
  262. stop
  263. }
  264. }
  265.  
  266. actor OrcaAmmoPackage : CustomInventory {
  267. +AUTOACTIVATE
  268. inventory.maxamount 0
  269. states {
  270. Pickup:
  271. TNT1 A 0 A_GiveInventory ("Orca-MinigunAmmo", 600)
  272. TNT1 A 0 A_GiveInventory ("Orca-RocketAmmo", 60)
  273. stop
  274. }
  275. }
Advertisement
Add Comment
Please, Sign In to add comment