actor DangerWrapBoss : BaseMM8BDMWep_CBM
{
tag "$TAGC_7C"
dropitem "DangerWrapWepCDropped"
Weapon.AmmoUse 0
Weapon.AmmoGive 28
Obituary "$OB_DANGERWRAP"
weapon.ammotype1 "BurstBursterBurstestAmmo"
+WEAPON.NOAUTOAIM
States
{
Spawn:
C_07 C 1
loop
Ready:
BURX A 0 ACS_ExecuteAlways(998,0,DYE_BURSTMAN)
BURX A 0 A_GunFlash
goto Ready1
Ready1:
BURX A 0 A_JumpIfInventory("BurstBursterBurstestAmmo",7,"Ready3")
//BURX A 0 //A_JumpIfInventory("BurstBursterBurstestAmmo",2,"Ready2")
BURX A 6 A_WeaponReady(8)//12
BURX A 0 A_JumpIfInventory("BurstTrigger",1,2)
BURX A 0 A_GiveInventory("BurstBursterBurstestAmmo",2)
BURX A 0
loop
Ready2:
BURX A 0 A_JumpIfInventory("BurstBursterBurstestAmmo",7,"Ready3")
BURX A 6 A_WeaponReady(8)
BURX A 0 A_JumpIfInventory("BurstTrigger",1,2)
BURX A 0 A_GiveInventory("BurstBursterBurstestAmmo",2)
BURX A 0
loop
Ready3:
BURX A 6 A_WeaponReady
BURX A 0 A_JumpIfInventory("BurstTrigger",1,2)
BURX A 0 A_GiveInventory("BurstBursterBurstestAmmo",2)
BURX A 0
loop

Deselect:
BURX AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
BURX A 1 A_Lower
Loop
Select:
BURX AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
BURX A 1 A_Raise
Loop

Fire:
BURX A 0 A_PlaySoundEx("weapon/wrapfire","Weapon")
TNT1 A 0 A_JumpIfInventory("BurstBursterBurstestAmmo",2,1)
goto Fire0
BURX B 6 A_GiveInventory("BurstM_FireCheck_P",1)
BURX C 6
BURX A 14
goto Ready1
Fire0:
BURX B 4 A_GiveInventory("BurstM_FireCheck_P",1)
BURX C 4
BURX A 9
goto Ready1

Altfire:
BURX A 0 A_GiveInventory("VivifyDelay5",1)
BURX A 0 A_Refire(1)
BURX A 0 A_TakeInventory("BurstBursterBurstestAmmo",7,1)
BURX A 2 offset(0,42)A_GiveInventory("BurstmanAlt_CI",1)
BURX A 2 offset(0,52)
BURX A 2 offset(0,62)
BURX A 2 offset(0,72)
BURX A 2 offset(0,62)
BURX A 2 offset(0,52)
BURX A 2 offset(0,42)
goto Ready1

Flash:
TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
TNT1 A 0 A_JumpIfInventory("DangerFly",1,"Flash.FlyStart")
TNT1 A 1
loop


Flash.FlyStart:
TNT1 A 0 A_SpawnItemEx("DangerBombTrappedFXWarper",0,0,0,0,0,0,0,1)
goto Flash.Fly
Flash.Fly:
TNT1 A 1 A_GiveInventory("Burstman_FlightThrust_P",1)
TNT1 A 0 A_JumpIfInventory("IsDead",1,"Flash.FlyEnd")
TNT1 A 0 A_JumpIfInventory("BurstItemFire",1,"Flash.FlyEnd")
TNT1 A 0 A_JumpIfInventory("DangerFly",1,"Flash.Fly")
goto Flash.FlyEnd

Flash.FlyEnd:
TNT1 A 0 A_TakeInventory("BurstItemFire",9)
TNT1 A 0 A_TakeInventory("DangerFly",999)
TNT1 A 0 A_SpawnItemEx("DangerTrappedFXPOP",0,0,-32,momx,momy,momz,0,9,0)
TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
TNT1 A 1
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 0 A_JumpIfInventory("IsDead",1,"NoFlash")
TNT1 A 1 A_JumpIfInventory("DangerFly",1,"Flash.FlyStart")
loop
Flash.LandZ:
TNT1 A 1 A_JumpIfInventory("DangerFly",1,"Flash.FlyStart")
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 0 A_TakeInventory("BurstTrigger",99)
goto Flash
}
}

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

actor DangerTrapRecover : Powerup
{
powerup.duration 90
}

actor BurstTrigger : OnceC{}

actor DangerFly : Inventory
{
inventory.amount 1
inventory.maxamount 105
}

actor PowerBurstFlightSpeed : PowerSpeed
{
powerup.duration 3
Speed 2.0
+POWERSPEED.NOTRAIL
}

actor BurstBombStock : Inventory
{
inventory.amount 1
inventory.maxamount 3
}

actor BurstItemFire : Powerup
{
Powerup.Duration 3
}
actor BurstItemFireD : Powerup
{
+INVENTORY.ADDITIVETIME
Powerup.Duration 3
}

actor BurstStockItem : BasicClassItem
{
inventory.icon "BursIcon"
inventory.pickupmessage "Bombs, bombers, bombests, you want it it your's my friend as long as you have enough screws."
Tag "Burst Stock Trigger"
states
{
Spawn:
BURX Z 1
loop
Use:
TNT1 A 0 A_JumpIfInventory("DangerFly",1,"Use3")
TNT1 A 0 A_JumpIfInventory("BurstItemFireD",1,"No")
TNT1 A 0 A_JumpIfInventory("BurstBombStock",1,"Use2")
goto Use1//fail
Use1:
TNT1 A 0 A_PlaySoundEx("weapon/crashland","SoundSlot7")
TNT1 A 0 A_GiveInventory("BurstBombStock",2)
TNT1 A 0 A_GiveInventory("BurstItemFireD_RC",1)
fail
Use2:
TNT1 A 0 A_PlaySoundEx("weapon/crashland","SoundSlot7")
TNT1 A 0 A_TakeInventory("BurstBombStock",1)
TNT1 A 0 A_GiveInventory("BurstItemFireD_RC",1)
fail
Use3:
TNT1 A 0 A_GiveInventory("BurstItemFire",1)
fail
}
}


actor BurstM_FireCheck_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_JumpIfInventory("BurstBombStock",2,"Fire1C")
TNT1 A 0 A_JumpIfInventory("BurstBombStock",1,"Fire2C")
goto Fire3C
Fire1C:
TNT1 A 0 A_JumpIfInventory("BurstBursterBurstestAmmo",2,"Fire1")
goto Fire0
Fire2C:
TNT1 A 0 A_JumpIfInventory("BurstBursterBurstestAmmo",5,"Fire2")
goto Fire1C
Fire3C:
TNT1 A 0 A_JumpIfInventory("BurstBursterBurstestAmmo",10,"Fire3")
goto Fire2C
Fire0:
TNT1 A 0 A_GiveInventory("BurstmanMain0_CI",1)
stop
Fire1:
TNT1 A 0 A_TakeInventory("BurstBursterBurstestAmmo",2,1)
TNT1 A 0 A_GiveInventory("BurstmanMain1_CI",1)
stop
Fire2:
TNT1 A 0 A_TakeInventory("BurstBursterBurstestAmmo",5,1)
TNT1 A 0 A_GiveInventory("BurstmanMain2_CI",1)
stop
Fire3:
TNT1 A 0 A_TakeInventory("BurstBursterBurstestAmmo",10,1)
TNT1 A 0 A_GiveInventory("BurstmanMain3_CI",1)
stop
}
}

actor BurstItemFireD_RC : CustomInventory
{
States
{
Pickup:
TNT1 A 0
TNT1 A 0 A_JumpIfInventory("PowerRage_ST",1,"PickupR")
TNT1 A 0 A_GiveInventory("BurstItemFireD",1)
goto PickupR
PickupR:
TNT1 A 0 A_GiveInventory("BurstItemFireD",2)
stop
}
}

actor Burstman_FlightThrust_P : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_GiveInventory("BurstTrigger",1)
TNT1 A 0 A_TakeInventory("DangerFly",1)
TNT1 A 0 A_JumpIf(z-floorz==0,"P_SpeedDown")
TNT1 A 0 A_JumpIf(momz==0,"P_SpeedDown")
goto P_SpeedUp
P_SpeedUp:
TNT1 A 0 A_GiveInventory("PowerBurstFlightSpeed",1)
goto P_ThrustCheck
P_SpeedDown:
TNT1 A 0 A_TakeInventory("PowerBurstFlightSpeed",1)
goto P_ThrustCheck
P_ThrustCheck:
TNT1 A 0 A_JumpIfInventory("FlightDisableFlag",1,"No")
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(C_JAX_CHECK_JUMP)==1,"P_ThrustUp")
goto P_ThrustDown
P_ThrustUp:
TNT1 A 0 ThrustThingz(0,13,0,0)
stop
P_ThrustDown:
TNT1 A 0 ThrustThingz(0,13,1,0)
stop
No:
TNT1 A 0
stop
}
}


actor BurstDangerWrap0
{
Translation "192:192=218:218"
PROJECTILE
damagetype "BurstM_Shot"
Obituary "$OB_DANGERBUBBLE"
+SKYEXPLODE
+EXPLODEONWATER
Damage (90)
Radius 16
Height 10
Speed 20
scale 2.5
States
{
Spawn:
BURX H 0
BURX HI 5
BURX HJ 5 ThrustThingZ(0,10,0,1)
Spawn2:
BURX HIHJ 5 ThrustThingZ(0,10,0,1)
loop
Death:
BURX T 2
stop
}
}

actor BurstDangerWrap0B : BurstDangerWrap0{translation "192:192=205:205"}
actor BurstDangerWrap0R : BurstDangerWrap0{translation "192:192=171:171"}
actor BurstDangerWrap0O : BurstDangerWrap0{translation "192:192=104:104"}
actor BurstDangerWrap0P : BurstDangerWrap0{translation "192:192=229:229"}

actor BurstDangerWrap
{
Translation "192:192=218:218","198:198=73:73","202:202=210:210"
PROJECTILE
damagetype "BurstM_Boom"
Obituary "$OB_DANGERWRAP"
+SKYEXPLODE
+EXPLODEONWATER
Damage (0)
Radius 16
Height 10
Speed 20
scale 2.5
States
{
Spawn:
BURX K 0
BURX KL 5
BURX KM 5 ThrustThingZ(0,6,0,1)
Spawn2:
BURX KLKM 5 ThrustThingZ(0,6,0,1)
loop

Death:
BURX T 0 A_JumpIf(z-ceilingz==0-10,"SpawnMineCeiling")
BURX T 0 A_JumpIf(z-floorz==0,"SpawnMine")
BURX T 2 A_SpawnItemEx("BurstDangerWrapMineT1",0,0,0,0,0,3,0,1)
stop

Crash:
XDeath:
BURX T 0 A_SpawnItemEx("BurstDangerWrapBoom",0,0,5,0,0,0,0,1)
BURX T 2
stop

SpawnMine:
BURX T 2 A_SpawnItemEx("BurstDangerWrapMine",0,0,0,0,0,8,0,1)
stop
SpawnMineCeiling:
BURX T 2 A_SpawnItemEx("BurstDangerWrapMineT1",0,0,-13,0,0,0,0,1)
stop
}
}


actor BurstDangerWrapB : BurstDangerWrap{translation "192:192=205:205","198:198=74:74","202:202=205:205"}
actor BurstDangerWrapR : BurstDangerWrap{translation "192:192=171:171","198:198=41:41","202:202=171:171"}
actor BurstDangerWrapO : BurstDangerWrap{translation "192:192=104:104","198:198=128:128","202:202=104:104"}
actor BurstDangerWrapP : BurstDangerWrap{translation "192:192=229:229","198:198=232:232","202:202=229:229"}

actor BurstDangerWrap2 : BurstDangerWrap
{
States
{
Spawn:
BURX N 0
BURX NO 5
BURX NP 5 ThrustThingZ(0,2,0,1)
Spawn2:
BURX NONP 5 ThrustThingZ(0,2,0,1)
loop

Death:
BURX T 0 A_JumpIf(z-ceilingz==0-10,"SpawnMineCeiling")
BURX T 0 A_JumpIf(z-floorz==0,"SpawnMine")
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT2",0,0,0,5,0,3,random(0,359),1)
BURX T 2 A_SpawnItemEx("BurstDangerWrapMineT1",0,0,0,0,0,3,0,1)
stop

Crash:
XDeath:
BURX T 0 A_SpawnItemEx("BurstDangerWrapMine2",0,0,0,5,0,8,random(0,359),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapBoom",0,0,5,0,0,0,0,1)
BURX T 2
stop

SpawnMine:
BURX T 0 A_SpawnItemEx("BurstDangerWrapMine2",0,0,0,5,0,8,random(0,359),1)
BURX T 2 A_SpawnItemEx("BurstDangerWrapMine",0,0,0,0,0,8,0,1)
stop
SpawnMineCeiling:
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT2",0,0,-13,5,0,0,random(0,359),1)
BURX T 2 A_SpawnItemEx("BurstDangerWrapMineT1",0,0,-13,0,0,0,0,1)
stop
}
}


actor BurstDangerWrap2B : BurstDangerWrap2{translation "192:192=205:205","198:198=74:74","202:202=205:205"}
actor BurstDangerWrap2R : BurstDangerWrap2{translation "192:192=171:171","198:198=41:41","202:202=171:171"}
actor BurstDangerWrap2O : BurstDangerWrap2{translation "192:192=104:104","198:198=128:128","202:202=104:104"}
actor BurstDangerWrap2P : BurstDangerWrap2{translation "192:192=229:229","198:198=232:232","202:202=229:229"}

actor BurstDangerWrap3 : BurstDangerWrap
{
States
{
Spawn:
BURX Q 0
BURX QR 5
BURX QS 5 ThrustThingZ(0,-2,0,1)
Spawn2:
BURX QRQS 5 ThrustThingZ(0,-2,0,1)
loop

Death:
BURX T 0 A_JumpIf(z-ceilingz==0-10,"SpawnMineCeiling")
BURX T 0 A_JumpIf(z-floorz==0,"SpawnMine")
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT3",0,0,0,5,0,3,random(0,179),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT2",0,0,0,5,0,3,random(180,359),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT1",0,0,0,0,0,3,0,1)
BURX T 2
stop

Crash:
XDeath:
BURX T 0 A_SpawnItemEx("BurstDangerWrapMine3",0,0,0,5,0,8,random(0,179),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapMine2",0,0,0,5,0,8,random(180,359),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapBoom",0,0,5,0,0,0,0,1)
BURX T 2
stop

SpawnMine:
BURX T 0 A_SpawnItemEx("BurstDangerWrapMine3",0,0,0,5,0,8,random(0,179),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapMine2",0,0,0,5,0,8,random(180,359),1)
BURX T 2 A_SpawnItemEx("BurstDangerWrapMine",0,0,0,0,0,8,0,1)
stop
SpawnMineCeiling:
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT3",0,0,-13,5,0,0,random(0,179),1)
BURX T 0 A_SpawnItemEx("BurstDangerWrapMineT2",0,0,-13,5,0,0,random(180,359),1)
BURX T 2 A_SpawnItemEx("BurstDangerWrapMineT1",0,0,-13,0,0,0,0,1)
stop
}
}

actor BurstDangerWrap3B : BurstDangerWrap3{translation "192:192=205:205","198:198=74:74","202:202=205:205"}
actor BurstDangerWrap3R : BurstDangerWrap3{translation "192:192=171:171","198:198=41:41","202:202=171:171"}
actor BurstDangerWrap3O : BurstDangerWrap3{translation "192:192=104:104","198:198=128:128","202:202=104:104"}
actor BurstDangerWrap3P : BurstDangerWrap3{translation "192:192=229:229","198:198=232:232","202:202=229:229"}

actor BurstmanBubblePopDeath_H : BasicHelper
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("BurstDangerWrapMine3",0,0,4,5,0,8,random(0,179),1)
TNT1 A 0 A_SpawnItemEx("BurstDangerWrapMine2",0,0,4,5,0,8,random(180,359),1)
TNT1 A 0 A_SpawnItemEx("BurstDangerWrapMine",0,0,4,0,0,8,0,1)
TNT1 A 2
stop
}
}


actor BurstDangerWrapMine
{
PROJECTILE
damagetype "BurstM_Boom"
Obituary "$OB_DANGERWRAP"
-NOGRAVITY
+THRUACTORS
+BOUNCEONFLOORS
+BOUNCEONWALLS
+BOUNCEONCEILINGS
bouncefactor 0.5
wallbouncefactor 0.85
bouncecount 4
reactiontime 1
damage (20)
Radius 15
Height 12
speed 10
scale 2.5
States
{
Spawn:
BURX U 0
BURX U 0 A_JumpIf(Pitch>=2,"Spawn1")
BURX U 0 A_SetPitch(pitch+1)
BURX UUUVVV 1
loop
Spawn1:
BURX U 0 A_ChangeFlag("THRUACTORS",0)
BURX U 0 A_JumpIf(Pitch>=10,"Spawn2")
BURX U 0 A_SetPitch(pitch+1)
BURX UUUVVV 1
goto Spawn1+1
Spawn2:
BURX U 0 A_JumpIf(Pitch>=15,"Spawn3a")
BURX U 0 A_SetPitch(pitch+1)
BURX UUVVUU 1
BURX V 0 A_JumpIf(Pitch>=15,"Spawn3b")
BURX V 0 A_SetPitch(pitch+1)
BURX VVUUVV 1
loop
Spawn3a:
BURX U 0 A_JumpIf(Pitch>=20,"SuperDeathU")
BURX U 0 A_SetPitch(pitch+1)
BURX UVUVUV 1
loop
Spawn3b:
BURX V 0 A_JumpIf(Pitch>=20,"SuperDeathV")
BURX V 0 A_SetPitch(pitch+1)
BURX VUVUVU 1
loop

SpawnX:
BURX W 0
BURX W 0 A_JumpIf(Pitch>=2,"SpawnX1")
BURX W 0 A_SetPitch(pitch+1)
BURX WWWXXX 1
loop
SpawnX1:
BURX W 0 A_ChangeFlag("THRUACTORS",0)
BURX W 0 A_JumpIf(Pitch>=10,"SpawnX2")
BURX W 0 A_SetPitch(pitch+1)
BURX WWWXXX 1
goto SpawnX1+1
SpawnX2:
BURX W 0 A_JumpIf(Pitch>=15,"SpawnX3a")
BURX W 0 A_SetPitch(pitch+1)
BURX WWXXWW 1
BURX X 0 A_JumpIf(Pitch>=15,"SpawnX3b")
BURX X 0 A_SetPitch(pitch+1)
BURX XXWWXX 1
loop
SpawnX3a:
BURX W 0 A_JumpIf(Pitch>=20,"SuperDeathW")
BURX W 0 A_SetPitch(pitch+1)
BURX WXWXWX 1
loop
SpawnX3b:
BURX X 0 A_JumpIf(Pitch>=20,"SuperDeathX")
BURX X 0 A_SetPitch(pitch+1)
BURX XWXWXW 1
loop

SuperDeathU:
BURX U 1 A_CountDown
wait
SuperDeathV:
BURX V 1 A_CountDown
wait
SuperDeathW:
BURX W 1 A_CountDown
wait
SuperDeathX:
BURX X 1 A_CountDown
wait

SpawnMine:
TNT1 A 0 A_JumpIf(Pitch>=20,"XDeath")
TNT1 A 0 A_JumpIf(Mass==101,"SpawnMineX")
TNT1 A 0 A_SpawnItemEx("BurstDangerWrapMineLand",0,0,0,0,0,0,0,513)
stop
SpawnMineX:
TNT1 A 0 A_JumpIf(Pitch>=20,"XDeath")
TNT1 A 0 A_SpawnItemEx("BurstDangerWrapMineLand2",0,0,0,0,0,0,0,513)
stop

Death:
TNT1 A 0 A_JumpIf(z-floorz==0,"SpawnMine")
goto XDeath
Crash:
XDeath:
TNT1 A 0 A_Stop
TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
TNT1 A 4 A_SpawnItemEx("BurstDangerWrapBoom22",0,0,5,0,0,0,0,1)
stop
}
}

actor BurstDangerWrapMine2 : BurstDangerWrapMine
{
Mass 101
States
{
Spawn:
BURX W 0
goto SpawnX
}
}

actor BurstDangerWrapMine3 : BurstDangerWrapMine
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_Jump(256,1,2)
BURX U 0
goto Super::Spawn
BURX W 0 A_SetMass(101)
goto SpawnX
}
}

actor BurstDangerWrapMineT1 : BurstDangerWrapMine
{
-THRUACTORS
}
actor BurstDangerWrapMineT2 : BurstDangerWrapMine2
{
-THRUACTORS
}
actor BurstDangerWrapMineT3 : BurstDangerWrapMine3
{
-THRUACTORS
}


actor BurstDangerWrapMineLand : BurstDangerWrapMine
{
-THRUACTORS
-BOUNCEONWALLS
-BOUNCEONCEILINGS
speed 0
States
{
Spawn:
BURX U 0
goto Spawn1+1

Death:
TNT1 A 0
goto XDeath
}
}

actor BurstDangerWrapMineLand2 : BurstDangerWrapMineLand
{
States
{
Spawn:
BURX W 0
goto SpawnX1+1
}
}

actor BurstDangerWrapBoom : BasicExplosion
{
damagetype "BurstM_Boom"
Obituary "$OB_DANGERWRAP"
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_Y",0,0,5,0,0,0,0,1+32)
TNT1 A 0 A_PlaySoundEx("weapon/BurstExplode","Weapon")
TNT1 A 4 A_Explode(250,128,0,0,24)
stop
}
}
actor BurstDangerWrapBoom22 : BurstDangerWrapBoom
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("BasicBoom5FX_Y",0,0,3,0,0,0,0,1+32)
TNT1 A 0 A_PlaySound("weapon/BurstExplode",1,0.8)
TNT1 A 4 A_Explode(220,128,0,0,24)
stop
}
}

actor DangerBubbleSpawner : FastProjectile
{
Translation "192:192=218:218", "198:198=73:73"
+RIPPER
+DONTBLAST
+THRUGHOST
+SKYEXPLODE
+EXPLODEONWATER
+DONTREFLECT
reactiontime 5
damage (0)
radius 8
height 16
speed 1000
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_CountDown
loop
Death:
TNT1 A 0 A_SpawnItemEx("DangerTrapHelpX0",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerBubbleSpawnerB : DangerBubbleSpawner{translation "192:192=205:205","198:198=74:74"}
actor DangerBubbleSpawnerR : DangerBubbleSpawner{translation "192:192=171:171","198:198=41:41"}
actor DangerBubbleSpawnerO : DangerBubbleSpawner{translation "192:192=104:104","198:198=128:128"}
actor DangerBubbleSpawnerP : DangerBubbleSpawner{translation "192:192=229:229","198:198=232:232"}

actor DangerTrapHelpX0
{
PROJECTILE
+FLOORHUGGER
+DONTBLAST
+THRUACTORS
Damage (0)
Radius 8
Height 16
States
{
Spawn:
TNT1 A 0
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("DangerTrapHelpX1",0,0,0,0,0,0,0,1)
stop
Death:
TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX1",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerTrapHelpX1 : DangerTrapHelpX0
{
-FLOORHUGGER
Radius 32
Height 32
States
{
Spawn:
TNT1 A 0
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("DangerTrap",0,0,0,0,0,0,0,1)
stop
Death:
TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX2",-4,0,0,0,0,0,0,1)
stop
}
}
actor DangerTrapHelpX2 : DangerTrapHelpX1
{
States
{
Death:
TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX3",-4,0,0,0,0,0,0,1)
stop
}
}
actor DangerTrapHelpX3 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX4",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX4 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX5",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX5 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX6",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX6 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX7",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX7 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX8",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX8 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX9",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX9 : DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX10",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX10: DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX11",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX11: DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX12",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX12: DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX13",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX13: DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX14",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX14: DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrapHelpX15",-4,0,0,0,0,0,0,1)stop}}
actor DangerTrapHelpX15: DangerTrapHelpX1{States{Death:TNT1 A 1 A_SpawnItemEx("DangerTrap",-4,0,0,0,0,0,0,1)stop}}


actor DangerTrap
{
PROJECTILE
Obituary "$OB_DANGERTRAP"
damagetype "BurstM_Trap"
+FORCEYBILLBOARD
//+NOINTERACTION
+DONTBLAST
+RIPPER
//+FLOORHUGGER

damage (0)
radius 32
height 32
scale 2.0
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_PlaySound("weapon/BurstBubAppear",5,1.0)
TNT1 A 1 A_JumpIfCloser(16,"Fly")
BMBU AAAAAA 1 A_JumpIfCloser(16,"Fly")
TNT1 A 0 A_SpawnItemEx("DangerTrap0",0,0,0,0,0,0,0,1)
stop
Death:
BMBU C 3
stop
Fly:
TNT1 A 1 A_GiveToTarget("DangerFly",110)
stop
}
}

actor DangerTrap0 : DangerTrap
{
//-FLOORHUGGER

scale 2.5
radius 32
height 32
States
{
Spawn:
BMBU A 0
BMBU A 0 ThrustThingZ(0,11,0,0)
BMBU AAAAAA 1 A_JumpIfCloser(20,"Fly")
TNT1 A 0 A_SpawnItemEx("DangerTrap1",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerTrap1 : DangerTrap0
{
//-NOINTERACTION
-RIPPER
damage (100)

scale 3.0
radius 32
height 32
States
{
Spawn:
BMBU B 0
BMBU B 0 ThrustThingZ(0,9,0,0)
BMBU BBBBBB 1 A_JumpIfCloser(24,"Fly")
TNT1 A 0 A_SpawnItemEx("DangerTrap2",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerTrap2 : DangerTrap1
{
scale 3.5
radius 32
height 32
States
{
Spawn:
BMBU B 0
BMBU B 0 ThrustThingZ(0,7,0,0)
BMBU BBBBBB 1 A_JumpIfCloser(28,"Fly")
TNT1 A 0 A_SpawnItemEx("DangerTrap3",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerTrap3 : DangerTrap2
{
scale 4.0
radius 32
height 32
States
{
Spawn:
BMBU B 0
BMBU B 0 ThrustThingZ(0,5,0,0)
BMBU BBBBBB 1 A_JumpIfCloser(32,"Fly")
TNT1 A 0 A_SpawnItemEx("DangerTrap4",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerTrap4 : DangerTrap3
{
scale 4.5
radius 32
height 36
States
{
Spawn:
BMBU B 0
BMBU B 0 ThrustThingZ(0,3,0,0)
BMBU BBBBBB 1 A_JumpIfCloser(36,"Fly")
TNT1 A 0 A_SpawnItemEx("DangerTrap5",0,0,0,0,0,0,0,1)
stop
}
}

actor DangerTrap5 : DangerTrap4
{
scale 5.0
radius 32
height 40
States
{
Spawn:
BMBU B 0
BMBU B 0 //A_LOG("DangerTrap5")
Spawn2:
BMBU B 0 ThrustThingZ(0,1,0,1)
BMBU B 1 A_JumpIfCloser(40,"Fly")
loop
}
}

actor DangerTrapped : BasicHelper
{
var int user_anim;
reactiontime 50
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SetUserVar("user_anim",random(1,11))
TNT1 A 0 //A_SetArg(1,random(1,11))
TNT1 A 0 A_JumpIfInTargetInventory("DangerTrapRecover",1,"Death")
TNT1 A 0 A_GiveToTarget("DangerTrapRecover",1)
TNT1 A 0 A_TakeFromTarget("EndBossFlashStoppered",1)
goto Spawn2
Spawn2:
TNT1 A 0 A_JumpIf(user_anim>=4,"Spawn3")
TNT1 A 0 A_JumpIfInTargetInventory("EndBossFlashStoppered",1,"Death")
TNT1 A 1 A_GiveToTarget("DangerTrappedRise",1)
TNT1 A 0 A_CountDown
TNT1 A 0 A_SetUserVar("user_anim",user_anim+1)
loop
Spawn3:
TNT1 A 0 A_JumpIf(user_anim>=8,"Spawn4")
TNT1 A 0 A_JumpIfInTargetInventory("EndBossFlashStoppered",1,"Death")
TNT1 A 1 A_GiveToTarget("DangerTrappedRise2",1)
TNT1 A 0 A_CountDown
TNT1 A 0 A_SetUserVar("user_anim",user_anim+1)
loop
Spawn4:
TNT1 A 0 A_JumpIf(user_anim>=12,"Spawn5")
TNT1 A 0 A_JumpIfInTargetInventory("EndBossFlashStoppered",1,"Death")
TNT1 A 1 A_GiveToTarget("DangerTrappedRise3",1)
TNT1 A 0 A_CountDown
TNT1 A 0 A_SetUserVar("user_anim",user_anim+1)
loop
Spawn5:
TNT1 A 0 A_SetUserVar("user_anim",0)
goto Spawn2
Death:
TNT1 A 1 A_GiveToTarget("DangerTrappedPop",1)
stop
}
}

actor DangerTrappedRise : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_ChangeVelocity(0,0,2,CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("DangerTrappedFX",0,0,0,momx,momy,momz,0,9,0)
stop
}
}

actor DangerTrappedRise2 : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_ChangeVelocity(0,0,2,CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("DangerTrappedFX2",0,0,0,momx,momy,momz,0,9,0)
stop
}
}

actor DangerTrappedRise3 : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_ChangeVelocity(0,0,2,CVF_REPLACE)
TNT1 A 0 A_SpawnItemEx("DangerTrappedFX3",0,0,0,momx,momy,momz,0,9,0)
stop
}
}

actor DangerTrappedPop : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEx("DangerTrappedFXPOP",0,0,-32,momx,momy,momz,0,9,0)
stop
}
}

actor DangerTrappedFX : BasicClientSide
{
+NOTIMEFREEZE
States
{
Spawn:
BMBU D 0
BMBU D 1
stop
}
}

actor DangerTrappedFX2 : BasicClientSide
{
+NOTIMEFREEZE
States
{
Spawn:
BMBU E 0
BMBU E 1
stop
}
}

actor DangerTrappedFX3 : BasicClientSide
{
+NOTIMEFREEZE
States
{
Spawn:
BMBU F 0
BMBU F 1
stop
}
}


actor DangerBombTrappedFXWarper : ShieldWarper_CBM
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 ACS_NamedExecuteAlways("cbm_clientwarper",0,73)
TNT1 A 0 A_Warp(AAPTR_TARGET,0,0,0,0,24)
Goto Shield
Shield:
BMBU D 0 A_JumpIfInTargetInventory("PowerRage_ST",1,3)
BMBU DDDD 1 A_Warp(AAPTR_TARGET,0,0,0,0,24)
BMBU E 0 A_JumpIfInTargetInventory("PowerRage_ST",1,3)
BMBU EEEE 1 A_Warp(AAPTR_TARGET,0,0,0,0,24)
BMBU F 0 A_JumpIfInTargetInventory("PowerRage_ST",1,3)
BMBU FFFF 1 A_Warp(AAPTR_TARGET,0,0,0,0,24)
loop
}
}

actor DangerTrappedFXPop : BasicExplosion
{
Translation "192:192=4:4"
scale 5.0
States
{
Spawn:
BMBU G 0
BMBU G 1 A_PlaySoundEx("classes/burstpop","Weapon")
stop
}
}


actor BurstmanMain0_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap0",0,1,-8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap0B",0,1,-8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap0R",0,1,-8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap0O",0,1,-8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap0P",0,1,-8,0)
goto Done
}
}

actor BurstmanMain1_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap",0,1,-8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrapB",0,1,-8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrapR",0,1,-8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrapO",0,1,-8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrapP",0,1,-8,0)
goto Done
}
}

actor BurstmanMain2_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap2",0,1,-8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap2B",0,1,-8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap2R",0,1,-8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap2O",0,1,-8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap2P",0,1,-8,0)
goto Done
}
}

actor BurstmanMain3_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap3",0,1,-8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap3B",0,1,-8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap3R",0,1,-8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap3O",0,1,-8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("BurstDangerWrap3P",0,1,-8,0)
goto Done
}
}

actor BurstmanAlt_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("DangerBubbleSpawner",0,0,0,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("DangerBubbleSpawnerB",0,0,0,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("DangerBubbleSpawnerR",0,0,0,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("DangerBubbleSpawnerO",0,0,0,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("DangerBubbleSpawnerP",0,0,0,0)
goto Done
}
}
