Actor Darkman1 : VCBaseClass
{
Player.ScoreIcon "DAR1MUGS"
player.startitem "BaseFlagPack", 1
player.displayname "Darkman1"
player.soundclass "darkman1c"
player.startitem "NormalArmor"
player.startitem "DarkTankBusters1Boss"
player.startitem "UltimateAttackItem2"
player.startitem "UltSoundWatcherSpawn2"
player.startitem "BaseAltfireAmmo", 112
player.startitem "IsFromMM5"
player.forwardmove 0.8,0.8
player.sidemove 0.78,0.78
player.viewheight 53
player.jumpz 10
States
{
Spawn:
DAR1 B 0
DAR1 B 1 A_JumpIf(z-floorz>0,"Jumping")
DAR1 A 1 A_JumpIf(z-floorz>0,"Jumping")
Goto Spawn+2
See:
DarkRamA:
DAR1 BBBBB 1 A_JumpIf(z-floorz>0,"Jumping")
DarkRamB:
DAR1 CCCCC 1 A_JumpIf(z-floorz>0,"Jumping")
DAR1 DDDDD 1 A_JumpIf(z-floorz>0,"Jumping")
DAR1 EEEEE 1 A_JumpIf(z-floorz>0,"Jumping")
Goto Spawn+1
Jumping:
DAR1 I 1 A_JumpIf(z-floorz<=0,"Spawn")
wait
Missile:
Animation3:
Missile.LeftBuster:
DAR1 GGGGG 1 A_JumpIf(z-floorz>0,"JumpingMissile.LeftBuster")
Missile2.LeftBuster:
DAR1 GGGGG 1 A_JumpIf(z-floorz>0,"JumpingMissile2.LeftBuster")
Goto Spawn+2
JumpingMissile.LeftBuster:
DAR1 KKKKK 1 A_JumpIf(z-floorz<=0,"Missile.LeftBuster")
JumpingMissile2.LeftBuster:
DAR1 KKKKK 1 A_JumpIf(z-floorz<=0,"Missile2.LeftBuster")
Goto Jumping
Animation4:
Missile.RightBuster:
DAR1 FFFFF 1 A_JumpIf(z-floorz>0,"JumpingMissile.RightBuster")
Missile2.RightBuster:
DAR1 FFFFF 1 A_JumpIf(z-floorz>0,"JumpingMissile2.RightBuster")
Goto Spawn+2
JumpingMissile.RightBuster:
DAR1 JJJJJ 1 A_JumpIf(z-floorz<=0,"Missile.RightBuster")
JumpingMissile2.RightBuster:
DAR1 JJJJJ 1 A_JumpIf(z-floorz<=0,"Missile2.RightBuster")
Goto Jumping

Animation1:
Animation2:
DAR1 BCBCBCBCBC 1
goto Spawn+1

ClassPain:
DAR1 HHHHHHHHHH 2 A_SpawnItem("PainFX",0,3)
Goto Spawn+1
WeaponGetM:
ClassDeath:
DAR1 H 20 ACS_ExecuteAlways(999,0,0)
DAR1 H 0 A_PlayerScream
PLY1 H 0 A_SpawnItemEx("FakeDeathFX", 0, 0, 32)
NOFX A 1 A_CheckPlayerDone
wait
}
}

actor DarkTankBusters1Boss : VCBaseWeapon
{
Obituary "$OB_DARKMANONE1"
weapon.ammotype "BaseAltfireAmmo"
States
{
Ready:
DKC1 A 0 A_GunFlash
Ready2:
DKC1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",3)==3 && CallACS("VC_AmmoCheck",3,56)==0,"User1")
DKC1 A 1 A_WeaponReady(WRF_NOSECONDARY*CallACS("VC_AmmoCheck",3,56))
DKC1 A 0 A_JumpIfInventory("UltAttackFlag",1,"UltimateAttack")
DKC1 A 0 A_GiveInventory("BaseAltfireAmmo",1)
loop
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
DKC1 A 1 A_Lower
Goto Deselect
Select:
TNT1 A 0 ACS_ExecuteAlways(991,0,808)
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
DKC1 A 1 A_Raise
Goto Select
Fire:
DKC1 A 0 A_JumpIfInventory("PowerUltBuildCooldown",1,"Fire.Ult")
DKC1 A 0 A_PlaySoundEx("weapon/Dark1Shot","Weapon")
DKC1 A 0 A_JumpIfInventory("BaseCustomFlag1",1,"LeftBuster")
RightBuster:
DKC1 B 0 A_FireCustomMissile("Dark1Shot",0,0,16,5)
DKC1 B 0 A_GiveInventory("Darkman1CooldownCheck_CI",1)
DKC1 E 0 ACS_NamedExecuteWithResult("VC_SetState",3)
DKC1 CD 1 A_GiveInventory("BaseCustomFlag1", 1)
RightBusterStall:
//DKC1 HI 1 A_TakeInventory("CutterFlag",1)
RightBusterStall_L:
DKC1 E 0 ACS_NamedExecuteWithResult("VC_SetState",3)
DKC1 E 1 A_TakeInventory("CutterFlag",1)
DKC1 E 0 A_JumpIfInventory("CutterFlag",1,"RightBusterStall_L")
DKC1 DA 1
Goto Ready2

LeftBuster:
DKC1 F 0 A_FireCustomMissile("Dark1Shot",0,0,-16,5)
DKC1 F 0 A_GiveInventory("Darkman1CooldownCheck_CI",1)
DKC1 E 0 ACS_NamedExecuteWithResult("VC_SetState",4)
DKC1 GH 1 A_TakeInventory("BaseCustomFlag1",9)
LeftBusterStall:
//DKC1 DE 1 A_TakeInventory("CutterFlag",1)
LeftBusterStall_L:
DKC1 I 0 ACS_NamedExecuteWithResult("VC_SetState",4)
DKC1 I 1 A_TakeInventory("CutterFlag",1)
DKC1 I 0 A_JumpIfInventory("CutterFlag",1,"LeftBusterStall_L")
DKC1 HA 1 A_TakeInventory("BaseCustomFlag1", 9)
Goto Ready2

Fire.Ult:
DKC1 A 0 A_JumpIfInventory("BigPetsSegments",1,1)
Goto Ready2
DKC1 A 0 A_PlaySoundEx("weapon/mbuster","Weapon")
DKC1 A 0 A_TakeInventory("BigPetsSegments",1)
DKC1 A 0 A_JumpIfInventory("BaseCustomFlag1",1,"LeftPet")
RightPet:
DKC1 F 0 A_FireCustomMissile("BigPetsSegment",0,0,16,5)
DKC1 F 0 A_GiveInventory("BaseCustomFlag1")
DKC1 BCDEEEEDDA 2 ACS_NamedExecuteWithResult("VC_SetState",3)
Goto Ready2
LeftPet:
DKC1 F 0 A_TakeInventory("BaseCustomFlag1")
DKC1 F 0 A_FireCustomMissile("BigPetsSegment",0,0,-16,5)
DKC1 FGHIIIIHHA 2 ACS_NamedExecuteWithResult("VC_SetState",4)
Goto Ready2
AltFire:
DKC1 A 0 A_JumpIfInventory("NoAltfire",1,"Ready")
DKC1 A 0 A_CheckFloor(1)
Goto Ready
DKC1 A 0 A_ChangeVelocity(0,0,0) DKC1 A 0 A_Stop
DKC1 A 0 A_PlaySoundEx("weapon/dark1tank","Weapon")
DKC1 A 1 Offset(0,33)
DKC1 A 1 Offset(0,35)
DKC1 A 1 Offset(0,38)
DKC1 A 1 Offset(0,42)
DKC1 A 1 Offset(0,47)
DKC1 A 1 Offset(0,53)
DKC1 A 0 SetPlayerProperty(0,1,4) TNT1 A 0 A_GiveInventory("BaseCustomFlag2")
DarkRamHoldA:
DKC1 A 0 A_SpawnItemEx("DarkRamExhaust",0,15) DKC1 A 0 A_SpawnItemEx("DarkRamExhaust",0,-15) DKC1 A 0 A_PlaySoundEx("misc/sharkjoeraise","Body")
DKC1 A 1 Offset(0,56)A_GiveInventory("Dark1TankHandler") DKC1 A 0 A_GiveInventory("DarkRamPickUp",1) DKC1 A 0 ACS_NamedExecuteWithResult("VC_SetState",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler")
DKC1 AA 1 Offset(0,56)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",4)==5,"DarkRamHoldB") Goto DarkRamEnd
DarkRamHoldB:
DKC1 A 1 Offset(0,53)A_GiveInventory("Dark1TankHandler") DKC1 A 0 A_GiveInventory("DarkRamPickUp",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler")
DKC1 AA 1 Offset(0,53)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",4)==5,"DarkRamHoldC") Goto DarkRamEnd
DarkRamHoldC:
DKC1 A 1 Offset(0,56)A_GiveInventory("Dark1TankHandler") DKC1 A 0 A_GiveInventory("DarkRamPickUp",1) DKC1 A 0 ACS_NamedExecuteWithResult("VC_SetState",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler")
DKC1 AA 1 Offset(0,56)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",4)==5,"DarkRamHoldD") Goto DarkRamEnd
DarkRamHoldD:
DKC1 A 1 Offset(0,53)A_GiveInventory("Dark1TankHandler") DKC1 A 0 A_GiveInventory("DarkRamPickUp",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler")
DKC1 AA 1 Offset(0,53)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",4)==5,"DarkRamHoldA") Goto DarkRamEnd
DarkRamEnd:
DKC1 A 0 SetPlayerProperty(0,0,4) DKC1 A 0 A_TakeInventory("BaseCustomFlag2") DKC1 A 0 A_PlaySoundEx("misc/lightelevatorend","Weapon")
DKC1 A 1 Offset(0,53)
DKC1 A 1 Offset(0,47)
DKC1 A 1 Offset(0,42)
DKC1 A 1 Offset(0,38)
DKC1 A 1 Offset(0,35)
DKC1 A 1 Offset(0,33)A_ChangeFlag("PICKUP",True)
DKC1 A 12 A_WeaponReady(WRF_NOFIRE)
Goto Ready2


User1:
DKC1 A 0 A_JumpIfInventory("NoAltfire",1,"Ready")
DKC1 A 0 A_CheckFloor(2)
DKC1 A 1
Goto Ready
DKC1 A 0 A_ChangeVelocity(0,0,0) DKC1 A 0 A_Stop
DKC1 A 0 A_PlaySoundEx("weapon/dark1tank","Weapon")
DKC1 A 1 Offset(0,33)
DKC1 A 1 Offset(0,35)
DKC1 A 1 Offset(0,38)
DKC1 A 1 Offset(0,42)
DKC1 A 1 Offset(0,47)
DKC1 A 1 Offset(0,53)
DKC1 A 0 SetPlayerProperty(0,1,4) TNT1 A 0 A_GiveInventory("BaseCustomFlag2")
User1DarkRamHoldA:
DKC1 A 0 A_SpawnItemEx("DarkRamExhaust",0,15) DKC1 A 0 A_SpawnItemEx("DarkRamExhaust",0,-15) DKC1 A 0 A_PlaySoundEx("misc/sharkjoeraise","Body")
DKC1 A 1 Offset(0,56)A_GiveInventory("Dark1TankHandler2") DKC1 A 0 A_GiveInventory("DarkRamPickUpReverse",1) DKC1 A 0 ACS_NamedExecuteWithResult("VC_SetState",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto User1DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler2")
DKC1 AA 1 Offset(0,56)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",3)==3,"User1DarkRamHoldB") Goto DarkRamEnd
User1DarkRamHoldB:
DKC1 A 1 Offset(0,53)A_GiveInventory("Dark1TankHandler2") DKC1 A 0 A_GiveInventory("DarkRamPickUpReverse",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto User1DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler2")
DKC1 AA 1 Offset(0,53)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",3)==3,"User1DarkRamHoldC") Goto DarkRamEnd
User1DarkRamHoldC:
DKC1 A 1 Offset(0,56)A_GiveInventory("Dark1TankHandler2") DKC1 A 0 A_GiveInventory("DarkRamPickUpReverse",1) DKC1 A 0 ACS_NamedExecuteWithResult("VC_SetState",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto User1DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler2")
DKC1 AA 1 Offset(0,56)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",3)==3,"User1DarkRamHoldD") Goto DarkRamEnd
User1DarkRamHoldD:
DKC1 A 1 Offset(0,53)A_GiveInventory("Dark1TankHandler2") DKC1 A 0 A_GiveInventory("DarkRamPickUpReverse",1)
TNT1 A 0 A_JumpIfInventory("BaseAltfireAmmo",1,1) Goto User1DarkRamEnd
TNT1 A 0 A_GiveInventory("Dark1TankHandler2")
DKC1 AA 1 Offset(0,53)A_JumpIf(ACS_NamedExecuteWithResult("VC_CheckBtn",3)==3,"User1DarkRamHoldA") Goto DarkRamEnd
User1DarkRamEnd:
DKC1 A 0 SetPlayerProperty(0,0,4) DKC1 A 0 A_TakeInventory("BaseCustomFlag2") DKC1 A 0 A_PlaySoundEx("misc/lightelevatorend","Weapon")
DKC1 A 1 Offset(0,53)
DKC1 A 1 Offset(0,47)
DKC1 A 1 Offset(0,42)
DKC1 A 1 Offset(0,38)
DKC1 A 1 Offset(0,35)
DKC1 A 1 Offset(0,33)A_ChangeFlag("PICKUP",True)
DKC1 A 12 A_WeaponReady(WRF_NOFIRE)
Goto Ready2

UltimateAttack:
DKC1 A 0 ACS_NamedExecuteAlways("VC_UltimateText",0,45) DKC1 A 0 A_PlaySoundEx("classes/ultimateactivation","Auto") DKC1 A 0 A_SpawnItemEx("BigPetsHologram")
DKC1 A 0 A_GiveInventory("PowerUltBuildCooldown",1) DKC1 A 0 A_TakeInventory("UltAttackFlag",1) DKC1 A 0 A_TakeInventory("BigPetsSegments")
DKC1 A 1 Offset(0,36)
DKC1 A 1 Offset(0,40)
DKC1 A 1 Offset(0,44)
DKC1 A 4 Offset(0,48)
DKC1 A 1 Offset(1,48)
DKC1 A 1 Offset(-2,48)
DKC1 A 1 Offset(3,48)
DKC1 A 1 Offset(-4,48)
DKC1 A 1 Offset(5,48)
DKC1 A 0 A_GiveInventory("BigPetsSegments",1) DKC1 A 0 A_PlaySoundEx("weapon/PirateReload","Body") DKC1 A 0 ACS_NamedExecuteWithResult("VC_SetState",4)
DKC1 A 1 Offset(-5,48)
DKC1 A 1 Offset(4,48)
DKC1 A 1 Offset(-3,48)
DKC1 A 1 Offset(2,48)
DKC1 A 1 Offset(-1,48)
DKC1 A 4 Offset(0,48)
DKC1 A 1 Offset(1,48)
DKC1 A 1 Offset(-2,48)
DKC1 A 1 Offset(3,48)
DKC1 A 1 Offset(-4,48)
DKC1 A 1 Offset(5,48)
DKC1 A 0 A_GiveInventory("BigPetsSegments",1) DKC1 A 0 A_PlaySoundEx("weapon/PirateReload","Body") DKC1 A 0 ACS_NamedExecuteWithResult("VC_SetState",4)
DKC1 A 1 Offset(-5,48)
DKC1 A 1 Offset(4,48)
DKC1 A 1 Offset(-3,48)
DKC1 A 1 Offset(2,48)
DKC1 A 1 Offset(-1,48)
DKC1 A 1 Offset(0,44)
DKC1 A 1 Offset(0,40)
DKC1 A 1 Offset(0,36) A_TakeInventory("UltAttackFlag",1)
Goto Ready2
Flash:
TNT1 A 0 A_JumpIfHealthLower(23,"Threshold4")
TNT1 A 0 A_JumpIfHealthLower(46,"Threshold3")
TNT1 A 0 A_JumpIfHealthLower(69,"Threshold2")
TNT1 A 0 A_JumpIfHealthLower(92,"Threshold1")
Threshold0:
TNT1 A 0 A_GiveInventory("DarkMan1Speed0")
Goto EndCheck
Threshold1:
TNT1 A 0 A_GiveInventory("DarkMan1Speed1")
Goto EndCheck
Threshold2:
TNT1 A 0 A_GiveInventory("DarkMan1Speed2")
Goto EndCheck
Threshold3:
TNT1 A 0 A_GiveInventory("DarkMan1Speed3")
Goto EndCheck
Threshold4:
TNT1 A 0 A_GiveInventory("DarkMan1Speed4")
EndCheck:
TNT1 A 1 A_JumpIfInventory("IsDead",1,"EndFlash")
Goto Flash
EndFlash:
TNT1 A 0
stop
}
}

Actor DarkMan1Speed0 : PowerSpeed
{
	+POWERSPEED.NOTRAIL
	Powerup.Duration 2
	Speed 1.00
}
Actor DarkMan1Speed1 : DarkMan1Speed0 {Speed 1.06}
Actor DarkMan1Speed2 : DarkMan1Speed0 {Speed 1.12}
Actor DarkMan1Speed3 : DarkMan1Speed0 {Speed 1.18}
Actor DarkMan1Speed4 : DarkMan1Speed0 {Speed 1.24}

Actor Dark1Shot
{
Translation "202:202=216:216"
PROJECTILE
DamageType "Darkman1"
Obituary "$OB_DARKMANONE1"
Damage (18)
Radius 10
Height 10
Speed 40
Scale 2.5
Species "Dark1Type"
+THRUSPECIES
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
DARS D 1
wait
}
}

actor DarkRamHitBox : BasicExplosion
{
DamageType "Darkman1Ram"
Obituary "$OB_DARKMANONE2"
States
{
Spawn:
TNT1 A 0
TNT1 A 1
stop
}
}
Actor DarkRamHitbox2 : DarkRamHitbox {damagetype "Darkman1Ram2"}
Actor DarkRamHitbox3 : DarkRamHitbox {damagetype "Darkman1Ram3"}
Actor DarkRamHitbox4 : DarkRamHitbox {damagetype "Darkman1Ram4"}
Actor DarkRamHitbox5 : DarkRamHitbox {damagetype "Darkman1Ram5"}

Actor Darkman1RamProtect : PowerProtection
{
	Powerup.Duration 34
	DamageFactor "Darkman1Ram", 0.0
	DamageFactor "Darkman1Ram2", 0.0
	DamageFactor "Darkman1Ram3", 0.0
	DamageFactor "Darkman1Ram4", 0.0
	DamageFactor "Darkman1Ram5", 0.0
}

Actor DarkRamPickUp : BaseMovement//CustomInventory
{
const int DARK1_RAMSPEED = 20;
States
{
itTimeGo:
TNT1 A 0 A_JumpIfHealthLower(20,"RamSpeed5")
TNT1 A 0 A_JumpIfHealthLower(36,"RamSpeed4")
TNT1 A 0 A_JumpIfHealthLower(52,"RamSpeed3")
TNT1 A 0 A_JumpIfHealthLower(68,"RamSpeed2")
TNT1 A 0 A_JumpIfHealthLower(86,"RamSpeed1")
Goto RamSpeed0
RamSpeed5:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 10)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 10)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed4:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 8)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 8)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed3:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 6)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 6)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed2:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 4)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 4)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed1:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 2)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED + 2)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed0:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob", cos(pitch)*DARK1_RAMSPEED),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob", cos(pitch)*DARK1_RAMSPEED),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
End:
TNT1 A 0 A_TakeInventory("BaseAltfireAmmo",1)
TNT1 A 0 A_GiveInventory("DarkRamPickup2",1)
stop
}
}

Actor DarkRamPickUp2 : CustomInventory
{
States
{
Pickup:
TNT1 A 0
TNT1 A 0 A_JumpIf(CallACS("VC_CheckBtn",1)==17,"JumpLeft")
TNT1 A 0 A_JumpIf(CallACS("VC_CheckBtn",1)==19,"JumpLeft")
TNT1 A 0 A_JumpIf(CallACS("VC_CheckBtn",1)==21,"JumpLeft")
TNT1 A 0 A_JumpIf(CallACS("VC_CheckBtn",1)==9,"JumpRight")
TNT1 A 0 A_JumpIf(CallACS("VC_CheckBtn",1)==11,"JumpRight")
TNT1 A 0 A_JumpIf(CallACS("VC_CheckBtn",1)==13,"JumpRight")
stop

JumpLeft:
TNT1 A 0 A_ChangeVelocity(0,8,0,CVF_RELATIVE)
stop

JumpRight:
TNT1 A 0 A_ChangeVelocity(0,-8,0,CVF_RELATIVE)
stop
}
}

Actor DarkRamPickUpReverse : BaseMovement//CustomInventory
{
const int DARK1_RAMSPEED = -40;
States
{
itTimeGo:
TNT1 A 0
TNT1 A 0 A_JumpIfHealthLower(20,"RamSpeed5")
TNT1 A 0 A_JumpIfHealthLower(36,"RamSpeed4")
TNT1 A 0 A_JumpIfHealthLower(52,"RamSpeed3")
TNT1 A 0 A_JumpIfHealthLower(68,"RamSpeed2")
TNT1 A 0 A_JumpIfHealthLower(86,"RamSpeed1")
Goto RamSpeed0
RamSpeed5:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 10)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 10)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed4:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 8)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 8)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed3:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 6)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 6)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed2:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 4)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 4)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed1:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 2)),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*(DARK1_RAMSPEED - 2)),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
RamSpeed0:
TNT1 A 0 A_CheckFloor(2)
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*DARK1_RAMSPEED),0,momz,CVF_RELATIVE|CVF_REPLACE)
Goto End
TNT1 A 0 A_ChangeVelocity(CallACS("VC_XYMob",cos(pitch)*DARK1_RAMSPEED),0,0,CVF_RELATIVE|CVF_REPLACE)
Goto End
End:
TNT1 A 0 A_TakeInventory("BaseAltfireAmmo",2)
TNT1 A 0 A_GiveInventory("DarkRamPickup2",1)
stop
}
}

Actor Dark1TankHandler : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfHealthLower(2,"MoreKnockback")
TNT1 A 0 A_JumpIfHealthLower(26,"NoPitProtect")
TNT1 A 0 A_SpawnItemEx("DarkRamHitBox",0,0,0,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM|SXF_NOCHECKPOSITION)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",0)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",height/2)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitBox",0,pitch,32,0,2,0,"none",-height/2)

Goto End
NoPitProtect:
TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",0)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",height/2)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox2",0,pitch,32,0,2,0,"none",-height/2)
Goto End
MoreKnockback:
TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",0)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",height/2)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox3",0,pitch,32,0,2,0,"none",-height/2)
End:
TNT1 A 0
stop
}
}

Actor Dark1TankHandler2 : Dark1TankHandler
{
States
{
Pickup:
NoPitProtect:
TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",0)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",height/2)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox4",180,pitch,32,0,2,0,"none",-height/2)
Goto End
MoreKnockback:
TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",0)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",0)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",height/2)

TNT1 A 0 A_RailAttack(30,0,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",-height/2)
TNT1 A 0 A_RailAttack(30,-radius,0,"none","none",RGF_SILENT|RGF_CENTERZ|RGF_EXPLICITANGLE,0,"DarkRamHitbox5",180,pitch,32,0,2,0,"none",-height/2)
End:
TNT1 A 0
stop
}
}

Actor DarkRamExhaust
{
+NOINTERACTION
Height 10
Radius 10
Speed 0
Damage 0
Scale 2.5
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
DKC1 JKLMNOPQ 2
stop
}
}

actor BigPetsSegment
{
PROJECTILE
+SKYEXPLODE
+RIPPER
+DONTREFLECT
DamageType "Darkman1Ult"
Obituary "$OB_DARKMANONE3"
Damage (13)
Height 48
Radius 48
Speed 50
Scale 2.5
Species "Dark1Type"
Decal WallCrack
+THRUSPECIES
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
SGMN TTTTTTTTTTTTTTTTTTTT 1 A_JumpIfInTargetInventory("IsDead",1,"Disappear")
TNT1 A 0 A_CustomMissile("BigPetsSegmentReturn",0,0,0,0)
stop
Death:
TNT1 A 0 A_PlaySoundEx("weapon/BigPetsHit", "Weapon")
TNT1 A 0 A_Quake(3, 15, 0,212)
TNT1 A 0 A_SpawnItemEx("Darkman1UltImpact")
TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("ProtoSlamRocks",random(-20,20),random(-20,20),random(-20,20),random(-30,30),random(-30,30),random(-30,30))
TNT1 A 0 A_CustomMissile("BigPetsSegmentReturn",0,0,0,0)
TNT1 A 15 A_ChangeFlag("NOINTERACTION",1)
stop
Disappear:
TNT1 A 0
stop
}
}

Actor Darkman1UltImpact : BasicClientSide
{
scale 5.0
States
{
Spawn:
TNT1 A 0
KCRB EFG 1 A_PlaySoundEx("weapon/napalmnew", "Body")
TNT1 A 25
stop
}
}

actor BigPetsSegmentReturn : BigPetsSegment
{
Radius 0
Height 0
Damage(0)
+NOCLIP
+NOINTERACTION
states
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
SGMN T 0 A_JumpIfInTargetInventory("IsDead",1,"Vanish")
SGMN T 1 A_SpawnItemEx("BigPetsHitbox",0,0,0,2,0,0)
SGMN T 0 A_JumpIfCloser(128,"End")
SGMN T 1 A_SpawnItemEx("BigPetsHitbox",0,0,0,2,0,0)
SGMN T 0 A_JumpIfCloser(128,"End")
SGMN T 1 A_SpawnItemEx("BigPetsHitbox",0,0,0,2,0,0)
SGMN T 0 A_JumpIfCloser(128,"End")
SGMN T 1 A_SpawnItemEx("BigPetsHitbox",0,0,0,2,0,0)
SGMN T 0 A_JumpIfCloser(128,"End")
SGMN T 0 A_CustomMissile("BigPetsSegmentReturn",0,0,0,0)
stop
End:
TNT1 A 0 A_PlaySoundEx("weapon/adapterreturn","Body")
TNT1 A 0 A_GiveToTarget("BigPetsSegments",1)
Vanish:
TNT1 A 0
stop
}
}

actor BigPetsHitbox
{
PROJECTILE
+SKYEXPLODE
+RIPPER
+DONTREFLECT
DamageType "Darkman1"
Obituary "$OB_DARKMANONE3"
Damage (6)
Height 48
Radius 48
Species "Dark1Type"
+THRUSPECIES
States
{
Spawn:
TNT1 A 0
TNT1 A 1
stop
}
}

actor BigPetsHologram
{
+NOINTERACTION
Height 1
Radius 1
Damage (0)
Speed 0
Scale 2.5
Var Int User_Ofs;
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
TNT1 A 0 A_PlaySoundEx("misc/teleport2","SoundSlot5")
TNT1 A 0 A_SetUserVar("User_Ofs",320)
TNT1 A 1 A_Warp(AAPTR_TARGET,0,0,User_Ofs,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
Spawn2: 
TFOG D 0 A_SetUserVar(User_Ofs,User_Ofs-32)
TFOG D 1 A_Warp(AAPTR_TARGET,0,0,User_Ofs,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
TFOG D 0 A_JumpIf(User_Ofs<=0,"Spawn3")
loop
Spawn3:
TFOG EEFF 1 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
TFOG F 0 A_PlaySoundEx("misc/ERPossess","SoundSlot6")
TFOG F 0 A_SetTranslucent(0.75,0)
BigPets:
BPET S 0 A_TakeFromTarget("MediumShortUltimateAmmo",1)
BPET S 1 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION) BPET S 0 A_JumpIfInTargetInventory("MediumShortUltimateAmmo",1,1) Goto Death BPET S 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
BPET S 1 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION) BPET S 0 A_JumpIfInTargetInventory("MediumShortUltimateAmmo",1,1) Goto Death BPET S 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_TakeFromTarget("MediumShortUltimateAmmo",1)
TNT1 A 1 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION) TNT1 A 0 A_JumpIfInTargetInventory("MediumShortUltimateAmmo",1,1) Goto Death TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 1 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION) TNT1 A 0 A_JumpIfInTargetInventory("MediumShortUltimateAmmo",1,1) Goto Death TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
loop
Death:
TFOG F 0 A_PlaySoundEx("misc/teleport2","SoundSlot5")
TFOG F 0 A_TakeFromTarget("PowerUltBuildCooldown")
TFOG F 0 A_TakeFromTarget("BigPetsSegment")
TFOG F 0 A_SetTranslucent(1.0,0)
TFOD FFEE 2 A_Warp(AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
Death2:
TFOG D 0 A_SetUserVar(User_Ofs,User_Ofs+32)
TFOG D 1 A_Warp(AAPTR_TARGET,0,0,User_Ofs,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
TFOG D 0 A_JumpIf(User_Ofs<=320,"Death3")
loop
Death3:
TNT1 A 0
stop
}
}

Actor BigPetsSegments : Ammo
{
	Inventory.Amount 1
	inventory.MaxAmount 2
}

Actor Darkman1CooldownCheck_CI : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfHealthLower(11,"BusterCoolDown1")
TNT1 A 0 A_JumpIfHealthLower(21,"BusterCoolDown2")
TNT1 A 0 A_JumpIfHealthLower(31,"BusterCoolDown3")
TNT1 A 0 A_JumpIfHealthLower(41,"BusterCoolDown4")
TNT1 A 0 A_JumpIfHealthLower(51,"BusterCoolDown5")
TNT1 A 0 A_JumpIfHealthLower(61,"BusterCoolDown6")
TNT1 A 0 A_JumpIfHealthLower(71,"BusterCoolDown7")
TNT1 A 0 A_JumpIfHealthLower(81,"BusterCoolDown8")
//TNT1 A 0 A_JumpIfHealthLower(91,"BusterCoolDown9")
//BusterCoolDown10: TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown9:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown8:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown7:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown6:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown5:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown4:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown3:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown2:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
BusterCoolDown1:  TNT1 A 0 A_GiveInventory("CutterFlag",2)
Stop
}
}
//Other classes are using these flags.
actor DarkRamCont : Inventory
{
inventory.amount 1
inventory.maxamount 1
}
actor DarkRamFinish : DarkRamCont {}

actor DarkMan1WallRush_CI : CustomInventory
{
states
{
Pickup:
TNT1 A 0 A_JumpIfInventory("NewWallSlam",1,"PickupNo")
TNT1 A 0 A_GiveInventory("NoNewWallSlam",1)
TNT1 A 0 A_GiveInventory("NewWallSlam",1)
TNT1 A 0 A_GiveInventory("WallSlamRealTimer",1)
TNT1 A 0 A_SpawnItemEX("DarkMan1WallRushChecker")
stop
PickupNo:
TNT1 A 0
stop
}
}

actor DarkMan1WallRushChecker : BaseWallRushChecker
{
Obituary "$OB_DARKMANONE2"
states
{
DeathCheck:
TNT1 A 0 //A_JumpIfInventory("NewWallSlam",1,"Death",AAPTR_TRACER)
TNT1 A 0 A_SpawnItemEx("RaThorWallBonk")
TNT1 A 0 A_GiveInventory("WallSlamTimer",1)
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("DarkMan1SlamRocks",random(-8,8),random(-8,8),random(-8,8),random(-8,8),random(-8,8),random(-8,8))
TNT1 A 0 A_Quake(3,10,0,256)
TNT1 A 0 A_PlaySoundEx("misc/quake","Body")
TNT1 A 0 A_PlaySoundEx("weapon/wallrush","Weapon")
TNT1 A 0 A_Warp(AAPTR_TRACER,0,0,CallACS("TracerHeightGet")/2,0,0)
TNT1 A 0 A_Explode(15,12,0,0,12)
TNT1 A 35
Death:
TNT1 A 2 A_GiveInventory("TempPitProtectEnd_P",1,AAPTR_TRACER)
stop
}
}

actor DarkMan1SlamRocks : ThorSlamRocks
{
translation "46:46=[167,193,253]:[167,193,253]", "8:8=[117,117,117]:[117,117,117]"
}