ACTOR bigmouthedhissything : Cacodemon replaces cacodemon
{
  Speed 12
  States
  {
	Missile:
		TNT1 A 0
		TNT1 A 0
		HEAD BC 5 A_FaceTarget
		HEAD D 5 Bright A_HeadAttack
		Goto See
	Pain:
		HEAD E 1 a_playsound ("monsters/midhurt",0)
		"####" "#" 1 bright Thing_SetTranslation(0, 4242)
		HEAD F 3 bright A_Pain
		HEAD F 0 a_stop
		"####" "#" 2 bright 
		"####" "#" 2 Thing_SetTranslation(0, 0)
		"####" "#" 3 
		goto see
	pain.zelda:
		TNT1 A 0
		HEAD E 1 a_playsound ("monsters/zeldahurt",0)
		HEAD E 1 bright Thing_SetTranslation(0, 4242)
		HEAD E 2 bright A_Pain
		TNT1 A 0 a_stop
		HEAD E 1 bright Thing_SetTranslation(0, 0)
		HEAD E 1 bright Thing_SetTranslation(0, 4242)
		HEAD E 1 bright Thing_SetTranslation(0, 0)
		HEAD E 1 bright Thing_SetTranslation(0, 4242)
		HEAD E 1 Thing_SetTranslation(0, 0)
		Goto See
	death:
	xdeath:
		TNT1 A 0
		TNT1 A 0 a_scream
		TNT1 A 0 Thing_SetTranslation(0, 0)
		TNT1 A 0 a_noblocking
		TNT1 A 0 a_playsound ("monsters/midhurt",0)
		TNT1 A 0 a_spawnitemex("cacogib1",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacogib2",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacogib2",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacogib3",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacogib3",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacogib4",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacogib4",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 1 a_spawnitemex ("monsterdie",0,0,35)
		CDED ABCDEFGHI 3
		CDED J 2
		TNT1 A 0 a_spawnitemex ("droppeditemspawner",0,0,35)
		CDED J -1
		stop
	death.beamice:
		HEAD G 1
		HEAD G 1
		TNT1 A 0 a_scream
		TNT1 A 0 a_noblocking
		HEAD G 1 bright Thing_SetTranslation(0, 4243)
	falling:
		TNT1 A 0 A_JumpIf(floorz == z, "shatter")
		HEAD G 1 bright A_JumpIf(floorz == z, "shatter")
		TNT1 A 0 A_JumpIf(floorz == z, "shatter")		
		loop
	shatter:
		TNT1 A 0
		TNT1 A 0 a_playsound ("monsters/midhurt",0)
		TNT1 A 0 a_spawnitemex ("icecacogibber",0,0,20)
		TNT1 A 1 a_spawnitemex ("monsterdie",0,0,35)
		CDED ABCDEFGHI 3
		CDED J 2
		TNT1 AAA 0 a_spawnitemex ("droppeditemspawner",0,0,35)
		CDED J -1
		stop
	death.zelda:
		TNT1 A 0
		TNT1 A 0 Thing_SetTranslation(0, 0)
		TNT1 A 0 a_scream
		TNT1 A 0 a_noblocking
		CLTS H 0 a_playsound ("monsters/zeldahurt",0)
		TNT1 A 1 a_spawnitemex ("zeldamonsterdie",0,0,35)
		TNT1 A 0 a_playsound ("monsters/zeldadeath",0)
		TNT1 A 0 a_stop
		CDED ABCDEFGHI 3
		CDED J 2
		TNT1 A 0 a_spawnitemex ("droppeditemspawner",0,0,35)
		CDED J -1
		wait
	raise:
		TNT1 A 0
		TNT1 A 0 Thing_SetTranslation(0, 0)
		CDED J 1 a_spawnitemex ("cacorevive1",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacorevive2",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacorevive2",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacorevive3",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacorevive3",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacorevive4",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("cacorevive4",0,0,0,frandom(-10,10),frandom(-10,10),frandom(8,11),0,SXF_NOCHECKPOSITION)
		CDED J 30
		CDED IHGFEDCBA 2
		goto see
	}
}



actor cacogib1 : zombiegib1
{
	states
	{
	spawn:
		HGB1 ABCD 1
		loop
	death:
		TNT1 A 1
		stop
	}
}

actor cacogib2 : zombiegib1
{
	states
	{
	spawn:
		HGB2 ABCD 1
		loop
	}
}

actor cacogib3 : zombiegib1
{
	states
	{
	spawn:
		HGB3 ABCD 1
		loop
	}
}

actor cacogib4 : zombiegib1
{
	states
	{
	spawn:
		HGB4 ABCD 1
		loop
	}
}

actor icecacogibber
{
	+nointeraction
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 0 a_rearrangepointers (AAPTR_NULL,AAPTR_NULL,AAPTR_NULL)
		TNT1 AAAAAAA 0 a_spawnitemex("icebeam",0,0,30,frandom(-40,40),frandom(-40,40),frandom(0,1))
		TNT1 A 0 a_spawnitemex("icecacogib1",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("icecacogib2",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("icecacogib2",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("icecacogib3",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("icecacogib3",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("icecacogib4",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_spawnitemex("icecacogib4",0,0,0,frandom(-15,15),frandom(-15,15),frandom(8,11),0,SXF_NOCHECKPOSITION)
		TNT1 A 1
		stop
	death:
		TNT1 A 1
		stop
	}
}


actor icecacogib1
{
	projectile
	+ripper
	+thruspecies
	+doombounce
	species "player"
	damage (4)
	-nogravity
	Radius 30
	Height 15
	damagetype "beamice"
	+bright
	states
	{
	spawn:
        TNT1 A 0
        TNT1 A 0 Thing_SetTranslation(0, 4243)
		TNT1 A 0 a_rearrangepointers (AAPTR_NULL,AAPTR_NULL)
        TNT1 A 0 A_Jump (256, "spawnmain")
	spawnmain:
		HGB1 ABCD 1
		loop
	death:
		TNT1 A 1
		stop
	}
}

actor icecacogib2 : icecacogib1
{
	states
	{
	spawnmain:
		HGB2 ABCD 1
		loop
	}
}

actor icecacogib3 : icecacogib1
{
	states
	{
	spawnmain:
		HGB3 ABCD 1
		loop
	}
}

actor icecacogib4 : icecacogib1
{
	states
	{
	spawnmain:
		HGB4 ABCD 1
		loop
	}
}

actor cacorevive1 : zombierevive1
{
	states
	{
	spawn:
		TNT1 A 10
		TNT1 A 1 a_scalevelocity (-1)
	flight:
		HGB1 ABCD 1
		loop
	death:
		TNT1 A 1
		stop
	}
}
	
actor cacorevive2 : zombierevive1
{
	states
	{
	spawn:
		TNT1 A 10
		TNT1 A 1 a_scalevelocity (-1)
	flight:
		HGB2 ABCD 1
		loop
	}
}

actor cacorevive3 : zombierevive1
{
	states
	{
	spawn:
		TNT1 A 10
		TNT1 A 1 a_scalevelocity (-1)
	flight:
		HGB3 ABCD 1
		loop
	}
}

actor cacorevive4 : zombierevive1
{
	states
	{
	spawn:
		TNT1 A 10
		TNT1 A 1 a_scalevelocity (-1)
	flight:
		HGB4 ABCD 1
		loop
	}
}

