Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Orca
- actor Firebat : MechPlayer_Base {
- Radius 58
- Height 128
- Mass 1000
- health 4000
- player.maxhealth 4000
- Player.DisplayName "Firebat"
- player.forwardmove 0.75
- player.sidemove 0.5
- player.soundclass "mech"
- Player.ViewHeight 64
- Player.AttackZOffset 0
- Player.MorphWeapon "FirebatWeapons"
- damagefactor "Falling", 4.0
- scale 0.5
- +NOSKIN
- +FLOATBOB
- +NOGRAVITY
- States {
- Spawn:
- ORCV A 0
- ORCV A 0 SetPlayerProperty (0, 1, 3)
- ORCV A 0 ACS_ExecuteAlways (SC_STEALTH, 0, STEALTH_FORCEOFF)
- ORCV A 0 ACS_Execute (315, 0)
- ORCV A 0 A_GiveInventory ("MechEjectButton", 1)
- ORCV I 0 A_GiveInventory ("IsMech", 1)
- ORCV A 35 A_PlaySound ("jumpjet/loop", 5, 1.0, 1)
- ORCV AAAA 35
- ORCV A 35
- loop
- See:
- ORCV A 0 A_PlaySound ("orca/loop", 5, 1.0, 1)
- ORCV A 0 A_JumpIf (health < 300, "SeeDamaged")
- ORCV A 2 A_SpawnItemEx("MechStepDamageOrca", 32, 0, -8, 0, 0, 0, 0, 0, 0)
- ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,-48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
- ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
- ORCV A 0 A_SpawnItemEx("OrcaSmokePuff",-38,-48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
- ORCV A 0 A_SpawnItemEx("OrcaSmokePuff",-38,48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
- ORCV A 0 A_JumpIf(WaterLevel >= 1, "Drown")
- goto See+1
- SeeDamaged:
- ORCV A 0 A_PlaySound ("orca/loop", 5, 1.0, 1)
- ORCV A 0 A_JumpIf (health >= 300, "See")
- ORCV A 2 A_SpawnItemEx("EjectedMechSmokePuff",random(-8,8),random(-8,8),random(64,96),0,0,3,0,0,0)
- ORCV A 0 A_SpawnItemEx("MechStepDamageOrca", 32, 0, -8, 0, 0, 0, 0, 0, 0)
- ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,-48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
- ORCV A 0 A_SpawnItemEx("OrcaFlame",-38,48,32,0.5*Random(-4,4),0,random(-2,-4),random(-6,6),128,0)
- ORCV AA 0 A_SpawnItemEx("OrcaSmokePuff",-38,-48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
- ORCV AA 0 A_SpawnItemEx("OrcaSmokePuff",-38,48,24,0.5*Random(-4,4),0,random(-1,-2),random(-1,1),128,0)
- ORCV A 0 A_JumpIf(WaterLevel >= 1, "Drown")
- goto SeeDamaged+1
- Drown:
- TNT1 A 0 Thing_Damage(0,100,12)
- goto Spawn
- Death:
- TNT1 A 0
- TNT1 A 0 A_JumpIfInventory("IsKamikaze", 1, "Death.IonExplosion")
- TNT1 A 0 A_JumpIfInventory("IsBombCrate", 1, "Death.BombExplosion")
- DeathGo:
- TNT1 A 0 A_StopSound (5)
- TNT1 A 0 A_StopSound (CHAN_WEAPON)
- TNT1 A 0 A_NoBlocking
- TNT1 A 5 A_PlaySoundEx ("weapons/rocklx","SoundSlot5")
- TNT1 K 0 A_SetTranslucent (0, 0.0)
- TNT1 Z 0 A_SpawnItemEx ("EjectedOrca", 0, 0, 0, 5, 0, 0, 0, SXF_NOCHECKPOSITION)
- DISR Z -1
- stop
- Death.IonExplosion:
- TNT1 A 0
- TNT1 A 0 A_JumpIfInventory ("IsRed", 1, "Death.NukeExplosion")
- TNT1 A 0 A_SpawnItemEx("BlueStrikeKamikaze", 0, 0, 32)
- goto DeathGo
- Death.NukeExplosion:
- TNT1 A 0
- TNT1 A 0 A_SpawnItemEx("NukeKamikaze", 0, 0, 32)
- goto DeathGo
- Death.BombExplosion:
- PLAY H 0
- PLAY N 0 A_SpawnItemEx("BombExplosion")
- goto DeathGo
- }
- }
- actor FirebatSwitch : PermanentPowerup {Powerup.Type "Firebat"}
- actor PowerFirebat : AOWMorph {powermorph.playerclass "Firebat"}
- actor FirebatWeapons : AOWWeapon {
- Weapon.SelectionOrder 1
- Weapon.AmmoUse 1
- Weapon.AmmoGive 1000
- Weapon.AmmoType "FFA"
- Weapon.AmmoUse2 1
- Weapon.AmmoGive2 10
- Weapon.AmmoType2 "Orca-RocketAmmo"
- obituary "%o was burnt by %k's Firebat."
- +WEAPON.CHEATNOTWEAPON
- +WEAPON.DONTBOB
- states {
- Ready:
- MHUD A 35 A_WeaponReady
- MHUD A 0 A_GiveInventory("FFA",1)
- wait
- Deselect:
- MHUD A 0 A_JumpIfHealthLower(1,1)
- goto Ready
- MHUD CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 0 A_Lower
- TNT1 A 1 A_Lower
- wait
- Select:
- MHUD C 0
- MHUD CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 0 A_Raise
- TNT1 A 1 A_Raise
- wait
- Fire:
- MHUD B 0 A_PlayWeaponSound("flamer2/fire")
- MHUD B 0 A_GunFlash
- MHUD B 3 A_FireCustomMissile ("Flameshot", 0, 1, 0, -32)
- MHUD B 0 A_FireCustomMissile ("Flameshot", 0, 1, 0, -32)
- MHUD B 0 A_FireCustomMissile ("Flameshot", 0, 1, 0, -32)
- MHUD A 2 A_Refire
- Goto Ready
- AltFire:
- MHUD B 0 A_PlayWeaponSound("orca/fire2")
- MHUD B 0 A_GunFlash
- MHUD B 0 A_JumpIfInventory ("GrenadeSwitch", 1, "AltFire2")
- MHUD B 0 A_FireCustomMissile("OrcaFireFlame",0,0,-32,-16)
- MHUD B 12 BRIGHT A_FireCustomMissile("PhosphorusGrenade",0,1,-32,-16)
- MHUD A 12 BRIGHT A_GiveInventory("GrenadeSwitch",1)
- MHUD A 2 A_Refire
- Goto Ready
- AltFire2:
- MHUD B 0 A_FireCustomMissile ("OrcaFireFlame",0,0,32,-16)
- MHUD B 12 BRIGHT A_FireCustomMissile ("PhosphorusGrenade",0,1,32,-16)
- MHUD A 12 BRIGHT A_TakeInventory ("GrenadeSwitch",1)
- MHUD A 2 A_Refire
- Goto Ready
- Flash:
- TNT1 A 1 Bright A_Light2
- TNT1 A 2 Bright A_Light1
- Goto LightDone
- Spawn:
- TNT1 A 0
- stop
- }
- }
- actor Firebat-PNadeAmmo : Ammo {
- inventory.amount 4
- inventory.maxamount 20
- ammo.backpackamount 4
- ammo.backpackmaxamount 20
- }
- actor FFA : Ammo {
- inventory.amount 50
- inventory.maxamount 800
- ammo.backpackamount 50
- ammo.backpackmaxamount 800
- }
- actor OrcaRocket2 {
- PROJECTILE
- -RANDOMIZE
- +ROCKETTRAIL
- Radius 11
- Height 8
- obituary "$OB_ORCA"
- Speed 40
- Damage (60)
- DeathSound "weapons/rocklx"
- DamageType "Explosion"
- states {
- Spawn:
- MISL A 2 bright
- MISL A -1 bright A_PlaySoundEx("ambient/rocket","Body",1,-1)
- loop
- Death:
- TNT1 A 0 A_PlaySoundEx("blanksnd","Body",0)
- TNT1 A 0 A_Explode (80, 128)
- TNT1 A 0 A_SpawnItemEx("FlameDecay", random(-16,16), random(-16,16), 4, 0, 0, 0, 0, 0, 160)
- TNT1 A 5 A_SpawnItemEx("ExplosionMain")
- stop
- }
- }
- actor OrcaFlame2 {
- PROJECTILE
- +NOINTERACTION
- +CLIENTSIDEONLY
- radius 13
- height 8
- speed 20
- damage 0
- renderstyle Add
- alpha 1.0
- scale 0.6
- states {
- Spawn:
- TNT1 A 0
- FLMX AABCDEFGHIJK 1 bright A_Fadeout(0.1)
- stop
- }
- }
- actor OrcaFireFlame2 : OrcaFlame {
- scale 0.8
- states {
- Spawn:
- TNT1 AA 0 A_SpawnItemEx("OrcaSmokePuff", 0, 0, 0, 0, 0, 1, 0, 128, 0)
- Goto Super::Spawn
- }
- }
- actor OrcaFlash2 : OrcaFlame {
- scale 0.66
- states {
- Spawn:
- TNT1 A 0
- FLMX ABCD 1 bright A_Fadeout(0.25)
- stop
- }
- }
- actor EjectedFirebatSpawner {
- +NOINTERACTION
- +SERVERSIDEONLY
- states {
- Spawn:
- TNT1 AA 0 A_SpawnItemEx ("EjectedFirebat", 0,0,0, 4)
- stop
- }
- }
- actor EjectedFirebat {
- PROJECTILE
- -NOGRAVITY
- +NOCLIP
- radius 58
- height 128
- damage (300)
- scale 0.5
- speed 10
- obituary "%o was hit by %k's Firebat."
- translation "112:127=[255,255,255]:[0,0,0]"
- gravity 0.2
- damagetype "Monster"
- States {
- Spawn:
- ORCV A 0
- ORCV A 0 A_NoBlocking
- ORCV A 0 A_PlaySound ("weapons/rocklx", 5)
- ORCV A 10 A_SpawnItemEx ("ExplosionMain")
- ORCV A 0 A_PlaySound ("weapons/rocklx", 6)
- ORCV A 10 A_SpawnItemEx ("ExplosionMain")
- ORCV A 0 A_ChangeFlag("NOCLIP",0)
- goto Spawn+3
- Death:
- TNT1 A 0 A_StopSound (5)
- TNT1 A 0 A_StopSound (6)
- TNT1 A 0 A_SpawnItemEx ("MechExplosionSmall", 0,0,0,0,0,0,0, SXF_NOCHECKPOSITION)
- stop
- }
- }
- actor OrcaAmmoPackage : CustomInventory {
- +AUTOACTIVATE
- inventory.maxamount 0
- states {
- Pickup:
- TNT1 A 0 A_GiveInventory ("Orca-MinigunAmmo", 600)
- TNT1 A 0 A_GiveInventory ("Orca-RocketAmmo", 60)
- stop
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment