actor Commandoman_W : BaseMM8BDMWep_CBM
{
tag "$TAGC_10C"
Dropitem "CommandoBombWep"
weapon.ammouse 4
weapon.ammogive 28
obituary "$OB_COMMANDOCLOSE"
Inventory.Pickupmessage "Oil Ocean Zone"
weapon.ammotype "FullMetalJacketAmmo"
inventory.icon "CMNDO_I1"
States
{
Spawn:
C_10 C 1
loop

Deselect:
CMDH A 0
goto DeselectSwap
Select:
CMDH A 0
goto SelectSwap

Ready:
CMDH A 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_COMMANDOMAN)
CMDH A 0 A_GunFlash("Flash",1)
Goto Ready1

Ready1Wait:
CMDH A 0 A_JumpIfInventory("FullMetalJacketAmmo",4,"Ready2Wait")
CMDH A 5 A_WeaponReady(14)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 0 A_JumpIfInventory("FullMetalJacketAmmo",4,11)
CMDH A 5 A_WeaponReady(14)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 0 A_JumpIfInventory("FullMetalJacketAmmo",4,10)
CMDH A 5 A_WeaponReady(14)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 0 A_JumpIfInventory("FullMetalJacketAmmo",4,9)
CMDH A 5 A_WeaponReady(14)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
goto Ready1
Ready2Wait:
CMDH A 5 A_WeaponReady(10)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 5 A_WeaponReady(10)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 5 A_WeaponReady(10)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 5 A_WeaponReady(10)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
goto Ready2

Ready1:
CMDH A 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir1")
CMDH A 0 A_JumpIfInventory("FullMetalJacketAmmo",4,"Ready2")
CMDH A 5 A_WeaponReady(4)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
goto Ready1+1
Ready2:
CMDH A 5 A_WeaponReady
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
loop

ReadyAir1:
CMDH A 0 A_JumpIfInventory("FullMetalJacketAmmo",4,"ReadyAir2")
CMDH A 5 A_WeaponReady(12)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir1")
goto Ready1
ReadyAir2:
CMDH A 5 A_WeaponReady(8)
CMDH A 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH A 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir2")
goto Ready2

Fire:
CMDH A 0 A_JumpIfInventory("CommandoLeapFlag",1,"FireLeap")
CMDH A 0 A_JumpIfNoAmmo("NoAmmo")
CMDH B 3
CMDH C 0 A_PlaySoundEX("weapon/commandoshot","Weapon")
CMDH C 0 A_FireCustomMissile("CommandoM_Bomb",0,1,8,0)
CMDH CCCCBA 3
CMDH A 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir1")
goto Ready1
FireLeap:
CMDH A 0 A_GiveInventory("CommandoLeapFlag2",1)
CMDH A 0 ACS_NamedExecuteWithResult("cbm_cantpushwallsplayer",0,0)
CMDH A 0 A_TakeInventory("NoJumpCancel",9)
CMDH A 0 A_TakeInventory("CommandoLeapFlag",999)
CMDH A 0 A_TakeInventory("CBM_250_SpeedPower")
CMDH A 0 A_TakeInventory("CBM_DisableJumpPower")
CMDH A 0 ACS_NamedExecuteWithResult("core_unsolidplayer",0,USP_TOGGLEOFF_DAMAGE,CallACS("core_getmaxhealth")/10)
CMDH A 0 A_GunFlash("Flash.LandStart",1)
CMDH A 0 A_Refire(1)
CMDH A 0
goto Fire+1

AltFire:
CMDH A 0 A_JumpIfInventory("CommandoLeapFlag",1,"AltfireStomp")
CMDH A 0 A_GiveInventory("CBM_DisableJumpPowerGiver",1)
CMDH A 0 A_GiveInventory("NoJumpCancel",1)
CMDH A 0 ACS_NamedExecuteWithResult("cbm_cantpushwallsplayer",0,1)
CMDH A 2
CMDH B 2 A_GiveInventory("CBM_250_SpeedPowerGiver",1)
CMDH C 2
CMDH C 0 A_PlaySoundEx("weapon/GutThrow","Weapon")
CMDH C 0 ThrustThingZ(0,70,0,0)
CMDH C 0 ACS_NamedExecuteWithResult("core_unsolidplayer",0,USP_TOGGLEON)
CMDH C 0 A_GiveInventory("CommandoLeapFlag",1)
CMDH C 4
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 1 A_WeaponReady(10)
goto AltFireFall
AltFireFall:
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 1 A_WeaponReady(2)
loop
AltfireStomp:
CMDH C 1 ThrustThingZ(0,9,1,1)
CMDH C 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH C 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH C 0 A_Refire("AltfireStomp")
goto AltFireFall
AltEnd:
CMDH C 0 A_TakeInventory("CBM_250_SpeedPower")
CMDH C 0 A_TakeInventory("NoJumpCancel",999)
CMDH C 0 ACS_NamedExecuteWithResult("cbm_cantpushwallsplayer",0,0)
CMDH C 0 A_TakeInventory("CommandoLeapFlag",999)
CMDH C 0 A_PlaySoundEx("misc/quake","Weapon")
CMDH C 0 A_FireCustomMissile("CommandoLeapExplosion",0,0,0,0)
CMDH C 2 offset(0,82)A_Quake(4,15,0,192,"none")
CMDH C 5 offset(0,82)A_TakeInventory("CBM_DisableJumpPower")
CMDH C 0 ACS_NamedExecuteWithResult("core_unsolidplayer",0,USP_TOGGLEOFF_DAMAGE,CallACS("core_getmaxhealth")/10)
CMDH C 2 offset(-5,92)
CMDH C 2 offset(-10,102)
CMDH A 2 offset(10,52)
CMDH A 2 offset(-5,42)
CMDH A 8 A_WeaponReady(12+64)
goto Ready1Wait

NoAmmo:
CMDH A 1
goto Ready1

Flash:
TNT1 A 1 A_JumpIfInventory("CommandoLeapFlag2",1,"Flash.LandStart")
stop
Flash.LandStart:
TNT1 A 1 A_RailWait
goto Flash.Land
Flash.Land:
TNT1 A 0 A_JumpIf(z-floorz==0,"Flash.LandEnd")
TNT1 A 0 A_JumpIf(momz==0,"Flash.LandZ")
TNT1 A 1
loop
Flash.LandZ:
TNT1 A 1
TNT1 A 0 A_JumpIf(z-floorz==0,"Flash.LandEnd")
TNT1 A 0 A_JumpIf(momz==0,"Flash.LandEnd")
goto Flash.Land+2
Flash.LandEnd:
TNT1 A 1 A_TakeInventory("CommandoLeapFlag2",999)
stop
}
}

actor Commandoman_W2 : BaseMM8BDMWep_CBM
{
tag "$TAGC_10C2"
Dropitem "CommandoBombWep"
weapon.ammouse 6
weapon.ammogive 28
obituary "$OB_COMMANDOCLOSE"
Inventory.Pickupmessage "Sandopolis Zone"
weapon.ammotype "FullMetalJacketAmmo"
inventory.icon "CMNDO_I2"
States
{
Spawn:
C_10 C 1
loop

Deselect:
CMDH D 0
goto DeselectSwap
Select:
CMDH D 0
goto SelectSwap

Ready:
CMDH D 0 ACS_NamedExecuteWithResult("core_weaponcolor",DYE_COMMANDOMAN)
CMDH D 0 A_GunFlash("Flash",1)
Goto Ready1

Ready1Wait:
CMDH D 0 A_JumpIfInventory("FullMetalJacketAmmo",6,"Ready2Wait")
CMDH D 5 A_WeaponReady(14)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 0 A_JumpIfInventory("FullMetalJacketAmmo",6,11)
CMDH D 5 A_WeaponReady(14)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 0 A_JumpIfInventory("FullMetalJacketAmmo",6,10)
CMDH D 5 A_WeaponReady(14)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 0 A_JumpIfInventory("FullMetalJacketAmmo",6,9)
CMDH D 5 A_WeaponReady(14)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
goto Ready1
Ready2Wait:
CMDH D 5 A_WeaponReady(10)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 5 A_WeaponReady(10)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 5 A_WeaponReady(10)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 5 A_WeaponReady(10)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
goto Ready2

Ready1:
CMDH D 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir1")
CMDH D 0 A_JumpIfInventory("FullMetalJacketAmmo",6,"Ready2")
CMDH D 5 A_WeaponReady(4)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
goto Ready1+1
Ready2:
CMDH D 5 A_WeaponReady
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
loop

ReadyAir1:
CMDH D 0 A_JumpIfInventory("FullMetalJacketAmmo",6,"ReadyAir2")
CMDH D 5 A_WeaponReady(12)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir1")
goto Ready1
ReadyAir2:
CMDH D 5 A_WeaponReady(8)
CMDH D 0 A_GiveInventory("FullMetalJacketAmmo",1)
CMDH D 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir2")
goto Ready2

Fire:
CMDH D 0 A_JumpIfInventory("CommandoLeapFlag",1,"FireLeap")
CMDH D 0 A_JumpIfNoAmmo("NoAmmo")
CMDH E 3
CMDH F 0 A_PlaySoundEX("weapon/dustbit","Weapon")
CMDH F 0 A_FireCustomMissile("CommandoMineStart",0,1,0,0)
CMDH FFFFED 3
CMDH D 0 A_JumpIfInventory("CommandoLeapFlag2",1,"ReadyAir1")
goto Ready1
FireLeap:
CMDH D 0 A_GiveInventory("CommandoLeapFlag2",1)
CMDH D 0 ACS_NamedExecuteWithResult("cbm_cantpushwallsplayer",0,0)
CMDH D 0 A_TakeInventory("NoJumpCancel",9)
CMDH D 0 A_TakeInventory("CommandoLeapFlag",999)
CMDH D 0 A_TakeInventory("CBM_250_SpeedPower")
CMDH D 0 A_TakeInventory("CBM_DisableJumpPower")
CMDH D 0 ACS_NamedExecuteWithResult("core_unsolidplayer",0,USP_TOGGLEOFF_DAMAGE,CallACS("core_getmaxhealth")/10)
CMDH D 0 A_GunFlash("Flash.LandStart",1)
CMDH D 0 A_Refire(1)
CMDH D 0
goto Fire+1

AltFire:
CMDH D 0 A_JumpIfInventory("CommandoLeapFlag",1,"AltfireStomp")
CMDH D 0 A_GiveInventory("CBM_DisableJumpPowerGiver",1)
CMDH D 0 A_GiveInventory("NoJumpCancel",1)
CMDH D 0 ACS_NamedExecuteWithResult("cbm_cantpushwallsplayer",0,1)
CMDH D 2
CMDH E 2 A_GiveInventory("CBM_250_SpeedPowerGiver",1)
CMDH F 2
CMDH F 0 A_PlaySoundEx("weapon/GutThrow","Weapon")
CMDH F 0 ThrustThingZ(0,70,0,0)
CMDH F 0 ACS_NamedExecuteWithResult("core_unsolidplayer",0,USP_TOGGLEON)
CMDH F 0 A_GiveInventory("CommandoLeapFlag",1)
CMDH F 4
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 1 A_WeaponReady(10)
goto AltFireFall
AltFireFall:
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 1 A_WeaponReady(2)
loop
AltfireStomp:
CMDH F 1 ThrustThingZ(0,9,1,1)
CMDH F 0 A_SpawnItemEx("CommandoCrush",0,0,8,momx,momy,momz,0,8)
CMDH F 0 A_JumpIf(z-floorz==0,"AltEnd")
CMDH F 0 A_Refire("AltfireStomp")
goto AltFireFall
AltEnd:
CMDH F 0 A_TakeInventory("CBM_250_SpeedPower")
CMDH F 0 A_TakeInventory("NoJumpCancel",999)
CMDH F 0 ACS_NamedExecuteWithResult("cbm_cantpushwallsplayer",0,0)
CMDH F 0 A_TakeInventory("CommandoLeapFlag",999)
CMDH F 0 A_PlaySoundEx("misc/quake","Weapon")
CMDH F 0 A_FireCustomMissile("CommandoLeapExplosion",0,0,0,0)
CMDH F 2 offset(0,82)A_Quake(4,15,0,192,"none")
CMDH F 5 offset(0,82)A_TakeInventory("CBM_DisableJumpPower")
CMDH F 0 ACS_NamedExecuteWithResult("core_unsolidplayer",0,USP_TOGGLEOFF_DAMAGE,CallACS("core_getmaxhealth")/10)
CMDH F 2 offset(5,92)
CMDH F 2 offset(10,102)
CMDH D 2 offset(10,52)
CMDH D 2 offset(-5,42)
CMDH D 8 A_WeaponReady(12+64)
goto Ready1Wait

NoAmmo:
CMDH D 1
goto Ready1

Flash:
TNT1 A 1 A_JumpIfInventory("CommandoLeapFlag2",1,"Flash.LandStart")
stop
Flash.LandStart:
TNT1 A 1 A_RailWait
goto Flash.Land
Flash.Land:
TNT1 A 0 A_JumpIf(z-floorz==0,"Flash.LandEnd")
TNT1 A 0 A_JumpIf(momz==0,"Flash.LandZ")
TNT1 A 1
loop
Flash.LandZ:
TNT1 A 1
TNT1 A 0 A_JumpIf(z-floorz==0,"Flash.LandEnd")
TNT1 A 0 A_JumpIf(momz==0,"Flash.LandEnd")
goto Flash.Land+2
Flash.LandEnd:
TNT1 A 1 A_TakeInventory("CommandoLeapFlag2",999)
stop
}
}

actor FullMetalJacketAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
+INVENTORY.IGNORESKILL
}

actor CommandoItem : BasicClassItem
{
inventory.icon "CmndoIco"
inventory.pickupmessage "wow you got an antennae"
Tag "Command Commando Bombs"
states
{
Spawn:
CMDH Z 1
loop
UseCBM:
TNT1 A 0 A_JumpIfInventory("VivifyDelay7",1,"No")
TNT1 A 0 A_PlaySoundEx("S3_K/Beep","SoundSlot7")
TNT1 A 0 A_GiveInventory("VivifyDelay7",1)
TNT1 A 0 A_GiveInventory("CommandoCommandFlag",1)
fail
}
}


actor CommandoLeapFlag : OnceC{}
actor CommandoLeapFlag2 : OnceC{}
actor CommandoCommandFlag : Powerup
{
Powerup.Duration 3
}

actor CommandoM_Bomb : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_Shot"
Obituary "$OB_COMMANDOBOMB"
+SKYEXPLODE
+EXPLODEONWATER
Damage (10)
Radius 10
Height 10
Speed 20
Scale 2.5
States
{
Spawn:
COMM B 0
COMM B 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
wait
Command:
COMM B 0 A_PlaySoundEX("weapon/commandoswitch","Weapon")
COMM B 2 A_GiveToTarget("CBM_TargetMarker",1)
COMM B 0 ACS_NamedExecuteWithResult("core_aimattargetcursor",CallACS("core_gettarget")+PLN_TARGETPOINT_OFFSET)
COMM B 0 A_SpawnItemEx("CommandoM_Bomb2",0,0,0,Cos(pitch)*30,0,-sin(pitch)*30,0)
stop

Death:
TNT1 A 0 A_CheckFloor("DeathF")
TNT1 A 0 A_JumpIf(z-floorz<10,"DeathF")
//TNT1 A 0 A_SpawnItemEX("CommandoM_BombTrailFX",0,0,0,0,0,0,0,1)
TNT1 A 1 A_SpawnItemEx("CommandoM_BombToFloor",0,0,0,0,0,-30,0)
stop
DeathF:
//TNT1 A 0 A_Explode(190,96,0,0,20)
TNT1 A 0 A_SpawnItemEx("CommandoM_Wave2_H")
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveFX",0,0,0,0,0,0,0,1)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,0*45,8192)//SXF_MULTIPLYSPEED = 8192
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,1*45,8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,2*45,8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,3*45,8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,4*45,8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,5*45,8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,6*45,8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,7*45,8192)
TNT1 A 4 A_PlaySoundEX("wep_L/commandoexplosion","Body")
stop
Crash:
XDeath:
TNT1 A 0 A_Explode(190,96,0,0,48)
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1)
goto Death
//TNT1 A 2
//stop
}
}


actor CommandoM_BombToFloor : CommandoM_Bomb
{
+THRUACTORS
+DONTBLAST
+DONTREFLECT
States
{
Spawn:
COMM C 0
COMM C 1 A_PlaySoundEX("weapon/commandoswitch","Weapon")
COMM C 2 A_SpawnItemEX("CommandoM_BombTrailFX",0,0,0,0,0,0,0,1)
wait
Death:
TNT1 A 0
goto DeathF
}
}

actor CommandoM_Bomb2 : CommandoM_Bomb
{
damage (80)
Speed 30
States
{
Spawn:
COMM B 0
COMM B 0 A_SpawnItemEX("CommandoM_BombTrailFX",0,0,0,0,0,0,0,1)
COMM B 3 A_SpawnItemEX("CommandoM_BombFX")
CMDH H 0 A_SpawnItemEX("CommandoM_BombTrailFX",0,0,0,0,0,0,0,1)
CMDH H 3 A_SpawnItemEX("CommandoM_BombFX")
loop
}
}

actor CommandoM_BombFX : BasicGraphicEffect
{
renderstyle add
states
{
SpawnFrame:
CMDH I 1 A_FadeOut(0.15)
loop
}
}

actor CommandoM_BombTrailFX : BasicGraphicEffect
{
+BRIGHT
+FORCEXYBILLBOARD
States
{
SpawnFrame:
TNT1 A 0
TNT1 A 2
OMFX BCE 2
stop
}
}

actor CommandoCrush : BasicImplosion
{
Obituary "$OB_COMMANDOLEAP"
damagetype "CommandoM_Crush"
renderstyle none
States
{
Spawn:
TNT1 A 0
TNT1 A 2 A_Explode(40+CallACS("core_checkrune",RUNE_SPREAD,2)*80,20,0,0,20)
stop
}
}

actor CommandoLeapExplosion : BasicExplosion
{
Damagetype "CommandoM_WaveBit"
Obituary "$OB_COMMANDOQUAKE"
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail1_T_Snd",0,0,0,1,0,0,0,8192)

TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail1_T_Start",8,0,0,0,48,0,0)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail1_T_Start",8,0,0,0,-48,0,0)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail1_T_Start",-8,0,0,0,96,0,0)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail1_T_Start",-8,0,0,0,-96,0,0)

TNT1 A 0 //A_SpawnItemEx("CommandoM_WaveTrail1_T_Snd",8,48,0,1,0,0,0,8192)
TNT1 A 0 //A_SpawnItemEx("CommandoM_WaveTrail1_T_Snd",8,-48,0,1,0,0,0,8192)
TNT1 A 0 //A_SpawnItemEx("CommandoM_WaveTrail1_T_Snd",-8,96,0,1,0,0,0,8192)
TNT1 A 0 //A_SpawnItemEx("CommandoM_WaveTrail1_T_Snd",-8,-96,0,1,0,0,0,8192)
TNT1 A 2
//TNT1 A 0 A_PlaySoundEX("wep_L/commandoexplosion","Body")
//TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
//TNT1 A 0 A_Explode(150,128,0,0,64)
//TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1)
TNT1 A 2
stop
}
}

actor CommandoM_WaveTrail1_T_Start
{
PROJECTILE
+THRUACTORS
+DONTBLAST
+STEPMISSILE
+NODROPOFF
MaxStepHeight 64
MaxDropOffHeight 64
RenderStyle None
Radius 6
Height 8
Speed 1
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail1_T_Snd",0,0,0,1,0,0,0,8192)
stop
}
}

actor CommandoM_WaveTrail : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_Wave"
Obituary "$OB_COMMANDOWAVE"
//-NOGRAVITY
+DONTBLAST
+DONTREFLECT
+THRUACTORS
//+FLOORHUGGER
//+EXPLODEONWATER
//+STEPMISSILE
//+NOEXPLODEFLOOR
//maxstepheight 24

+FLOORHUGGER
+NODROPOFF
MaxDropOffHeight 24

reactiontime 7
RenderStyle "None"

Damage (0)
Radius 6//20
Height 8//12
Speed 15//50
States
{
Spawn:
//TNT1 A 0
//TNT1 AAAAAAA 3 A_SpawnItemEx("CommandoM_Wave",0,0,0,0,0,0,0,1)
//stop

TNT1 A 0
TNT1 A 0 A_SpawnItemEx("CommandoM_Wave_H")
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveFX",0,0,0,0,0,0,0,1)
TNT1 A 2 A_CountDown
loop
}
}
actor CommandoM_WaveTrail1 : CommandoM_WaveTrail
{
MaxDropOffHeight 32
States
{
Spawn:
TNT1 A 0
TNT1 A 3
goto Super::Spawn
}
}
actor CommandoM_WaveTrail1_T : CommandoM_WaveTrail
{
MaxDropOffHeight 64
reactiontime 40//50
States
{
Spawn:
TNT1 A 0
//TNT1 A 3
goto Super::Spawn
}
}
actor CommandoM_WaveTrail1_T_Snd : CommandoM_WaveTrail1_T
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_PlaySound("wep/Comm_GRDBRAKE",1,0.2)
TNT1 A 0 A_SpawnItemEx("CommandoM_Wave_H")
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveFX",0,0,0,0,0,0,0,1)
TNT1 A 2 A_CountDown
TNT1 A 0 A_SpawnItemEx("CommandoM_Wave_H")
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveFX",0,0,0,0,0,0,0,1)
TNT1 A 2 A_CountDown
loop
}
}

actor CommandoM_WaveTrail2 : CommandoM_WaveTrail
{
Obituary "$OB_COMMANDOBOMB"
States
{
Spawn:
TNT1 A 1
TNT1 A 2
TNT1 A 0 A_SpawnItemEx("CommandoM_Wave2_H")
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveFX",0,0,0,0,0,0,0,1)
TNT1 A 2 A_CountDown
goto Spawn+2
}
}
actor CommandoM_WaveTrail3 : CommandoM_WaveTrail
{
Obituary "$OB_COMMANDOMINE"
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("CommandoM_Wave3_H")
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveFX",0,0,0,0,0,0,0,1)
TNT1 A 2 A_CountDown
loop
}
}

actor CommandoM_WaveFX : BasicGraphicEffect
{
+FLOORHUGGER
+FORCEYBILLBOARD
+BRIGHT
Radius 10
Height 30
States
{
SpawnFrame:
TNT1 A 0
Q_AC TUVWVUT 1
//Q_AC TUVW 2
stop
}
}

actor CommandoM_WaveA
{
PROJECTILE
Damagetype "CommandoM_Wave"
Obituary "$OB_COMMANDOWAVE"
+DONTBLAST
+DONTREFLECT
+THRUGHOST
+FLOORHUGGER
+SERVERSIDEONLY
RenderStyle "None"
Damage (12)//50
Radius 10//14//20
Height 30//56
States
{
Spawn:
TNT1 A 0
TNT1 A 1
stop
}
}

actor CommandoM_WaveB : CommandoM_WaveA{Height 40}
actor CommandoM_WaveC : CommandoM_WaveA{Height 75}
actor CommandoM_WaveD : CommandoM_WaveA{Height 112}

actor CommandoM_WaveX : CommandoM_WaveA{Damage (12)}
actor CommandoM_WaveY : CommandoM_WaveB{Damage (12)}
actor CommandoM_WaveZ : CommandoM_WaveC{Damage (12)}

actor CommandoM_Wave2A : CommandoM_WaveA
{
Obituary "$OB_COMMANDOBOMB"
}
actor CommandoM_Wave2B : CommandoM_Wave2A{Height 40}
actor CommandoM_Wave2C : CommandoM_Wave2A{Height 75}
actor CommandoM_Wave2D : CommandoM_Wave2A{Height 112}
actor CommandoM_Wave2X : CommandoM_Wave2A{Damage (12)}
actor CommandoM_Wave2Y : CommandoM_Wave2B{Damage (12)}
actor CommandoM_Wave2Z : CommandoM_Wave2C{Damage (12)}

actor CommandoM_Wave3A : CommandoM_WaveA
{
Obituary "$OB_COMMANDOMINE"
}
actor CommandoM_Wave3B : CommandoM_Wave3A{Height 40}
actor CommandoM_Wave3C : CommandoM_Wave3A{Height 75}
actor CommandoM_Wave3D : CommandoM_Wave3A{Height 112}
actor CommandoM_Wave3X : CommandoM_Wave3A{Damage (12)}
actor CommandoM_Wave3Y : CommandoM_Wave3B{Damage (12)}
actor CommandoM_Wave3Z : CommandoM_Wave3C{Damage (12)}

actor CommandoM_Wave_H : BasicHelper
{
Obituary "$OB_COMMANDOWAVE"
States
{
Spawn:
TNT1 A 0
Q_AC T 1 A_SpawnItemEx("CommandoM_WaveX")
Q_AC U 1 A_SpawnItemEx("CommandoM_WaveY")
Q_AC V 1 A_SpawnItemEx("CommandoM_WaveZ")
Q_AC W 1 A_SpawnItemEx("CommandoM_WaveD")
Q_AC V 1 A_SpawnItemEx("CommandoM_WaveC")
Q_AC U 1 A_SpawnItemEx("CommandoM_WaveB")
Q_AC T 1 A_SpawnItemEx("CommandoM_WaveA")
//Q_AC TUVW 2
stop
}
}
actor CommandoM_Wave2_H : CommandoM_Wave_H
{//Bomb
Obituary "$OB_COMMANDOBOMB"
States
{
Spawn:
TNT1 A 0
Q_AC T 1 //A_SpawnItemEx("CommandoM_Wave2X")
Q_AC U 1 A_SpawnItemEx("CommandoM_Wave2Y")
Q_AC V 1 A_SpawnItemEx("CommandoM_Wave2Z")
Q_AC W 1 A_SpawnItemEx("CommandoM_Wave2D")
Q_AC V 1 A_SpawnItemEx("CommandoM_Wave2C")
Q_AC U 1 A_SpawnItemEx("CommandoM_Wave2B")
Q_AC T 1 //A_SpawnItemEx("CommandoM_Wave2A")
stop
}
}
actor CommandoM_Wave3_H : CommandoM_Wave_H
{//Mine
Obituary "$OB_COMMANDOMINE"
States
{
Spawn:
TNT1 A 0
Q_AC T 1 A_SpawnItemEx("CommandoM_Wave3X")
Q_AC U 1 A_SpawnItemEx("CommandoM_Wave3Y")
Q_AC V 1 A_SpawnItemEx("CommandoM_Wave3Z")
Q_AC W 1 A_SpawnItemEx("CommandoM_Wave3D")
Q_AC V 1 A_SpawnItemEx("CommandoM_Wave3C")
Q_AC U 1 A_SpawnItemEx("CommandoM_Wave3B")
Q_AC T 1 A_SpawnItemEx("CommandoM_Wave3A")
stop
}
}

actor CommandoM_WaveBitFX1 : BasicGraphicEffect
{
+FORCEXYBILLBOARD
+BRIGHT
States
{
SpawnFrame:
OMFX B 1
stop
}
}
actor CommandoM_WaveBitFX2 : CommandoM_WaveBitFX1
{
States
{
SpawnFrame:
OMFX C 1
stop
}
}
actor CommandoM_WaveBit : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_WaveBit"
Obituary "$OB_COMMANDOBIT"
-NOGRAVITY
+BOUNCEONWALLS
deathsound "wep_V/CommandoWave"
Wallbouncefactor 0.50
Radius 10
Height 10
Damage (50)
Speed 20
Scale 2.5
States
{
Spawn:
TNT1 A 0
TNT1 AA 1 A_SpawnItemEx("CommandoM_WaveBitFX1",0,0,25,0,0,0,0,1)
TNT1 AA 1 A_SpawnItemEx("CommandoM_WaveBitFX2",0,0,25,0,0,0,0,1)
loop
Death:
TNT1 A 0
TNT1 A 4 A_SpawnItemEx("CommandoM_WaveTrail",0,0,0,1,0,0,0,1+8192)
stop
}
}
actor CommandoM_BombBit : CommandoM_WaveBit
{
States
{
Death:
TNT1 A 0
TNT1 A 4 A_SpawnItemEx("CommandoM_WaveTrail2",0,0,0,1,0,0,0,1+8192)
stop
}
}
actor CommandoM_MineBit : CommandoM_WaveBit
{
States
{
Death:
TNT1 A 0
TNT1 A 4 A_SpawnItemEx("CommandoM_WaveTrail3",0,0,0,1,0,0,0,1+8192)
stop
}
}

actor CommandoMineStart : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_Mine"
Obituary "$OB_COMMANDOMINEX"
-NOGRAVITY
+SKYEXPLODE
+EXPLODEONWATER
Damage(100)
Radius 20
Height 10
Speed 35
scale 2.5
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_ChangeVelocity(0,0,4)
CMDH NOPQRSTU 2
goto Spawn+2
Death:
CMDH N 0 A_SetGravity(0.0)
CMDH N 0 A_CheckFloor("DeathF")
CMDH N 0 A_JumpIf(z-ceilingz==0-10,"DeathC")
CMDH N 0
CMDH N 1 A_SpawnItemEX("CommandoMineY_HelpStart")
stop
DeathF:
CMDH N 0 A_SpawnItemEx("CommandoMineX")
stop
DeathC:
CMDH N 0 A_SpawnItemEx("CommandoMineZ")
stop
XDeath:
TNT1 A 0 A_Explode(80,96,0,0,20)
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1)
TNT1 A 2
stop
}
}

actor CommandoMineX : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_Mine"
Obituary "$OB_COMMANDOMINE"
+DONTBLAST
+DONTREFLECT
+FLOORHUGGER
ReactionTime 1
damage (0)
radius 20
height 10
scale 2.5
States
{
Spawn:
TNT1 A 0
CMDH J 3
CMDH JJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKKJJJJJJKKKKKK 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
CMDH JJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKKJJJKKK 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
CMDH K 1 A_Countdown
wait
Command:
CMDH K 1 A_GiveInventory("CommandoLeapFlag",1)
CMDH K 1 A_Countdown
wait
Death:
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_PlaySoundEX("wep_L/commandoexplosion","Body")
TNT1 A 0 A_JumpIfInventory("CommandoLeapFlag",1,"Death2")
TNT1 A 0 A_Explode(150,180,0,0,100)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,45,1+8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,135,1+8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,225,1+8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,315,1+8192)
goto Death2+1
Death2:
TNT1 A 0 A_Explode(100,96,0,0,48)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,0,1+8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,90,1+8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,180,1+8192)
TNT1 A 0 A_SpawnItemEx("CommandoM_WaveTrail3",20,0,0,1,0,0,270,1+8192)
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1)
TNT1 A 2
stop
}
}


actor CommandoMineY_HelpStart
{
+SERVERSIDEONLY
PROJECTILE
+DONTBLAST
+DONTREFLECT
//+THRUACTORS
Renderstyle None
Damage (0)
Radius 10
Height 10
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("CommandoMineY_HelpF")//Move it up
stop
ForceSpawn:
TNT1 A 0 A_SpawnItemEx("CommandoMineY",0,0,0,0,0,0,180,32)
stop
Death:
TNT1 A 1 A_SpawnItemEx("CommandoMineY_HelpB")//Back it up
stop
}
}
actor CommandoMineY_HelpF : CommandoMineY_HelpStart
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SetPitch(pitch+1)
TNT1 A 0 A_JumpIf(pitch>=20,"ForceSpawn")
TNT1 A 0 A_SpawnItemEx("CommandoMineY_HelpF",2,0,0,0,0,0,0,32+SXF_TRANSFERPITCH)//512
stop
FailSpawn://Couldn't hit a surface, place mine back at start point
TNT1 A 1 A_SpawnItemEx("CommandoMineY",40,0,0,0,0,0,180,32)
stop
Death:
TNT1 A 1 A_SpawnItemEx("CommandoMineY",2,0,0,0,0,0,180,32)
stop
}
}
actor CommandoMineY_HelpB : CommandoMineY_HelpStart
{
States
{
Spawn:
TNT1 A 0
goto ForceSpawn
Death:
TNT1 A 0 A_JumpIf(pitch>=10,"ForceSpawn")
TNT1 A 0 A_SpawnItemEx("CommandoMineY_HelpB",-2,0,0,0,0,0,0,32+512)
stop
}
}

actor CommandoMineY : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_Mine"
Obituary "$OB_COMMANDOMINE"
+DONTBLAST
+DONTREFLECT
reactiontime 1
Damage (0)
Radius 10
Height 10
scale 2.5
States
{
Spawn:
TNT1 A 0
CMDH L 3 A_GiveInventory("CutterFlag",1)
CMDH LLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMMLLLLLLMMMMMM 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
CMDH LLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMMLLLMMM 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
CMDH M 1 A_Countdown
wait
Command:
CMDH M 1 A_GiveInventory("CommandoLeapFlag",1)
CMDH M 1 A_Countdown
wait
Death:
TNT1 A 0 A_JumpIfInventory("CommandoLeapFlag",1,"XDeath")
TNT1 A 0 A_JumpIfInventory("CutterFlag",1,"Death2")
goto DeathX
DeathX:
TNT1 A 0 A_Explode(50,96,0,0,20)
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1+16384)
TNT1 A 2
stop

Death2:
TNT1 A 0 A_Explode(150,180,0,0,100)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,20)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,0)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,-20)
goto DeathEnd

XDeath:
Crash:
TNT1 A 0 A_Explode(100,96,0,0,48)
DeathEnd:
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,30)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,10)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,-10)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,random(-10,10),12.5,0,0.5,-30)
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1)
TNT1 A 2
stop
}
}

actor CommandoMineZ : ProjSpawnFuncActor
{
PROJECTILE
Damagetype "CommandoM_Mine"
Obituary "$OB_COMMANDOMINE"
+DONTBLAST
+DONTREFLECT
+CEILINGHUGGER
reactiontime 1
Damage (0)
Radius 20
Height 10
scale 2.5
States
{
Spawn:
TNT1 A 0
CMDH V 3 A_GiveInventory("CutterFlag",1)
CMDH VVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWWVVVVVVWWWWWW 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
CMDH VVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWWVVVWWW 1 A_JumpIfInTargetInventory("CommandoCommandFlag",1,"Command")
CMDH W 1 A_Countdown
wait
Command:
CMDH W 1 A_GiveInventory("CommandoLeapFlag",1)
CMDH W 1 A_Countdown
wait
Death:
TNT1 A 0 A_JumpIfInventory("CommandoLeapFlag",1,"XDeath")
TNT1 A 0 A_JumpIfInventory("CutterFlag",1,"Death2")
goto DeathX
DeathX:
TNT1 A 0 A_Explode(50,96,0,0,20)
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1)
TNT1 A 2
stop

Death2:
TNT1 A 0 A_Explode(150,180,0,0,100)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,45)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,135)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,225)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,315)
goto DeathEnd

XDeath:
Crash:
TNT1 A 0 A_Explode(100,96,0,0,48)
DeathEnd:
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,0)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,90)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,180)
TNT1 A 0 A_SpawnItemEX("CommandoM_MineBit",0,0,0,10,0,0.5,270)
TNT1 A 0 A_PlaySoundEx("misc_L/mm3explosion","Weapon")
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_4_210",0,0,0,0,0,0,0,1+16384)
TNT1 A 2
stop
}
}


actor Commandoman_W_NormalBar : NormalBar {Args 87,222}//88,222
actor Commandoman_W2_NormalBar : NormalBar {Args 87,222}