actor Galaxyman : LightClassBase
{
Player.ScoreIcon "C_09H0X"
player.displayname "Galaxyman"
player.soundclass "galaxymanc"
player.startitem "LightHealthBar"
player.startitem "BlackholebombBoss"
player.startitem "BlackHoleBombBossAmmo", 28
player.startitem "PortalItem",1

player.startitem "ConcreteShotWeakness2", 1

player.startitem "SuperArmWeakness", 1
player.startitem "HardKnuckleWeakness", 1
player.startitem "PowerStoneWeakness", 1
player.startitem "AstroCrushWeakness", 1
player.startitem "SpreadDrillWeakness", 1
player.startitem "ConcreteShotWeakness", 1
States
{
Spawn:
GALX A 0
GALX B 1 A_JumpIfInventory("GalaxyAltFlag",1,"Woosh")
GALX A 1 A_JumpIfInventory("GalaxyAltFlag",1,"Woosh")
Goto Spawn+2
See:
GALX BCDE 5 
Goto Spawn
Missile:
GALX F 1
GALX F 0 A_JumpIfInventory("GalaxyAltFlag",1,"Woosh")
GALX F 4
GALX G 4 
goto Spawn
Woosh:
GALX BCDE 4
GALX E 2 A_JumpIfInventory("GalaxyAltFlag",1,"Woosh")
goto Spawn
ClassPain:
GALX H 0
goto PainContinue
DeathFix:
GALX H 0 A_GiveInventory("SpecialDeathFlag")
goto DeathContinue
ClassDeath:
GALX H 0
GALX H 0 A_JumpIfInventory("InstagibFlag",1,"MegaDeathEnd")
GALX H 0 A_JumpIfInventory("GalaxyAltFlag",1,"ClassDeathX")
GALX H 0 A_JumpIfInventory("RiseDeathFlag",1,"RiseDeath")
GALX H 0 A_JumpIfInventory("IceDeathFlag",1,"IceDeath")
GALX H 19
GALX H 0 A_PlaySoundEx("*death","Voice")
GALX H 0 A_SpawnItemEx("TFakeDeathFX",0,0,32,0,0,0,0,1)
goto DeathWait
ClassDeathX:
GALX Z 0 A_JumpIfInventory("IceDeathFlag",1,"ClassDeathI")
GALX Z 0 A_PlaySoundEx("weapon/junkend","Voice")
GALX Z 0 A_JumpIfInventory("RiseDeathFlag",1,"ClassDeathR")
GALX Z 1 A_SpawnItemEx("GalaxymanBoomGibs",0,0,0,momx,momy,momz+5,0,9,0)
goto DeathWait
ClassDeathI:
GALX Z 1 A_SpawnItemEx("GalaxymanIceGibs",0,0,0,momx,momy,momz+5,0,8,0)
goto DeathWait
ClassDeathR:
GALX Z 1 A_SpawnItemEx("GalaxymanRiseGibs",0,0,0,momx*0.5,momy*0.5,momz+5,0,9,0)
GALX Z 0 A_Stop
goto DeathWait
}
}


actor GalaxymanBoomGibs
{
+MISSILE
+THRUACTORS
+NOBLOCKMAP
-SOLID
Damage(0)
Gravity 0.8
radius 16
height 56
renderstyle translucent
scale 2.5
States
{
Spawn:
GALX X 1
loop
Death:
TNT1 A 0 A_Stop
TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
TNT1 A 0 A_PlaySoundEx("misc/devildeath","Body")
TNT1 A 4 A_SpawnItemEx("TFakeDeathFX",0,0,32,0,0,0,0,1)
stop
}
}

actor GalaxymanRiseGibs : GalaxymanBoomGibs
{
+NOGRAVITY
+SKYEXPLODE
ReactionTime 7
States
{
Spawn:
GALX XXXXX 1 ThrustThingZ(0,4,0,1)
GALX X 0 A_CountDown
loop
}
}

actor GalaxymanIceGibs : GalaxymanBoomGibs
{
Translation "192:192=4:4", "198:198=201:201", "3:8=72:72", "243:247=72:72", "208:215=4:4", "202:202=4:4", "199:199=201:201", "204:204=4:4", "195:195=201:201"
States
{
Spawn:
GALX X 0
GALX X 0 A_PlaySoundEx("CBM/freeze","Body")
GALX X 1 A_SpawnItemEx("FrozenDeathBitFX",frandom(16,48),0,fRandom(16,48),0,0,0,random(0,359))
goto Spawn+2
Death:
TNT1 A 0 A_Stop
TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
TNT1 A 0 A_PlaySoundEx("CBM/icebreak","Body")
TNT1 A 4 A_SpawnItemEx("FrozenDeathFXC",0,0,0)
stop
}
}