actor Flameman : VCBaseClass
{
	Player.ScoreIcon "FLAMMUGS"
	player.startitem "BaseFlagPack", 1
	player.soundclass "flamemanc"
	Player.ViewHeight 49
	player.displayname "Flameman"
	player.jumpz 12
	player.startitem "FlameBlastBoss"
	player.startitem "UltimateAttackItem1", 1
	player.startitem "UltSoundWatcherSpawn1"
	player.startitem "IsFromMM6"
	States
	{
		Animation2:
		Spawn:
		FLAM A 0
		FLAM B 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM A 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM A 1 A_JumpIf(z-floorz>0, "Jumping")
		Goto Spawn+2
		
		See:
		FLAM B 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM B 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM B 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM B 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM B 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM B 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM B 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM B 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM B 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM B 1 A_JumpIf(z-floorz>0, "Jumping")
		
		FLAM C 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM C 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM C 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM C 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM C 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM C 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM C 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM C 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM C 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM C 1 A_JumpIf(z-floorz>0, "Jumping")
		
		FLAM D 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM D 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM D 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM D 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM D 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM D 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM D 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM D 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM D 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM D 1 A_JumpIf(z-floorz>0, "Jumping")
		
		FLAM E 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM E 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM E 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM E 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM E 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM E 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM E 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM E 1 A_JumpIf(z-floorz>0, "Jumping")
		FLAM E 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM E 1 A_JumpIf(z-floorz>0, "Jumping")
		Goto Spawn
		
		Jumping:
		FLAM I 1 A_JumpIf(z-floorz<=0, "Spawn")
		wait
		
		Missile:
		FLAM F 0 A_JumpIfInventory("FlamePillarAnim",1,"Animation1")
		FLAM F 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM F 1 A_JumpIf(z-floorz>0, "JumpingMissile")
		FLAM F 0 A_JumpIfInventory("FlamePillarAnim",1,"Animation1")
		FLAM F 0 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		FLAM F 1 A_JumpIf(z-floorz>0, "JumpingMissile")		
		
		Missile2:
		FLAM GGGGGGGG 1 A_JumpIf(z-floorz>0, "JumpingMissile2")
		
		Missile3:
		FLAM FF 1 A_JumpIf(z-floorz>0, "JumpingMissile3")
		goto Spawn+2
		
		JumpingMissile:
		FLAM N 0 A_JumpIfInventory("FlameDropAnim",1,"JumpingMissile4")
		FLAM N 1 A_JumpIf(z-floorz<=0, "Missile")
		FLAM N 0 A_JumpIfInventory("FlameDropAnim",1,"JumpingMissile4")
		FLAM N 1 A_JumpIf(z-floorz<=0, "Missile")
		
		JumpingMissile2:
		FLAM JJJJJJJJ 1 A_JumpIf(z-floorz<=0, "Missile2")
		
		JumpingMissile3:
		FLAM NN 1 A_JumpIf(z-floorz<=0, "Missile3")
		goto Jumping
		
		JumpingMissile4:
		FLAM OOOOOOOO 1 A_JumpIf(z-floorz<=0, "Spawn")
		goto Jumping
		
		Animation1:
		FLAM KKLLLLLLLL 1 A_JumpIfInventory("BaseCustomFlag1",1,"Animation3")
		goto Animation3

		Animation3:
		FLAM LMLMLMLM 1
		goto Spawn+2
		
		Animation4:
		FLAM G 4
		FLAM F 3
		FLAM G 4
		FLAM K 28
		goto Jumping
		
		ClassTimeStop:
		PLAY A 0 SetPlayerProperty(0,1,4)
		PLAY A 0 ACS_Execute(528,0)
		FLAM AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_Stop
		PLAY A 0 SetPlayerProperty(0,0,4)
		Goto pain+1
		ClassPain:
		FLAM HHHHHHHHHH 2 A_SpawnItem("PainFX",0,3)
		Goto Spawn+1
		ClassDeath:
		FLAM H 20 ACS_ExecuteAlways(999,0,0)
		FLAM H 0 A_PlayerScream
		NOFX A 0 A_SpawnItemEx("FakeDeathFX",0,0,32)
		NOFX A 1 A_CheckPlayerDone
		wait
		ClassIceDeath:
		FLAM A 35
		NOFX A 0 A_SpawnItemEx("FrozenDeathFX",0,0,16)
		NOFX A 1 A_CheckPlayerDone
		wait
		WeaponGetM:
		CUTM H 0 A_JumpIfInTargetInventory("FlameBlastWepM",1,2)
		CUTM H 0 A_GiveToTarget("WeaponGetter")
		CUTM H 0 A_GiveToTarget("FlameBlastWepM")
		goto ClassDeath
	}
}

actor FlameBlastBoss : VCBaseWeapon
{
weapon.ammotype "Base56Ammo"
Obituary "$OB_FLAMEMAN1"
weapon.ammouse 0
States
{
Ready:
TNT1 A 0
FLAB A 0 A_JumpIfInventory("UltAttackFlag",1,"UltimateAttack")
FLAB A 1 A_WeaponReady
goto Ready

Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
FLAB A 1 A_Lower
Loop

Select:
TNT1 A 0
TNT1 A 0 ACS_ExecuteAlways(991,0,822)
TNT1 A 0 A_GunFlash
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
FLAB A 1 A_Raise
Loop

Fire:
FLAB A 0 A_PlaySoundEx("weapon/flameblastfire","Weapon")
FLAB B 0 A_FireCustomMissile("FlameManShot",0,1,8,0)
FLAB B 1 OffSet(3,35)
FLAB B 2 OffSet(14,47)
FLAB C 2 OffSet(6,38)
FLAB C 1 OffSet(3,35)
FLAB A 18 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
FLAB A 0 A_Refire
goto Ready

AltFire:
RATU A 0 A_JumpIfInventory("NoAltfire",1,"Ready")
FLAB A 0 A_CheckFloor("Altfire.Ground")
FLAB A 0 A_JumpIf(callACS("core_CheckFooting")== 1 || (abs(z-floorz) < 30 && momz <= 0),"Altfire.Ground")
FLAB B 0 A_TakeInventory("JumpCancler")
FANB B 0 A_GiveInventory("FlameDropAnim")
FLAB B 0 A_ChangeVelocity(12,0,6,CVF_REPLACE|CVF_RELATIVE)
FLAB B 0 A_SpawnItemEx("FlameDrop",0,0,20,0,0,-20)
FLAB A 0 A_PlaySoundEx("weapon/flameblastfire","Weapon")
FLAB GFGFGF 1
FLAB GFGFGCA 2
goto Ready

Altfire.Ground:
FANB B 0 A_JumpIfInventory("FlameAltCooldown",1,"Ready")
FANB B 0 A_GiveInventory("FlamePillarAnim")
FANB B 0 ACS_Execute(191,0,APROP_JumpZ,0,1)
FLAB A 0 A_Stop
FLAB A 0 SetPlayerProperty(0,1,0)
FLAB A 0 A_GiveInventory("HalfDamageProtection")
FLAB DEF 1

Altfire.Pillar:
FLAB A 0 A_GiveInventory("CutterFlag",1)
FLAB A 0 A_JumpIfInventory("CutterFlag",3,"AltHold.Last")
FLAB A 0 A_PlaySoundEx("weapon/flamepillar","Weapon")
FLAB A 0 A_SpawnItemEx("FlameStarter",10,0,0,32)
FLAB A 0 A_TakeInventory("Base56Ammo",56)
FLAB A 0 A_GiveInventory("BaseCustomFlag1")
Goto AltHold

AltHold:
FLAB GF 1 A_JumpIfInventory("CutterFlag",3,"AltHold.Last")
FLAB G 0 A_JumpIfInventory("Base56Ammo",56,"Altfire.Pillar")
FLAB G 0 A_GiveInventory("Base56Ammo",3)
DRIL D 0 A_Refire

Alt.Finish:
FLAB C 0 A_TakeInventory("Base56Ammo",56)
FLAB CA 2 A_ClearRefire
FANB B 0 ACS_Execute(191,0,APROP_JumpZ,12,1)
FANB A 0 SetPlayerProperty(0,0,0)
FLAB A 0 A_TakeInventory("HalfDamageProtection")
FLAB C 0 A_TakeInventory("BaseCustomFlag1")
FLAB C 0 A_TakeInventory("CutterFlag",9)
FLAB A 8 A_TakeInventory("Base56Ammo",56)
FLAB A 0 A_GiveInventory("FlameAltCooldown",100)
DRIL D 0 A_TakeInventory("DrillFlag",999)
goto Ready

AltHold.Last:
FLAB A 0 A_PlaySoundEx("weapon/flamepillar","Weapon")
FLAB A 0 A_SpawnItemEx("FlameStarter",10,0,0,32)
FLAB GGGG 1 A_TakeInventory("Base56Ammo",56)
goto Alt.Finish

UltimateAttack:
TNT1 A 0 ACS_NamedExecuteAlways("VC_UltimateText",0,49)
TNT1 A 0 ACS_NamedExecuteWithResult("VC_SetState",4)
TNT1 A 0 A_GiveInventory("UltBuildCooldownGiver",1)
TNT1 A 0 A_ChangeFlag("INVULNERABLE",1)
TNT1 A 0 A_ChangeFlag("THRUSPECIES",1)
TNT1 A 0 A_GiveInventory("InvProtection",1)
TNT1 A 0 A_GiveInventory("NoSpeed",1)
TNT1 A 0 A_SetGravity(0.0)
CUTA A 0 A_PlaySoundEx("classes/ultimateactivation","Auto")
TNT1 A 0 A_SpawnItemEx("MM6UltFXSpawner",0,0,28)
FLAB AAAAAAAAAAAAAAAAAA 1 A_Stop
FLAB B 0 A_TakeInventory("JumpCancler")
FLAB A 0 A_PlaySoundEx("mm6/ult","Auto")
FLAB A 0 A_SpawnItemEx("FlameUltColorWatcher")
FLAB HHHHAAAAAAHHHHAAAA 1 A_Stop
TNT1 A 0 A_TakeInventory("NoSpeed",999)
TNT1 A 0 A_GiveInventory("GravityRestore")
FLAB B 0 A_TakeInventory("JumpCancler")
TNT1 A 0 A_ChangeFlag("INVULNERABLE",0)
TNT1 A 0 A_TakeInventory("InvProtection",1)
FLAB A 0 A_ChangeVelocity(CallACS("VC_XYMob",25.0),0,20,CVF_REPLACE|CVF_RELATIVE)
FLAB B 0 A_TakeInventory("JumpCancler")
FLAB DDD 1 A_SpawnItemEx("FlameManAfterImage")
FLAB B 0 A_TakeInventory("JumpCancler")

Ultimate.AirLoop:
FLAB B 0 A_TakeInventory("JumpCancler")
FLAB D 1 A_SpawnItemEx("FlameManAfterImage")
FLAB A 0 A_CheckFloor(1)
loop
FLAB D 0 A_GunFlash("Flash.Ult")
FLAB D 0 A_GiveInventory("BaseCustomFlag1")
FLAB D 0 A_PlaySoundEx("misc/hugequake3","Weapon")
FLAB D 0 A_Quake(1,12,0,64)
FLAB DEF 1 A_Stop
TNT1 A 0 A_PlaySoundEx("flameman/ult","Body")
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,0)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,22.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,45)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,67.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,90)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,112.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,135)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,157.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,180)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,202.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,225)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,247.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,270)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,292.5)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,315)
TNT1 A 0 A_SpawnItemEx("FlameField",0,0,0,30,0,0,337.5)
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB G 1 Offset(0,40) A_Stop
FLAB F 1 Offset(0,32) A_Stop
FLAB F 0 A_ChangeFlag("THRUSPECIES",0)
FLAB CA 1 A_TakeInventory("BaseCustomFlag1")
FLAB A 0 A_TakeInventory("UltAttackFlag")
goto Ready

Flash.Ult:
TNT1 A 0 A_TakeInventory("FlameAltCooldown",1)
TNT1 A 1 A_TakeInventory("ShortUltimateAmmo",1)
TNT1 A 0 A_JumpIfInventory("ShortUltimateAmmo",1,"Flash.Ult")
TNT1 A 8
TNT1 A 0 A_TakeInventory("PowerUltBuildCooldown",1)
Flash: //Handles altfire cooldown. 
TNT1 A 1 A_TakeInventory("FlameAltCooldown",1)
loop
}
}

actor FlameAltCooldown : Ammo
{
	inventory.amount 1
	inventory.maxamount 100
	+INVENTORY.IGNORESKILL
}

actor FlameManShot
{
Obituary "$OB_FLAMEMAN1"
PROJECTILE
Damage (20)
//-DONTBLAST
damagetype "Flameman"
Height 16
Radius 16
Scale 2.5
Speed 33
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
FBUS AB 2
Goto Spawn+2
Death:
TNT1 A 0 A_SpawnItemEx("OilPitIgnite",0,0,8)
TNT1 A 0 A_CheckFloor("Death2")
FLPB CBA 2
stop
Death2:
FLAB A 0 A_PlaySoundEx("weapon/flamepillar","Weapon")
TNT1 A 1 A_SpawnItemEx("FlameManPillar")
Stop
}
}

actor FlameManPillar
{
translation "52:52=216:216", "225:225=227:227"
Obituary "$OB_FLAMEMAN1"
PROJECTILE
+FLOORHUGGER
-DONTBLAST
+DONTREFLECT
Bouncefactor 0.0
Wallbouncefactor 1.0
damage (14)
damagetype "FlamemanPillar"
scale 2.5
Height 12
Radius 12
reactiontime 10
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode")
FLMB ABCDE 1 A_PlaySoundEx("weapon/waveburner","Body")
FLMB FGFGFGFGFG 1
TNT1 A 0 A_Countdown
goto Spawn+2
Death:
TNT1 A 0
stop
}
}

actor FlameStarter
{
PROJECTILE
+FLOORHUGGER
+RIPPER
-DONTBLAST
+NOEXPLODEFLOOR
+DONTREFLECT
Damage (0)
damagetype "FlamemanBurn"
Height 56
Radius 10
Scale 2.5
Speed 0
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
TNT1 A 0 A_SpawnItemEx("FlameStarter2")
FLMB A 0 A_SpawnItemEx("FlameStarter2",0,-30)
FLMB A 0 A_SpawnItemEx("FlameStarter2",0,30)
TNT1 AAA 1 A_PlaySoundEx("weapon/flamepillar","Body")
FLMB A 0 A_JumpIf(ACS_NamedExecuteWithResult("core_targetexists",0) == 0, "Death")
Goto Spawn+2
Crash:
Death:
TNT1 A 0
Stop
}
}

actor FlameStarter2 : FlameStarter
{
-RIPPER
Obituary "$OB_FLAMEMAN2"
Damage (6)
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
TNT1 A 1 A_SpawnItemEx("OilPitIgnite",0,0,8)
FLPB ABCDEFGFEDCBA 2
TNT1 A 1 A_SpawnItemEx("OilPitIgnite",0,0,8)
stop
Death:
TNT1 A 0
Stop
}
}

actor FlamePillarAnim : Powerup
{
+ADDITIVETIME
Powerup.Duration 5
}

actor FlameDropAnim : Powerup
{
+ADDITIVETIME
Powerup.Duration 5
}

actor FlameDrop
{
Obituary "$OB_FLAMEMAN3"
PROJECTILE
Damage (6)
+RIPPER
-NOGRAVITY
+DONTREFLECT
damagetype "Flameman"
Height 12
Radius 12
Scale 2.5
Speed 20
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
FLMF AB 2
Goto Spawn+2
Death:
TNT1 A 0 A_SpawnItemEx("OilPitIgnite",0,0,8)
TNT1 A 0 A_CheckFloor("Death2")
FLPB CBA 2
stop
Death2:
FLAB A 0 A_PlaySoundEx("weapon/flamepillar","Weapon")
TNT1 A 1 A_SpawnItemEx("FlameDropFlame")
Stop
}
}

actor FlameDropFlame
{
Obituary "$OB_FLAMEMAN3"
+MISSILE
-NOGRAVITY
+RIPPER
+DOOMBOUNCE
-DONTBLAST
+FLOORHUGGER
+DONTREFLECT
Bouncefactor 0.0
Wallbouncefactor 1.0
damage (0)
damagetype "Flameman"
scale 2.5
Height 10
Radius 10
ReactionTime 10
States
{
Spawn:
FLMF CC 0 A_GiveInventory("ProjectileCode",1)
FLMF C 1 A_Explode(3,28,0,0,28)
FLMF FEDFEDFEDFEDFEDFEDFEDFED 3 A_Explode(3,28,0,0,28)
FLMF F 1 A_Explode(3,28,0,0,28)
FLMF HIG 2 A_Explode(3,28,0,0,28)
FLMF JK 1 A_Explode(3,28,0,0,28)
stop
}
}

actor MM6UltFXSpawner : BaseDecorativeActor
{
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,0)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,22.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,45)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,67.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,90)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,112.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,135)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,157.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,180)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,202.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,225)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,247.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,270)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,292.5)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,315)
TNT1 A 0 A_SpawnItemEx("MM6UltFX",500,0,0,-30,0,0,337.5)
stop
}
}

actor MM6UltFX : BaseDecorativeActor
{
States
{
Spawn:
6ULT X 18
stop
}
}

actor FlameField
{
Obituary "$OB_FLAMEMAN4"
PROJECTILE
+FLOORHUGGER
+RIPPER
-DONTBLAST
+DONTREFLECT
damage (1000)
damagetype "FlameUlt"
scale 2.5
Height 16
Radius 24
ReactionTime 12
speed 30
States
{
Spawn:
TNT1 A 0
TNT1 AAAAAA 0 A_SpawnItemEx("FlameFieldFX",0,0,random(0,16),random(-2,2),random(-2,2),random(2,4),0,1)
TNT1 A 1 A_SpawnItemEx("FlameField2",0,random(-64,64),0)
TNT1 A 0 A_Countdown
loop
Death:
TNT1 A 0
stop
}
}

actor FlameField2 : FlameField
{
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
OFLM A 0 A_SpawnItemEx("OilPitIgnite",0,0,8)
OFLM ABCABCABCABCABCABCABC 4 
OFLM ABCABCABC 1 A_FadeOut(0.1)
TNT1 AA 0 A_SpawnItemEx("FlameFieldFX2",0,0,random(0,16),random(-4,4),random(-4,4),random(3,5),0,1)
stop
}
}

actor FlameManAfterImage
{
+NOINTERACTION
-SOLID
+NOGRAVITY
renderstyle stencil
stencilcolor 227 0 0
alpha 0.7
scale 2.5
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
TNT1 A 2
Fade:
FLAM I 1 A_FadeOut(0.1)
loop
}
}

actor FlameUltColorWatcher
{
Height 0
Radius 0
+NOINTERACTION
-SOLID
+NOGRAVITY
+MISSILE
States
{
Spawn:
TNT1 A 0
TNT1 A 4 A_GiveToTarget("TotalWhiteColor")
TNT1 A 6 A_GiveToTarget("FlameManColor")
TNT1 A 4 A_GiveToTarget("TotalWhiteColor")
TNT1 AAA 1 A_GiveToTarget("FlameManColor")
stop
}
}

actor TotalWhiteColor : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
+INVENTORY.AUTOACTIVATE
+COUNTITEM
+INVBAR
states
{
Pickup:
TNT1 A 1 ACS_ExecuteAlways(971,0,1234)
stop
}
}

actor FlameManColor : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
+INVENTORY.AUTOACTIVATE
+COUNTITEM
+INVBAR
states
{
Pickup:
TNT1 A 1 ACS_ExecuteAlways(991,0,822,0)
stop
}
}

actor FlameFieldFX : BaseDecorativeActor
{
PROJECTILE
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
FLMF N 16
FLMF NNNNNNNNN 1 A_FadeOut(0.1)
stop
}
}

actor FlameFieldFX2 : FlameFieldFX
{
States
{
Spawn:
TNT1 AA 0 A_GiveInventory("ProjectileCode",1)
FLMF LMLM 2
stop
}
}

Actor NoSpeed : PowerSpeed
{
	+POWERSPEED.NOTRAIL
	Speed 0.0
	Powerup.Duration 9999
}