ACTOR PhaseFamine : Famine 27322
{
//Creator: Titanium (I think)
//Origin: Nexus Aprilfools
//Sprite: PHFM
//Title: "Phase Famine"
  PainChance 30
  Health 1250
  Speed 24
  BloodColor "51 07 94"
  DamageFactor "Acid", 0.3
  DamageFactor "Poison", 0.0
  DamageFactor "PoisonCloud", 0.0
  DamageFactor "SoulToxic", 0.0
  DamageFactor "CacoLich", 0.0
  DamageFactor 0.6
  DamageFactor "PlayerDTRG", 0.5
  DamageFactor "Legendary", 0.3
  DamageFactor "LegendaryPlayer", 0.3
  DamageFactor "LegendaryGuru", 0.3
  DamageFactor "LegendaryGuruPlayer", 0.3
  DamageFactor "Ice", 0.3
  DamageFactor "FreezerBurn", 0.3
  DamageFactor "CadaverRocket", 0
  SeeSound "EnragedFamine/sight"
  PainSound "Huntertron/pain"
  DeathSound "EnragedFamine/death"
  ActiveSound "EnragedFamine/active"
  HitObituary "The Phase Famine made %o into eternal sleep."
  Obituary "%o couldn't pass the mindfuckery by a Phase Famine."
  BloodColor "30 30 30"
  Tag "\c[q0]Phase Famine\c-"
  //MeleeThreshold 60
  MeleeRange 100
  +MISSILEMORE
  +QUICKTORETALIATE
  +SHADOW
  +NOFEAR
  +NOICEDEATH
  +DONTHURTSPECIES
  //-LONGMELEERANGE
  +BOSS
  //var int user_missile;
  var int user_fakedeath;
  States
  {
  Spawn:
    TNT1 A 0
    PHFM A 1 A_SpawnItemEx("PhaseFamineASpawner")
	PHFM A 0 A_Look
    Loop
  See:
	PHFM AA 1 A_SpawnItemEx("PhaseFamineASpawner")
	PHFM A 0 A_Chase
	PHFM BB 1 A_SpawnItemEx("PhaseFamineBSpawner")
	PHFM B 0 A_Chase
	PHFM CC 1 A_SpawnItemEx("PhaseFamineCSpawner")
	PHFM C 0 A_Chase
	TNT1 A 0 A_SpawnItem("BonyStep",0,0,0,0)
	PHFM DD 1 A_SpawnItemEx("PhaseFamineDSpawner")
	PHFM D 0 A_Chase
	PHFM EE 1 A_SpawnItemEx("PhaseFamineESpawner")
	PHFM E 0 A_Chase
	PHFM FF 1 A_SpawnItemEx("PhaseFamineFSpawner")
	PHFM F 0 A_Chase
	TNT1 A 0 A_SpawnItem("BonyStep",0,0,0,0)
	PHFM M 0 A_ChangeFlag("NOPAIN",1)
	Loop
  Melee:
	TNT1 A 0 A_JumpIfInventory("EnragedFamineMeleeToken",1,"Melee2")
	PHFM G 0 A_SkelWhoosh
	PHFM GGG 1 A_SpawnItemEx("PhaseFamineGSpawner")
	PHFM A 0 A_RadiusGive("PhaseMindfuck",128,RGF_PLAYERS,1)
	PHFM HHH 1 A_SpawnItemEx("PhaseFamineHSpawner")
	PHFM A 0 A_RadiusGive("PhaseMindfuck",128,RGF_PLAYERS,1)
	PHFM L 0 A_CustomMeleeAttack(random(6, 9)*5, "skeleton/melee")
	PHFM III 1 A_SpawnItemEx("PhaseFamineISpawner")
	PHFM A 0 A_RadiusGive("PhaseMindfuck",128,RGF_PLAYERS,1)
	PHFM L 0 A_Recoil(random(35, 45))
	PHFM L 0 ThrustThingZ(0, random(30, 40), 1, 1)
	Goto See
  Melee2:
	PHFM G 0 A_SkelWhoosh
	PHFM RRR 1 A_SpawnItemEx("PhaseFamineRSpawner")
	PHFM A 0 A_RadiusGive("PhaseMindfuck",128,RGF_PLAYERS,1)
	PHFM SSS 1 A_SpawnItemEx("PhaseFamineSSpawner")
	PHFM A 0 A_RadiusGive("PhaseMindfuck",128,RGF_PLAYERS,1)
	PHFM L 0 A_CustomMeleeAttack(random(6, 9)*5, "skeleton/melee")
	PHFM TTT 1 A_SpawnItemEx("PhaseFamineTSpawner")
	PHFM A 0 A_RadiusGive("PhaseMindfuck",128,RGF_PLAYERS,1)
	PHFM L 0 A_TakeInventory("EnragedFamineMeleeToken",1)	
	PHFM L 0 A_Recoil(random(35, 45))
	PHFM L 0 ThrustThingZ(0, random(30, 40), 1, 1)
	Goto See
  Missile:
    TNT1 A 0 A_JumpIfCloser(200,"Melee")
	TNT1 A 0 A_Jump(45,"Barrage")
	TNT1 A 0 A_Jump(120,"DeadHands")
  Normal:		
    PHFM J 0 A_FaceTarget
	PHFM JJJJJJJJJJJJJJ 1 A_SpawnItemEx("PhaseFamineJSpawner")
	TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBallFast",52,0,0)
    TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBall", 40, -14, 0)
    PHFM K 0 A_CustomMissile("PhaseGhoulFamineBall", 40, 14, 0) 
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	TNT1 A 0 A_Jump(64,"Pause")
    Goto Normal
  Barrage:		
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySound("EnragedFamine/sight")
    PHFM J 0 A_FaceTarget
	PHFM JJJJJJJJJJJJJJ 1 A_SpawnItemEx("PhaseFamineJSpawner")
	TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBallFast",52,0,0)
    TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBall", 40, -14, 0)
    PHFM K 0 A_CustomMissile("PhaseGhoulFamineBall", 40, 14, 0)
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	PHFM J 0 A_FaceTarget
	PHFM JJJJJJJ 1 A_SpawnItemEx("PhaseFamineJSpawner")
	TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBallFast",52,0,0)
    TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBall", 40, -14, 0)
    PHFM K 0 A_CustomMissile("PhaseGhoulFamineBall", 40, 14, 0)
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	PHFM J 0 A_FaceTarget
	PHFM JJJJJJJ 1 A_SpawnItemEx("PhaseFamineJSpawner")
	TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBallFast",52,0,0)
    TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBall", 40, -14, 0)
    PHFM K 0 A_CustomMissile("PhaseGhoulFamineBall", 40, 14, 0)
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	PHFM J 0 A_FaceTarget
	PHFM JJJJJJJ 1 A_SpawnItemEx("PhaseFamineJSpawner")
	TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBallFast",52,0,0)
    TNT1 A 0 A_CustomMissile("PhaseGhoulFamineBall", 40, -14, 0)
    PHFM K 0 A_CustomMissile("PhaseGhoulFamineBall", 40, 14, 0)
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	PHFM KKKKKKKKKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
    Goto See	
  DeadHands:	
    PHFM G 0 A_FaceTarget
	PHFM GGG 1 A_SpawnItemEx("PhaseFamineGSpawner")
	PHFM HHH 1 A_SpawnItemEx("PhaseFamineHSpawner")
    PHFM I 0 A_CustomMissile("PhaseFamineFloorDeadHands",0,0,0)
	PHFM III 1 A_SpawnItemEx("PhaseFamineISpawner")
	PHFM R 0 A_FaceTarget
	PHFM RRR 1 A_SpawnItemEx("PhaseFamineRSpawner")
	PHFM SSS 1 A_SpawnItemEx("PhaseFamineSSpawner")
    PHFM T 0 A_CustomMissile("PhaseFamineFloorDeadHands",0,0,0)
	PHFM TTT 1 A_SpawnItemEx("PhaseFamineTSpawner")
    PHFM G 0 A_FaceTarget
	PHFM GGG 1 A_SpawnItemEx("PhaseFamineGSpawner")
	PHFM HHH 1 A_SpawnItemEx("PhaseFamineHSpawner")
    PHFM I 0 A_CustomMissile("PhaseFamineFloorDeadHands",0,0,0)
	PHFM III 1 A_SpawnItemEx("PhaseFamineISpawner")
	PHFM R 0 A_FaceTarget
	PHFM RRR 1 A_SpawnItemEx("PhaseFamineRSpawner")
	PHFM SSS 1 A_SpawnItemEx("PhaseFamineSSpawner")
    PHFM T 0 A_CustomMissile("PhaseFamineFloorDeadHands",0,0,0)
	PHFM TTT 1 A_SpawnItemEx("PhaseFamineTSpawner")
    Goto See	
  Pause:
	PHFM KKK 1 A_SpawnItemEx("PhaseFamineKSpawner")
	Goto See
  Pain:
	PHFM L 0 A_ChangeFlag("NOPAIN",1)
	PHFM L 0 A_RadiusGive("PhaseMindfuck",256,RGF_PLAYERS)	
	PHFM L 0 ThrustThingZ(0, random(30, 45), 0, 1)
	PHFM L 0 A_Pain
	PHFM LLLL 1 A_SpawnItemEx("PhaseFamineLSpawnerSubtract")
	PHFM L 0 ThrustThing(random(0, 359), random(20, 30), 1, 0)
	PHFM L 0 A_Jump(128, "Missile")
	Goto See
  Pain.Legendary:
  Pain.LegendaryGuruPlayer:
  Pain.Ice:
  Pain.FreezerBurn:
  Pain.PlayerDTRG:
	PHFM L 0 A_Pain
	PHFM L 0 ThrustThingZ(0, random(30, 45), 0, 1)
	PHFM L 0 A_RadiusGive("PhaseMindfuck",2048,RGF_PLAYERS)	
	PHFM L 0 A_Jump(128, "Pain2")
	PHFM L 0 ThrustThing(angle/256*360+64, random(40, 50), 1, 0)
	Goto Pain3
  Pain2:
	PHFM L 0 ThrustThing(angle/256*360+192, random(40, 50), 1, 0)
  Pain3:
	PHFM LLLL 1 A_SpawnItemEx("PhaseFamineLSpawnerSubtract")
	PHFM L 0 A_Jump(148, "Missile")
	Goto See
  Death:
  XDeath:
	PHFM LLLLLL 1 A_SpawnItemEx("PhaseFamineLSpawnerSubtract")
	TNT1 A 0 A_JumpIf(user_fakedeath == 1,2)	 
	TNT1 A 0 A_Jump(72,"FakeDeath")
	TNT1 A 0 A_Scream
	//TNT1 A 0 A_JumpIfInventory("EnragedFamineDeathToken",1,"TrueDeath")
	TNT1 A 0 A_Die
	TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_SpawnItemEx("DemonicEnergy",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,200)
	TNT1 A 0 A_SpawnItemEx("GreaterDemonicEnergy",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossLifeEssence",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossArmorBonusMax",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("PhaseSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	TNT1 A 0 A_SpawnItemEx("PhaseArmor",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,64)
	TNT1 A 0 A_SpawnItemEx("UltraSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	PHFW A 0 A_RadiusGive("PhaseMindfuck",100,RGF_PLAYERS)
    PHFW A 5 Bright
	TNT1 AAA 0 A_SpawnItemEx("PurpleParticleSpawner", 0, 0, 40, 0, 0, 0, 0, 128)
	PHFW B 0 A_RadiusGive("PhaseMindfuck",150,RGF_PLAYERS)
    PHFW B 5 Bright A_Scream
	PHFW C 0 A_RadiusGive("PhaseMindfuck",200,RGF_PLAYERS)
    PHFW C 5 Bright
	PHFW D 0 A_RadiusGive("PhaseMindfuck",300,RGF_PLAYERS)
	PHFW D 5 Bright A_CustomMissile("PArchonSoul",72,0,0,2,90)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", Random(30,60), 0, random(0,360), 2, random(0,360))
	PHFW EFGH 4 Bright
	PHFW I 4 A_SpawnItem("BodyCrash",0,0,0,0)
	//PHFW J 4 A_TakeInventory("EnragedFamineDeathToken",1)
	PHFW K 17
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))	
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
    PHFW K -1
    Stop
	/*
  FakeDeath:
    EFMV L 7 A_GiveInventory("EnragedFamineDeathToken",1)
	EFMV MNO 7
    EFMV P 7 A_SpawnItem("BodyCrash",0,0,0,0)
    TNT1 A 0 A_Jump(128,2,3,4,5)
    EFMV QQQQQ 100
	TNT1 A 0 A_CustomMissile("EnragedFamineResurrection",0,0,0)
	EFMV Q -1
	Stop
	*/
  FakeDeath:
	TNT1 A 0 A_SetUserVar("user_fakedeath",1)
	TNT1 A 0 A_Scream
	PHFM MNO 7
	PHFM P 7 A_SpawnItem("BodyCrash",0,0,0,0)
	PHFM Q 20
	PHFM Q 1 A_SetTranslucent(0.95)
	PHFM Q 1 A_SetTranslucent(0.75)
    PHFM Q 1 A_SetTranslucent(0.55)
    PHFM Q 1 A_SetTranslucent(0.35)
	PHFM Q 1 A_SetTranslucent(0.15)
	PHFM Q 1 A_SetTranslucent(0.05)
	PHFM Q 1 A_SetTranslucent(0.0)
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM Q 73
	PHFM QQQQQ 30 A_Jump(40,"RevivePls")
	Goto RevivePls
  RevivePls:
	TNT1 A 0 A_PlaySound("PhaseGhoul/NotSoDeath",7,1.0,0,ATTN_NONE)
	TNT1 A -1 Thing_Raise(0)
	Goto Raise
  Raise:
 	TNT1 A 0
	PHFM Q 2 A_SetTranslucent(0.05)
	PHFM P 2 A_SetTranslucent(0.15)
	PHFM O 2 A_SetTranslucent(0.35)
	PHFM N 2 A_SetTranslucent(0.55)
	PHFM M 2 A_SetTranslucent(0.75)
	PHFM L 2 A_SetTranslucent(0.95)
	PHFM L 3 A_SetTranslucent(1.0)
    Goto See
    }
}

ACTOR PhaseGhoulFamineBallFast : PhaseArchonTracer
{
  Speed 18
  FastSpeed 20
  Damage 6
  DamageType "CadaverRocket"
}

ACTOR PhaseFamineFloorDeadHands
{
Radius 13
Height 8
Speed 21
Damage 6
PROJECTILE
+RIPPER
+FLOORHUGGER
Scale .75
DamageType "CadaverRocket"
States
{
   Spawn:
    LRHD MNO 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-16,16),random(-16,16))
    Loop
   Death: 
    TNT1 A 0
    TNT1 AAAAAAA 0 A_SpawnItemEx("PhaseFamUndeadHand",random(-48,48),random(-48,48))
    TNT1 A 1
    Stop
	}
}

Actor PhaseFamUndeadHand
{
+CANNOTPUSH
+NODAMAGETHRUST
+FLOORCLIP
+FLOORHUGGER
+FORCERADIUSDMG
RenderStyle Translucent
Scale .75
Obituary "%o was sended to the Shadow Realm by the Purple Bad Dragon Dildos."
DamageType "CadaverRocket"
states
{
Spawn:
PFHD A 0 
PFHD A 0 A_PlaySound("lrtrap/active")
TNT1 A 0 A_radiusgive("PhaseMindfuck",48,RGF_PLAYERS)
PFHD ABCDEFGHIJKL 2 A_Explode(8,48,0)
LRHD M 35
Goto Fade
Fade:
LRHD M 2 A_Fadeout(0.02)
Loop
}
}

ACTOR PhaseFamineASpawner : phasenightmareAspawner
{
  Scale 1.0
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineA", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineBSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineB", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineCSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineC", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineDSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineD", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineESpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineE", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineFSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineF", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineGSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineG", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineHSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineH", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineISpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineI", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineJSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineJ", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineKSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineK", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineRSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineR", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineSSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineS", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineTSpawner : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineT", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineLSpawnerSubtract : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("PhaseFamineLSubtract", 0, 0, -20, random(3, -3)*0.5, random(3, -3)*0.5, random(6, 13)*0.5)
	stop
  }
}

ACTOR PhaseFamineA : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM A 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineB : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM B 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineC : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM C 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineD : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM D 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineE : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM E 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineF : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM F 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineG : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM G 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineH : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM H 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineI: PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM I 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineJ : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM J 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineK : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM K 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineR : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM R 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineS : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM R 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineT : PhaseFamineASpawner
{
  States
  {
  Spawn:
	TNT1 A 8
	PHFM R 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamineLSubtract : PhaseFamineASpawner
{
  renderstyle subtract
  States
  {
  Spawn:
	TNT1 A 8
	PHFM L 1 a_fadeout(0.1)
	goto spawn+1
  }
}

ACTOR PhaseFamine_FullChance : PhaseFamine
{
  var int user_fakedeath;
  Tag "\c[q0]Phase Famine\c-"
  States
  {
   Death:
  XDeath:
	PHFM LLLLLL 1 A_SpawnItemEx("PhaseFamineLSpawnerSubtract")
	TNT1 A 0 A_JumpIf(user_fakedeath == 1,2)	 
	TNT1 A 0 A_Jump(256,"FakeDeath")
	TNT1 A 0 A_Scream
	//TNT1 A 0 A_JumpIfInventory("EnragedFamineDeathToken",1,"TrueDeath")
	TNT1 A 0 A_Die
	TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_SpawnItemEx("DemonAmmo",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,200)
	TNT1 A 0 A_SpawnItemEx("DemonAmmoBox",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossLifeEssence",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossArmorBonusMax",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("PhaseSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	TNT1 A 0 A_SpawnItemEx("PhaseArmor",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,64)
	TNT1 A 0 A_SpawnItemEx("UltraSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	PHFW A 0 A_RadiusGive("PhaseMindfuck",100,RGF_PLAYERS)	
    PHFW A 5 Bright
	TNT1 AAA 0 A_SpawnItemEx("PurpleParticleSpawner", 0, 0, 40, 0, 0, 0, 0, 128)
	PHFW B 0 A_RadiusGive("PhaseMindfuck",150,RGF_PLAYERS)	
    PHFW B 5 Bright A_Scream
	PHFW C 0 A_RadiusGive("PhaseMindfuck",200,RGF_PLAYERS)	
    PHFW C 5 Bright
	PHFW D 0 A_RadiusGive("PhaseMindfuck",300,RGF_PLAYERS)	
	PHFW D 5 Bright A_CustomMissile("PArchonSoul",72,0,0,2,90)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", Random(30,60), 0, random(0,360), 2, random(0,360))
	PHFW EFGH 4 Bright
	PHFW I 4 A_SpawnItem("BodyCrash",0,0,0,0)
	//PHFW J 4 A_TakeInventory("EnragedFamineDeathToken",1)
	PHFW K 17
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))	
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
    PHFW K -1
    Stop
  FakeDeath:
	TNT1 A 0 A_SetUserVar("user_fakedeath",1)
	TNT1 A 0 A_Scream
	PHFM MNO 7
	PHFM P 7 A_SpawnItem("BodyCrash",0,0,0,0)
	PHFM Q 20
	PHFM Q 1 A_SetTranslucent(0.95)
	PHFM Q 1 A_SetTranslucent(0.75)
    PHFM Q 1 A_SetTranslucent(0.55)
    PHFM Q 1 A_SetTranslucent(0.35)
	PHFM Q 1 A_SetTranslucent(0.15)
	PHFM Q 1 A_SetTranslucent(0.05)
	PHFM Q 1 A_SetTranslucent(0.0)
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM Q 73
	PHFM QQQQQ 30 A_Jump(40,"RevivePls")
	Goto RevivePls
  RevivePls:
	TNT1 A 0 A_PlaySound("PhaseGhoul/NotSoDeath",7,1.0,0,ATTN_NONE)
	TNT1 A -1 Thing_Raise(0)
	Goto Raise
  Raise:
 	TNT1 A 0
	PHFM Q 2 A_SetTranslucent(0.05)
	PHFM P 2 A_SetTranslucent(0.15)
	PHFM O 2 A_SetTranslucent(0.35)
	PHFM N 2 A_SetTranslucent(0.55)
	PHFM M 2 A_SetTranslucent(0.75)
	PHFM L 2 A_SetTranslucent(0.95)
	PHFM L 3 A_SetTranslucent(1.0)
    Goto See
    }
}

ACTOR PhaseFamine_2ndChance : PhaseFamine
{
  var int user_fakedeath;
  var int user_fakedeathagain;
  Tag "\c[q0]Phase Famine\c-"
  States
  {
   Death:
  XDeath:
	PHFM LLLLLL 1 A_SpawnItemEx("PhaseFamineLSpawnerSubtract")
	TNT1 A 0 A_JumpIf(user_fakedeath == 1,2)	 
	TNT1 A 0 A_Jump(256,"FakeDeath")
	TNT1 A 0 A_JumpIf(user_fakedeathagain == 1,2)	 
	TNT1 A 0 A_Jump(72,"FakeDeathAgain")
	TNT1 A 0 A_Scream
	//TNT1 A 0 A_JumpIfInventory("EnragedFamineDeathToken",1,"TrueDeath")
	TNT1 A 0 A_Die
	TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_SpawnItemEx("DemonAmmo",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,200)
	TNT1 A 0 A_SpawnItemEx("DemonAmmoBox",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossLifeEssence",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossArmorBonusMax",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("PhaseSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	TNT1 A 0 A_SpawnItemEx("PhaseArmor",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,64)
	TNT1 A 0 A_SpawnItemEx("UltraSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	PHFW A 0 A_RadiusGive("PhaseMindfuck",100,RGF_PLAYERS)	
    PHFW A 5 Bright
	TNT1 AAA 0 A_SpawnItemEx("PurpleParticleSpawner", 0, 0, 40, 0, 0, 0, 0, 128)
	PHFW B 0 A_RadiusGive("PhaseMindfuck",150,RGF_PLAYERS)	
    PHFW B 5 Bright A_Scream
	PHFW C 0 A_RadiusGive("PhaseMindfuck",200,RGF_PLAYERS)	
    PHFW C 5 Bright
	PHFW D 0 A_RadiusGive("PhaseMindfuck",300,RGF_PLAYERS)	
	PHFW D 5 Bright A_CustomMissile("PArchonSoul",72,0,0,2,90)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", Random(30,60), 0, random(0,360), 2, random(0,360))
	PHFW EFGH 4 Bright
	PHFW I 4 A_SpawnItem("BodyCrash",0,0,0,0)
	//PHFW J 4 A_TakeInventory("EnragedFamineDeathToken",1)
	PHFW K 17
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))	
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
    PHFW K -1
    Stop
  FakeDeath:
	TNT1 A 0 A_SetUserVar("user_fakedeath",1)
	TNT1 A 0 A_Scream
	PHFM MNO 7
	PHFM P 7 A_SpawnItem("BodyCrash",0,0,0,0)
	PHFM Q 20
	PHFM Q 1 A_SetTranslucent(0.95)
	PHFM Q 1 A_SetTranslucent(0.75)
    PHFM Q 1 A_SetTranslucent(0.55)
    PHFM Q 1 A_SetTranslucent(0.35)
	PHFM Q 1 A_SetTranslucent(0.15)
	PHFM Q 1 A_SetTranslucent(0.05)
	PHFM Q 1 A_SetTranslucent(0.0)
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM Q 73
	PHFM QQQQQ 30 A_Jump(40,"RevivePls")
	Goto RevivePls
  FakeDeathAgain:
	TNT1 A 0 A_SetUserVar("user_fakedeathagain",1)
	TNT1 A 0 A_Scream
	PHFM MNO 7
	PHFM P 7 A_SpawnItem("BodyCrash",0,0,0,0)
	PHFM Q 20
	PHFM Q 1 A_SetTranslucent(0.95)
	PHFM Q 1 A_SetTranslucent(0.75)
    PHFM Q 1 A_SetTranslucent(0.55)
    PHFM Q 1 A_SetTranslucent(0.35)
	PHFM Q 1 A_SetTranslucent(0.15)
	PHFM Q 1 A_SetTranslucent(0.05)
	PHFM Q 1 A_SetTranslucent(0.0)
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM Q 73
	PHFM QQQQQ 30 A_Jump(40,"RevivePls")
	Goto RevivePls
  RevivePls:
	TNT1 A 0 A_PlaySound("PhaseGhoul/NotSoDeath",7,1.0,0,ATTN_NONE)
	TNT1 A -1 Thing_Raise(0)
	Goto Raise
  Raise:
 	TNT1 A 0
	PHFM Q 2 A_SetTranslucent(0.05)
	PHFM P 2 A_SetTranslucent(0.15)
	PHFM O 2 A_SetTranslucent(0.35)
	PHFM N 2 A_SetTranslucent(0.55)
	PHFM M 2 A_SetTranslucent(0.75)
	PHFM L 2 A_SetTranslucent(0.95)
	PHFM L 3 A_SetTranslucent(1.0)
    Goto See
    }
}

ACTOR PhaseFamine_2ndFullChance : PhaseFamine
{
  var int user_fakedeath;
  var int user_fakedeathagain;
  Tag "\c[q0]Phase Famine\c-"
  States
  {
   Death:
  XDeath:
	PHFM LLLLLL 1 A_SpawnItemEx("PhaseFamineLSpawnerSubtract")
	TNT1 A 0 A_JumpIf(user_fakedeath == 1,2)	 
	TNT1 A 0 A_Jump(256,"FakeDeath")
	TNT1 A 0 A_JumpIf(user_fakedeathagain == 1,2)	 
	TNT1 A 0 A_Jump(256,"FakeDeathAgain")
	TNT1 A 0 A_Scream
	//TNT1 A 0 A_JumpIfInventory("EnragedFamineDeathToken",1,"TrueDeath")
	TNT1 A 0 A_Die
	TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_SpawnItemEx("DemonAmmo",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,200)
	TNT1 A 0 A_SpawnItemEx("DemonAmmoBox",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossLifeEssence",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("BossArmorBonusMax",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_SpawnItemEx("PhaseSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	TNT1 A 0 A_SpawnItemEx("PhaseArmor",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,64)
	TNT1 A 0 A_SpawnItemEx("UltraSphere",0,0,12,Frandom(4,-4),Frandom(4,-4),Frandom(1,2),0,SXF_NOCHECKPOSITION,32)
	PHFW A 0 A_RadiusGive("PhaseMindfuck",100,RGF_PLAYERS)	
    PHFW A 5 Bright
	TNT1 AAA 0 A_SpawnItemEx("PurpleParticleSpawner", 0, 0, 40, 0, 0, 0, 0, 128)
	PHFW B 0 A_RadiusGive("PhaseMindfuck",150,RGF_PLAYERS)	
    PHFW B 5 Bright A_Scream
	PHFW C 0 A_RadiusGive("PhaseMindfuck",200,RGF_PLAYERS)	
    PHFW C 5 Bright
	PHFW D 0 A_RadiusGive("PhaseMindfuck",300,RGF_PLAYERS)	
	PHFW D 5 Bright A_CustomMissile("PArchonSoul",72,0,0,2,90)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", Random(30,60), 0, random(0,360), 2, random(0,360))
	PHFW EFGH 4 Bright
	PHFW I 4 A_SpawnItem("BodyCrash",0,0,0,0)
	//PHFW J 4 A_TakeInventory("EnragedFamineDeathToken",1)
	PHFW K 17
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))	
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
	PHFW KKKKKKKKKKKKK 2 A_SpawnItemEx("PhaseFamUndeadHand",random(-128,128),random(-128,128))
    PHFW K -1
    Stop
  FakeDeath:
	TNT1 A 0 A_SetUserVar("user_fakedeath",1)
	TNT1 A 0 A_Scream
	PHFM MNO 7
	PHFM P 7 A_SpawnItem("BodyCrash",0,0,0,0)
	PHFM Q 20
	PHFM Q 1 A_SetTranslucent(0.95)
	PHFM Q 1 A_SetTranslucent(0.75)
    PHFM Q 1 A_SetTranslucent(0.55)
    PHFM Q 1 A_SetTranslucent(0.35)
	PHFM Q 1 A_SetTranslucent(0.15)
	PHFM Q 1 A_SetTranslucent(0.05)
	PHFM Q 1 A_SetTranslucent(0.0)
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM Q 73
	PHFM QQQQQ 30 A_Jump(40,"RevivePls")
	Goto RevivePls
  FakeDeathAgain:
	TNT1 A 0 A_SetUserVar("user_fakedeathAgain",1)
	TNT1 A 0 A_Scream
	PHFM MNO 7
	PHFM P 7 A_SpawnItem("BodyCrash",0,0,0,0)
	PHFM Q 20
	PHFM Q 1 A_SetTranslucent(0.95)
	PHFM Q 1 A_SetTranslucent(0.75)
    PHFM Q 1 A_SetTranslucent(0.55)
    PHFM Q 1 A_SetTranslucent(0.35)
	PHFM Q 1 A_SetTranslucent(0.15)
	PHFM Q 1 A_SetTranslucent(0.05)
	PHFM Q 1 A_SetTranslucent(0.0)
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 0 A_Wander
	PHFM Q 73
	PHFM QQQQQ 30 A_Jump(40,"RevivePls")
	Goto RevivePls
  RevivePls:
	TNT1 A 0 A_PlaySound("PhaseGhoul/NotSoDeath",7,1.0,0,ATTN_NONE)
	TNT1 A -1 Thing_Raise(0)
	Goto Raise
  Raise:
 	TNT1 A 0
	PHFM Q 2 A_SetTranslucent(0.05)
	PHFM P 2 A_SetTranslucent(0.15)
	PHFM O 2 A_SetTranslucent(0.35)
	PHFM N 2 A_SetTranslucent(0.55)
	PHFM M 2 A_SetTranslucent(0.75)
	PHFM L 2 A_SetTranslucent(0.95)
	PHFM L 3 A_SetTranslucent(1.0)
    Goto See
    }
}