ACTOR AngelChest: ComplexChest
{
 Radius 16
 Height 27
 Scale 1.2
 Tag "\c[G1]Angel Chest\c- (loot)"
 States
 {
  Spawn:
	AGBX A 0 Nodelay ACS_NamedExecuteAlways("ttkCrateIcon",0)
  SpawnLoop:
	AGBX A 1
	Loop
  ActiveCont:
	AGBX B 50
	TNT1 A 0 A_Jump(185,"Weapons","Ammos","Items")
	TNT1 A 0 A_Jump(70,"HolyShit")
	Goto DeathLoop
  HolyShit:
	AGBX B 30
	AGBX B 2 A_PlaySound("Mainyu/Electric",7)
	TNT1 A 0 A_SpawnItemEx("AngelChestElectric",0,0,0,0,0,2)
	Goto DeathLoop
  Weapons:
	TNT1 A 0 A_Jump(100,"Weapons2")
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("ChestWeapon",0,0,2,random(1,8),0,10,random(0,360),0,80)
	TNT1 A 0 A_SpawnItemEx("ChestWeapon",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Weapons2:
	TNT1 A 0 A_Jump(30,"SuperLuck")
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("RareChestWeapon",0,0,2,random(1,8),0,10,random(0,360),0,100)
	TNT1 A 0 A_SpawnItemEx("ChestWeapon",0,0,2,random(1,8),0,10,random(0,360),0,40)
	TNT1 A 0 A_SpawnItemEx("ChestWeapon",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Ammos:
	TNT1 A 0 A_Jump(130,"NemesisAmmos")
	TNT1 A 0 A_PlaySound("AngelChest/Luck",7)
	TNT1 AAAAAAA 0 A_SpawnItemEx("DCell",0,0,2,random(1,8),0,10,random(0,360),0,0)
	TNT1 AA 0 A_SpawnItemEx("DCellPack",0,0,2,random(1,8),0,10,random(0,360),0,0)
	TNT1 A 0 A_SpawnItemEx("D-BFG",0,0,2,random(1,8),0,10,random(0,360),0,100)
	Goto DeathLoop
  NemesisAmmos:
	TNT1 A 0 A_PlaySound("AngelChest/Luck",7)
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("NemesisAmmoSpawner",0,0,2,random(1,8),0,10,random(0,360),0,0)
	TNT1 AAA 0 A_SpawnItemEx("NemesisBoxSpawner",0,0,2,random(1,8),0,10,random(0,360),0,0)
	TNT1 A 0 A_SpawnItemEx("NemesisRifle",0,0,2,random(1,8),0,10,random(0,360),0,100)
	Goto DeathLoop
  Items:
	TNT1 A 0 A_Jump(128,"Item2","Item4")
	TNT1 A 0 A_Jump(40,"ItemLuck")
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("ChestWeapon",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Item2:
	TNT1 A 0 A_Jump(100,"Item3")
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("ChestCrate",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Item3:
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("SuperCrate",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Item4:
	TNT1 A 0 A_Jump(100,"Item5")
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("DemonicChalice",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Item5:
	TNT1 A 0 A_Jump(40,"Item6")
	TNT1 A 0 A_PlaySound("chest/drop",7)
	TNT1 A 0 A_SpawnItemEx("SkullofPower",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  Item6:
	TNT1 A 0 A_PlaySound("AngelChest/Luck",7)
	TNT1 A 0 A_SpawnItemEx("NemesisUltraSphere",0,0,2,random(1,8),0,10,random(0,360),0,0)
	Goto DeathLoop
  ItemLuck:
	TNT1 A 0 A_Jump(40,"Luck")
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 1 A_PlaySound("AngelChest/Luck",7)
	AGBX B 44
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 44
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 44
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 44
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	Goto DeathLoop
  Luck:
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 1 A_PlaySound("AngelChest/Luck",7)
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	AGBX B 11
	TNT1 A 0 A_PlaySound("Weapons/ProxFire")
	TNT1 A 0 A_SpawnItemEx ("DoRandom",0,0,24,random(3,14),0,random(2,12),random(0,359))
	Goto DeathLoop
  SuperLuck:
	AGBX B 1 A_PlaySound("angelchest/superluck",7)
	TNT1 AA 0 A_SpawnItemEx("SuperLuckSpawner",0,0,2,random(1,3),0,10,random(0,360),0,0)
	TNT1 A 0 A_SpawnItemEx("SuperWeaponLuckSpawner",0,0,2,random(1,3),0,10,random(0,360),0,0)
	Goto DeathLoop
  DeathLoop:
	AGBX B 70
	AGBX B 5 A_Fadeout(0.05)
	Wait
 }
}

ACTOR AngelChestElectric : MainyuSentientElectric
{
 -THRUACTORS
 Tag "Lightning Vessel"
 Obituary "%o died from the Angel Chest's worst outcome."
}