// HeXen spawners for compatibility. Wahey!

Actor ZPoisonShroom2 : ZPoisonShroom replaces ZPoisonShroom { +DONTRIP }

Actor HexenAmmo12Small : CustomInventory replaces Mana1
{
  Inventory.PickupMessage "Picked up 10 of Ammo 2 and Ammo 1."
  Inventory.PickupSound "ammogem/bulletsmall"
  +FLOATBOB
  States
  {
  Spawn:
     AMSM E 20
     AMSM E 20 BRIGHT
     loop
  Pickup:
     TNT1 A 0 A_JumpIfInventory("HexenClass",1,"PickupWolfen")
	 TNT1 A 0 A_JumpIfInventory("WolfenClass",1,"PickupWolfen")
     TNT1 A 0 A_JumpIfInventory("Shell",0,"PickupFailCheck")
     TNT1 A 0 A_JumpIfInventory("Clip",0,"PickupFailCheck2")
     TNT1 A 0 A_GiveInventory("Shell",10)
     TNT1 A 0 A_GiveInventory("Clip",10)
	 stop
  PickupWolfen:
     TNT1 A 0 A_JumpIfInventory("Clip",0,"PickupFail")
     TNT1 A 0 A_GiveInventory("Clip",20)
	 stop
  PickupFailCheck:
	 TNT1 A 0 A_JumpIfInventory("Clip",0,"PickupFail")
	 TNT1 A 0 A_GiveInventory("Clip",10)
	 stop
  PickupFailCheck2:
	 TNT1 A 0 A_JumpIfInventory("Shell",0,"PickupFail")
	 TNT1 A 0 A_GiveInventory("Shell",10)
	 stop
  PickupFail:
	 AMSM E 1
	 fail
  }
}

Actor HexenAmmo34Small : CustomInventory replaces Mana2
{
  Inventory.PickupMessage "Picked up 5 of Ammo 3 and 10 of Ammo 4."
  Inventory.PickupSound "ammogem/plasmasmall"
  +FLOATBOB
  States
  {
  Spawn:
     AMSM F 20
     AMSM F 20 BRIGHT
     loop
  Pickup:
     TNT1 A 0 A_JumpIfInventory("HexenClass",1,"PickupHexen")
     TNT1 A 0 A_JumpIfInventory("RocketAmmo",0,"PickupFailCheck")
     TNT1 A 0 A_JumpIfInventory("Cell",0,"PickupFailCheck2")
     TNT1 A 0 A_GiveInventory("RocketAmmo",5)
     TNT1 A 0 A_GiveInventory("Cell",10)
	 stop
  PickupFailCheck2:
	 TNT1 A 0 A_JumpIfInventory("RocketAmmo",0,"PickupFail")
	 TNT1 A 0 A_GiveInventory("RocketAmmo",5)
	 stop
  PickupFailCheck:
	 TNT1 A 0 A_JumpIfInventory("Cell",0,"PickupFail")
	 TNT1 A 0 A_GiveInventory("Cell",10)
	 stop
  PickupHexen:
     TNT1 A 0 A_JumpIfInventory("Cell",0,"PickupFail")
     TNT1 A 0 A_GiveInventory("Cell",15)
	 stop
  PickupFail:
	 AMSM F 1
	 fail
  }
}

Actor HexenEverythingAmmo : CustomInventory replaces Mana3
{
  Inventory.PickupMessage "Picked up 15 of all ammo."
  Inventory.PickupSound "ammo/mana"
  -INVENTORY.ALWAYSPICKUP
  +FLOATBOB
  Scale 0.75
  States
  {
  Spawn:
     AMMB E 20
     AMMB E 20 BRIGHT
     loop
  Pickup:
     TNT1 A 0 A_JumpIfInventory("HexenClass",1,"PickupHexen")
	 TNT1 A 0 A_JumpIfInventory("WolfenClass",1,"PickupWolfen")
     TNT1 A 0 A_GiveInventory("Clip",15)
     TNT1 A 0 A_GiveInventory("Shell",15)
     TNT1 A 0 A_GiveInventory("RocketAmmo",15)
     TNT1 A 0 A_GiveInventory("Cell",15)
	 stop
  PickupWolfen:
     TNT1 A 0 A_GiveInventory("Clip",30)
     TNT1 A 0 A_GiveInventory("RocketAmmo",15)
     TNT1 A 0 A_GiveInventory("Cell",15)
	 stop
  PickupHexen:
     TNT1 A 0 A_GiveInventory("Clip",30)
     TNT1 A 0 A_GiveInventory("Cell",30)
	 stop
  }
}

Actor HexenArmor1 : BasicArmorBonus replaces AmuletOfWarding
{
  RenderStyle Add
  Alpha 0.875
  +Floatbob
  Armor.Savepercent 33.33333
  Armor.MaxSaveAmount 200
  Armor.Saveamount 25
  Inventory.PickupMessage "Picked up 25 Armor."
  Inventory.PickupSound "armor1get"
  States
  {
  Spawn:
	RMR3 A 1 BRIGHT A_SpawnItemEx("ArmorHexenTrail", 0, 0, 2.5, 0, 0, 0, 0, 128)
	loop
	}
}

ACTOR ArmorHexenTrail
{
  Renderstyle Add
  Alpha 0.5
  Scale 0.95
  -Solid
  +Noclip
  +Nogravity
  +Nointeraction
  +CLIENTSIDEONLY
  States
  {
  Spawn:
	 RMR3 A 1 A_FadeOut(0.05)
	 Loop
  }
}

Actor HexenArmor5 : CustomInventory replaces ArtiBoostArmor
{
  +Floatbob
  Inventory.PickupMessage "Picked up 50 Extra Armor."
  Inventory.PickupSound "nosoundforyoubitch"
  States
  {
  Spawn:
	BRAC ABCDEFGH 4 Bright
    Loop
  Pickup:
    TNT1 A 1 A_JumpIfInventory("CorvusClass",1,"PickupHeretic")
	TNT1 A 0 A_PlaySound("FighterHammerHitWall")
	TNT1 A 1 A_GiveInventory("HexenArmor5B")
	stop
  PickupHeretic:
	TNT1 A 0 A_JumpIfInventory("HexenArmor5A",0,"PickupHereticFail")
	TNT1 A 0 A_PlaySound("heretic/itemget")
	TNT1 A 1 A_GiveInventory("HexenArmor5A")
	stop
  PickupHereticFail:
    BRAC A 4 BRIGHT
	fail
	}
}

Actor HexenArmor5A : CustomInventory
{
  +INVBAR
  Inventory.Icon "ARTIBRAC"
  Inventory.DefMaxAmount
  States
  {
  Use:
	TNT1 A 0 A_GiveInventory("HexenArmor5B",50)
	stop
  }
}

Actor HexenArmor5B : BasicArmorBonus
{
  Armor.Savepercent 33.33333
  Armor.MaxSaveAmount 300
  Armor.Saveamount 50
}

Actor HexenArmor2 : HexenArmor1 replaces FalconShield { }
Actor HexenArmor3 : HexenArmor1 replaces MeshArmor { }
Actor HexenArmor4 : HexenArmor1 replaces PlatinumHelm { }

Actor HexenAmmoBackpack2 : AmmoBackpack replaces CWeapStaff { }
Actor HexenWeapon0Spawner : Weapon0Spawner replaces MWeapFrost { }
Actor HexenWeapon2Spawner : Weapon2Spawner replaces FWeapAxe { }

Actor HexenAmmoBackpack3 : AmmoBackpack replaces MWeapLightning { }
Actor HexenWeapon3Spawner : Weapon3Spawner replaces CWeapFlame { }
Actor HexenWeapon4Spawner : Weapon4Spawner replaces FWeapHammer { }

Actor HexenNothingSpawner1 : BulletPuff replaces MWeaponPiece3 {
	States
	{
	Spawn:
		ACLO E 1
		TNT1 A 0 A_NoBlocking
		stop
	}
}
Actor HexenNothingSpawner2 : Weapon5Spawner replaces MWeaponPiece2 { }
Actor HexenNothingSpawner3 : Weapon6Spawner replaces MWeaponPiece1 { }

Actor HexenBlueArmorSpawner1 : ArmorPack2 replaces FWeaponPiece3 { }
Actor HexenBlueArmorSpawner2 : ArmorPack2 replaces FWeaponPiece2 { }
Actor HexenBlueArmorSpawner3 : ArmorPack2 replaces FWeaponPiece1 { }

Actor HexenWeapon5Spawner : Weapon5Spawner replaces CWeaponPiece3 { }
Actor HexenWeapon6Spawner : Weapon6Spawner replaces CWeaponPiece2 { }
Actor HexenWeapon7Spawner : Weapon7Spawner replaces CWeaponPiece1 { }


Actor HexenArmorDump replaces ArtiBlastRadius
{
	DropItem ArmorScrap
	DropItem ArmorScrap
	DropItem ArmorScrap
	DropItem ArmorScrap
	DropItem ArmorScrap
	States
	{
	Spawn:
		ACLO E 1
		TNT1 A 0 A_NoBlocking
		stop
	}
}

Actor HexenTeamPickup : CustomInventory replaces ArtiHealingRadius
{
    +Floatbob
	+INVENTORY.BIGPOWERUP
	+INVENTORY.PICKUPFLASH
	+INVENTORY.HUBPOWER
	+COUNTITEM
	Inventory.PickupMessage "Picked up Team Power."
	Inventory.PickupSound "nosoundforyoubitch"
	states
	{
	Spawn:
       HRAD ABCDEFGHIJKLMNOP 4 Bright
       Loop
    Pickup:
       TNT1 A 0 A_JumpIfInventory("DoomguyClass",1,"PickupDoom")
       TNT1 A 0 A_JumpIfInventory("ChexClass",1,"PickupChex")
       TNT1 A 0 A_JumpIfInventory("WolfenClass",1,"PickupWolfen")
       TNT1 A 0 A_JumpIfInventory("CorvusClass",1,"PickupHeretic")
       TNT1 A 0 A_JumpIfInventory("HexenClass",1,"PickupHexen")
       TNT1 A 0 A_JumpIfInventory("DukeClass",1,"PickupDuke")
	   TNT1 A 1
	   fail
	PickupDoom:
	   TNT1 A 0 A_PlaySound("MysticIncant")
	   TNT1 AAAAAAAAAAAAAAA 1 A_SpawnItemEx("HealPack0",0,0,random(60,90),random(-4,4),random(-4,4),random(1,7),48,0)//A_SpawnDebris("HealPack0")
	   stop
	PickupChex:
	   TNT1 A 0 A_PlaySound("MysticIncant")
	   TNT1 AAAAAAAAAAAAAAA 1 A_SpawnItemEx("ArmorScrap",0,0,random(60,90),random(-4,4),random(-4,4),random(1,7),48,0) //A_SpawnDebris("ArmorScrap")
	   stop
	PickupWolfen:
	   TNT1 A 0 A_PlaySound("MysticIncant")
	   TNT1 AAA 1 A_SpawnItemEx("Ammo1Small",0,0,random(60,90),random(-4,4),random(-4,4),random(1,7),48,0)//A_SpawnDebris("Ammo1Small")
	   TNT1 AAA 1 A_SpawnItemEx("Ammo2Small",0,0,random(60,90),random(-4,4),random(-4,4),random(1,7),48,0)//A_SpawnDebris("Ammo1Small")
	   stop
    PickupHeretic:
	   TNT1 A 0 A_JumpIfInventory("ArtiHealingRadius2",0,"PickupHereticFail")
	   TNT1 A 0 A_PlaySound("heretic/itemget")
	   TNT1 A 1 A_GiveInventory("ArtiHealingRadius2")
	   stop
    PickupHexen:
	   TNT1 A 0 A_JumpIfInventory("PortMysticAmbit",0,"PickupHereticFail")
	   TNT1 A 0 A_PlaySound("hexen/artiget")
	   TNT1 A 1 A_GiveInventory("PortMysticAmbit")
	   stop
	PickupHereticFail:
	   HRAD A 4 BRIGHT
	   fail
	PickupDuke:
	   TNT1 A 0 A_PlaySound("MysticIncant")
	   TNT1 AAAAA 1 A_SpawnItemEx("Ammo3Small",0,0,random(60,90),random(-4,4),random(-4,4),random(1,7),48,0)//A_SpawnDebris("Ammo1Small")
	   stop
	}
}

Actor ArtiHealingRadius2 : ArtiHealingRadius { Inventory.MaxAmount 16 }

Actor HexenHealPack0 : HealPack0 replaces ArtiPoisonBag { }

Actor HexenMegapack : Megapack replaces ArtiDarkServant { }

Actor HexenInvulnerability : InvulnPowerup replaces ArtiInvulnerability2 { }

Actor HexenAmmoBackpack : AmmoBackpack replaces ArtiBoostMana { }

Actor HexenPorkPickup : UniqueItemSpawner replaces ArtiPork { }

Actor HexenBootsPickup : CustomInventory replaces ArtiSpeedBoots
{
    +Floatbob
	+INVENTORY.BIGPOWERUP
	+INVENTORY.PICKUPFLASH
	+INVENTORY.HUBPOWER
	+COUNTITEM
	Inventory.PickupAnnouncerEntry "Haste"
	Inventory.PickupMessage "Picked up Haste."
	Inventory.PickupSound "nosoundforyoubitch"
	states
	{
	Spawn:
       SPED ABCDEFGH 3 Bright
       Loop
    Pickup:
       TNT1 A 1 A_JumpIfInventory("HexenClass",1,"PickupHexen")
       TNT1 A 1 A_JumpIfInventory("CorvusClass",1,"PickupHeretic")
	   TNT1 A 0 A_PlaySound("SorcererSpellCast")
	   TNT1 A 1 A_GiveInventory("PowerSpeed")
	   stop
    PickupHeretic:
	   TNT1 A 0 A_JumpIfInventory("ArtiSpeedBoots",0,"PickupHereticFail")
	   TNT1 A 0 A_PlaySound("heretic/itemget")
	   TNT1 A 1 A_GiveInventory("ArtiSpeedBoots")
	   stop
    PickupHexen:
	   TNT1 A 0 A_JumpIfInventory("ArtiSpeedBoots",0,"PickupHereticFail")
	   TNT1 A 0 A_PlaySound("hexen/artiget")
	   TNT1 A 1 A_GiveInventory("ArtiSpeedBoots")
	   stop
	PickupHereticFail:
	   SPED A 4
	   fail
	}
}

Actor HexenTeleportPickup : CustomInventory replaces ArtiTeleportOther
{
    +Floatbob
	+INVENTORY.BIGPOWERUP
	+INVENTORY.PICKUPFLASH
	+INVENTORY.HUBPOWER
	+COUNTITEM
	Inventory.PickupMessage "Picked up Banishment."
	Inventory.PickupSound "nosoundforyoubitch"
	states
	{
	Spawn:
	   TELO ABCD 5 BRIGHT
       Loop
    Pickup:
       TNT1 A 1 A_JumpIfInventory("HexenClass",1,"PickupHexen")
       TNT1 A 0 A_JumpIfInventory("CorvusClass",1,"PickupHeretic")
	   fail
    PickupHeretic:
	   TNT1 A 0 A_JumpIfInventory("ArtiTeleportOther",0,"PickupHereticFail")
	   TNT1 A 0 A_PlaySound("heretic/itemget")
	   TNT1 A 1 A_GiveInventory("ArtiTeleportOther")
	   stop
	PickupHereticFail:
	   TELO A 5 BRIGHT
	   fail
    PickupHexen:
	   TNT1 A 0 A_JumpIfInventory("ArtiTeleportOther",0,"PickupHereticFail")
	   TNT1 A 0 A_PlaySound("hexen/artiget")
	   TNT1 A 1 A_GiveInventory("ArtiTeleportOther")
	   stop
	}
}

// Whew. Now for the enemies.

ACTOR Pig2 : Pig replaces Pig // Even without the Porkalator, enemies can still get turned into pigs via traps!
{
  States
  {
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchsmall","soundslot5",0,0)
	PIGY D 3 A_SpawnItem("ZorchEffectSuperTiny")
    PIGY D 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_ActiveSound
    PIGY D 3 A_SetTranslucent(0.8,0)
    TNT1 D 0 A_NoBlocking
    PIGY D 3 A_SetTranslucent(0.7,0)
    PIGY D 3 A_SetTranslucent(0.6,0)
    PIGY D 3 A_SetTranslucent(0.5,0)
    PIGY D 3 A_SetTranslucent(0.4,0)
    PIGY D 3 A_SetTranslucent(0.3,0)
    PIGY D 3 A_SetTranslucent(0.2,0)
    PIGY D 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1
    stop
Ice:
Death.HexenIce:
Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	PIGY M 0 A_UnsetSolid
    PIGY M 70 A_GenericFreezeDeath
    PIGY M 0 A_IceGuyDie
    PIGY M 1 A_IceGuyDie
	TNT1 A -1
	stop
  }
}

ACTOR FireDemon2 : FireDemon replaces FireDemon
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 2
DamageFactor "ZorchPistol", 2
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
   Chase:
	   TNT1 A 0 A_SetTranslucent(1,0)
       FDMN ABC 5 Bright A_FireDChase
       Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_GiveInventory("EnemyZorched",1)
	TNT1 A 0 A_NoGravity
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchsmall","soundslot5",0,0)
	FDMN D 3 A_SpawnItem("ZorchEffectTiny")
    FDMN D 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Pain
    FDMN D 3 A_SetTranslucent(0.8,0)
    FDMN D 3 A_SetTranslucent(0.7,0)
    FDMN D 3 A_SetTranslucent(0.6,0)
    FDMN D 3 A_SetTranslucent(0.5,0)
    FDMN D 3 A_SetTranslucent(0.4,0)
    FDMN D 3 A_SetTranslucent(0.3,0)
    FDMN D 3 A_SetTranslucent(0.2,0)
    FDMN D 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(0,0)
    TNT1 A 0 A_NoBlocking
    TNT1 A -1
    stop
  Crash:
	TNT1 A 0 A_JumpIfInventory("EnemyZorched",1,"ZorchCrash")
    FDMN M 5 A_FaceTarget
    FDMN N 5 A_NoBlocking
    FDMN O 5 A_FiredSplotch
    Stop
  ZorchCrash:
    TNT1 A 5 A_SetTranslucent(0,0)
    TNT1 A 5 A_NoBlocking
    TNT1 A -1
	stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_Gravity
	TNT1 A 0 A_GiveInventory("EnemyZorched",1)
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	FDMN R 0 A_UnsetSolid
    FDMN R 70 A_GenericFreezeDeath
    FDMN R 0 A_IceGuyDie
    FDMN R 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	FDMN D 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	FDMN D 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR Ettin2 : Ettin replaces Ettin
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    ETTN ABCD 5 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	ETTN H 3 A_SpawnItem("ZorchEffectSmall")
    ETTN H 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_PlaySound("PuppyBeat")
    ETTN H 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    ETTN H 3 A_SetTranslucent(0.7,0)
    ETTN H 3 A_SetTranslucent(0.6,0)
    ETTN H 3 A_SetTranslucent(0.5,0)
    ETTN H 3 A_SetTranslucent(0.4,0)
    ETTN H 3 A_SetTranslucent(0.3,0)
    ETTN H 3 A_SetTranslucent(0.2,0)
    ETTN H 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	ETTN R 0 A_UnsetSolid
    ETTN R 70 A_GenericFreezeDeath
    ETTN R 0 A_IceGuyDie
    ETTN R 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	ETTN H 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	ETTN H 16 A_Pain
	Goto See
  Melee:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Melee"
}
}

ACTOR Centaur2 : Centaur replaces Centaur
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    CENT ABCD 4 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	CENT G 3 A_SpawnItem("ZorchEffectSmall")
    CENT G 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_PlaySound("PuppyBeat")
    CENT G 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    CENT G 3 A_SetTranslucent(0.7,0)
    CENT G 3 A_SetTranslucent(0.6,0)
    CENT G 3 A_SetTranslucent(0.5,0)
    CENT G 3 A_SetTranslucent(0.4,0)
    CENT G 3 A_SetTranslucent(0.3,0)
    CENT G 3 A_SetTranslucent(0.2,0)
    CENT G 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	CENT U 0 A_UnsetSolid
    CENT U 70 A_GenericFreezeDeath
    CENT U 0 A_IceGuyDie
    CENT U 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	CENT G 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	CENT G 16 A_Pain
	Goto See
  Melee:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Melee"
}
}

ACTOR CentaurLeader2 : CentaurLeader replaces CentaurLeader
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    CENT ABCD 4 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	CENT G 3 A_SpawnItem("ZorchEffectSmall")
    CENT G 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_PlaySound("PuppyBeat")
    CENT G 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    CENT G 3 A_SetTranslucent(0.7,0)
    CENT G 3 A_SetTranslucent(0.6,0)
    CENT G 3 A_SetTranslucent(0.5,0)
    CENT G 3 A_SetTranslucent(0.4,0)
    CENT G 3 A_SetTranslucent(0.3,0)
    CENT G 3 A_SetTranslucent(0.2,0)
    CENT G 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	CENT U 0 A_UnsetSolid
    CENT U 70 A_GenericFreezeDeath
    CENT U 0 A_IceGuyDie
    CENT U 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	CENT G 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	CENT G 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR CentaurFX2 : CentaurFX replaces CentaurFX { +THRUGHOST }

ACTOR Demon1B : Demon1 replaces Demon1
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    DEMN ABCD 4 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	DEMN E 4 A_SpawnItem("ZorchEffectBig")
    DEMN E 4 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    DEMN E 4 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    DEMN E 4 A_SetTranslucent(0.7,0)
    DEMN E 4 A_SetTranslucent(0.6,0)
    DEMN E 4 A_SetTranslucent(0.5,0)
    DEMN E 4 A_SetTranslucent(0.4,0)
    DEMN E 4 A_SetTranslucent(0.3,0)
    DEMN E 4 A_SetTranslucent(0.2,0)
    DEMN E 4 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	DEMN Q 0 A_UnsetSolid
    DEMN Q 70 A_GenericFreezeDeath
    DEMN Q 0 A_IceGuyDie
    DEMN Q 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	DEMN E 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	DEMN E 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR Demon1FX2 : Demon1FX1 replaces Demon1FX1 { +THRUGHOST }

ACTOR Demon2FX2 : Demon2FX1 replaces Demon2FX1 { +THRUGHOST }

ACTOR Demon2B : Demon2 replaces Demon2
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    DEM2 ABCD 4 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	DEM2 E 4 A_SpawnItem("ZorchEffectBig")
    DEM2 E 4 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    DEM2 E 4 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    DEM2 E 4 A_SetTranslucent(0.7,0)
    DEM2 E 4 A_SetTranslucent(0.6,0)
    DEM2 E 4 A_SetTranslucent(0.5,0)
    DEM2 E 4 A_SetTranslucent(0.4,0)
    DEM2 E 4 A_SetTranslucent(0.3,0)
    DEM2 E 4 A_SetTranslucent(0.2,0)
    DEM2 E 4 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	DEMN Q 0 A_UnsetSolid
    DEMN Q 70 A_GenericFreezeDeath
    DEMN Q 0 A_IceGuyDie
    DEMN Q 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	DEM2 E 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	DEM2 E 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR IceGuy2 : IceGuy replaces IceGuy
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    ICEY A 4 A_Chase
    ICEY B 4 A_IceGuyChase
    ICEY CD 4 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	ICEY A 3 A_SpawnItem("ZorchEffectSmall")
    ICEY A 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_ActiveSound
    ICEY A 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    ICEY A 3 A_SetTranslucent(0.7,0)
    ICEY A 3 A_SetTranslucent(0.6,0)
    ICEY A 3 A_SetTranslucent(0.5,0)
    ICEY A 3 A_SetTranslucent(0.4,0)
    ICEY A 3 A_SetTranslucent(0.3,0)
    ICEY A 3 A_SetTranslucent(0.2,0)
    ICEY A 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1
    stop
Death.DukeIce:
Death.DukeExplosive:
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	ICEY H 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	ICEY H 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR Serpent2 : Serpent replaces Serpent
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  Hump:
	TNT1 A 0 A_SetTranslucent(1,0)
    SSPT H 3 A_SerpentUnHide
    SSPT EFGEF 3 A_SerpentRaiseHump
    SSPT GEF 3
    SSPT GEFGE 3 A_SerpentLowerHump
    SSPT F 3 A_SerpentHide
    Goto See
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	SSPT L 3 A_SpawnItem("ZorchEffectSmall")
    SSPT L 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    SSPT L 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    SSPT L 3 A_SetTranslucent(0.7,0)
    SSPT L 3 A_SetTranslucent(0.6,0)
    SSPT L 3 A_SetTranslucent(0.5,0)
    SSPT L 3 A_SetTranslucent(0.4,0)
    SSPT L 3 A_SetTranslucent(0.3,0)
    SSPT L 3 A_SetTranslucent(0.2,0)
    SSPT L 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	SSPT [ 0 A_UnsetSolid
    SSPT [ 70 A_GenericFreezeDeath
    SSPT [ 0 A_IceGuyDie
    SSPT [ 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice
}
}

ACTOR SerpentLeader2 : SerpentLeader replaces SerpentLeader
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  Hump:
	TNT1 A 0 A_SetTranslucent(1,0)
    SSPT H 3 A_SerpentUnHide
    SSPT EFGEF 3 A_SerpentRaiseHump
    SSPT GEF 3
    SSPT GEFGE 3 A_SerpentLowerHump
    SSPT F 3 A_SerpentHide
    Goto See
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	SSPT L 3 A_SpawnItem("ZorchEffectSmall")
    SSPT L 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    SSPT L 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    SSPT L 3 A_SetTranslucent(0.7,0)
    SSPT L 3 A_SetTranslucent(0.6,0)
    SSPT L 3 A_SetTranslucent(0.5,0)
    SSPT L 3 A_SetTranslucent(0.4,0)
    SSPT L 3 A_SetTranslucent(0.3,0)
    SSPT L 3 A_SetTranslucent(0.2,0)
    SSPT L 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	SSPT [ 0 A_UnsetSolid
    SSPT [ 70 A_GenericFreezeDeath
    SSPT [ 0 A_IceGuyDie
    SSPT [ 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
Death.DukeExplosive:
	TNT1 A 0 A_JumpIfHealthLower(-3,"DukeGibStart")
	goto Death.DukeDamage
DukeGibStart:
	TNT1 A 0 A_UnsetSolid
    TNT1 A 0 A_SpawnDebris("DukeGibs1")
    TNT1 A 0 A_SpawnDebris("DukeGibs2")
    TNT1 A 0 A_SpawnDebris("DukeGibs3")
    TNT1 A 0 A_SpawnDebris("DukeGibs4")
    TNT1 A 0 A_SpawnDebris("DukeGibs5")
    TNT1 A 0 A_SpawnDebris("DukeGibs6")
	TNT1 A 0 A_PlaySound("duke/enemygib")
    TNT1 A 0 A_Jump(96,"XDeath")
	TNT1 A 0 A_GiveToTarget("DukeGibTaunt",1)
	goto XDeath
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice
}
}

ACTOR SerpentFX2 : SerpentFX replaces SerpentFX { +THRUGHOST }

ACTOR Bishop2 : Bishop replaces Bishop
{
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(1,0)
    BISH A 2 A_Chase
    BISH A 2 A_BishopChase
    BISH A 2
    BISH B 2 A_BishopChase
    BISH B 2 A_Chase
    BISH B 2 A_BishopChase
    BISH A 1 A_BishopDecide
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoGravity
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	BISH C 3 A_SpawnItem("ZorchEffectSmall")
    BISH C 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    BISH C 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    BISH C 3 A_SetTranslucent(0.7,0)
    BISH C 3 A_SetTranslucent(0.6,0)
    BISH C 3 A_SetTranslucent(0.5,0)
    BISH C 3 A_SetTranslucent(0.4,0)
    BISH C 3 A_SetTranslucent(0.3,0)
    BISH C 3 A_SetTranslucent(0.2,0)
    BISH C 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
	TNT1 A 0 A_SpawnItemEx("BishopPuff", 0,0,40, 0,0,0.5)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_Gravity
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	BISH X 0 A_UnsetSolid
    BISH X 70 A_GenericFreezeDeath
    BISH X 0 A_IceGuyDie
    BISH X 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeExplosive:
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	BISH C 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	BISH C 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR Wraith2 : Wraith replaces Wraith
{
+GHOST
+NOTDMATCH
+NOICEDEATH
Alpha 0.75
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  See:
	TNT1 A 0 A_SetTranslucent(0.75,0)
    WRTH ABCD 4 A_WraithChase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoGravity
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	WRTH H 3 A_SpawnItem("ZorchEffectSmall")
    WRTH H 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    WRTH H 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    WRTH H 3 A_SetTranslucent(0.7,0)
    WRTH H 3 A_SetTranslucent(0.6,0)
    WRTH H 3 A_SetTranslucent(0.5,0)
    WRTH H 3 A_SetTranslucent(0.4,0)
    WRTH H 3 A_SetTranslucent(0.3,0)
    WRTH H 3 A_SetTranslucent(0.2,0)
    WRTH H 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
	TNT1 A 0 A_ChangeFlag("GHOST",0)
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	WRT2 I 0 A_SetTranslucent(1,0)
	WRT2 I 0 A_UnsetSolid
    WRT2 I 70 A_GenericFreezeDeath
    WRT2 I 0 A_IceGuyDie
    WRT2 I 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeExplosive:
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	WRTH H 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	WRTH H 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

Actor WraithFX6 : WraithFX1 replaces WraithFX1 { +THRUGHOST }

ACTOR WraithBuried2 : WraithBuried replaces WraithBuried
{
+GHOST
+NOTDMATCH
+NOICEDEATH
Alpha 0.75
DamageFactor "Pistol", 3
DamageFactor "ZorchPistol", 3
DamageFactor "TimonsAxe", 1.2
DamageFactor "Normal", 1.15
DamageFactor "DragonClaw", 1.45
DamageFactor "Mace", 1.15
DamageFactor "Zorch", 1.15
DamageFactor "BFG", 1.15
DamageFactor "BFGSpray", 1.15
DamageFactor "Fire", 1.15
DamageFactor "Ice", 1.15
DamageFactor "Disintegrate", 1.15
DamageFactor "DukeDamage", 1.15
DamageFactor "DukeExplosive", 1.05
DamageFactor "DukeIce", 1.2
PainChance "MightyBoot", 255
  States
  {
  Spawn:
  Look:
	//TNT1 A 0 A_SetShootable
	//TNT1 A 0 A_SetSolid
	//TNT1 A 0 A_SetTranslucent(0.75,0)
    WRTH AB 15 A_Look
    Loop
  See:
    WRTH A 2 A_WraithRaiseInit
    WRTH A 2 A_WraithRaise
    WRTH A 2 A_FaceTarget
    WRTH BB 2 A_WraithRaise
    Goto See + 1
  Chase:
	TNT1 A 0 A_SetShootable
	TNT1 A 0 A_SetSolid
	TNT1 A 0 A_SetTranslucent(0.75,0)
    WRTH ABCD 4 A_WraithChase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoGravity
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorch","soundslot5",0,0)
	WRTH H 3 A_SpawnItem("ZorchEffectSmall")
    WRTH H 3 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    WRTH H 3 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    WRTH H 3 A_SetTranslucent(0.7,0)
    WRTH H 3 A_SetTranslucent(0.6,0)
    WRTH H 3 A_SetTranslucent(0.5,0)
    WRTH H 3 A_SetTranslucent(0.4,0)
    WRTH H 3 A_SetTranslucent(0.3,0)
    WRTH H 3 A_SetTranslucent(0.2,0)
    WRTH H 3 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1 A_QueueCorpse
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
	TNT1 A 0 A_ChangeFlag("GHOST",0)
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	WRT2 I 0 A_SetTranslucent(1,0)
	WRT2 I 0 A_UnsetSolid
    WRT2 I 70 A_GenericFreezeDeath
    WRT2 I 0 A_IceGuyDie
    WRT2 I 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeExplosive:
Death.DukeDamage:
    TNT1 A 0 A_Jump(218,"Death")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Death
Death.MightyBoot:
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
    TNT1 A 0 A_Jump(64,"Death")
	TNT1 A 0 A_GiveToTarget("DukeBootTaunt",1)
	goto Death
  Death.DukeIce:
	TNT1 A 0 A_PlaySound("duke/enemyfreeze")
	TNT1 A 0 A_GiveInventory("FreezethrowerWeakness")
    TNT1 A 0 A_Jump(218,"Ice")
	TNT1 A 0 A_GiveToTarget("DukeKillTaunt",1)
	goto Ice

  Pain.MightyBoot:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySoundEx("duke/kickhit","body",0,0)
	WRTH H 2 A_FaceTarget
	TNT1 A 0 A_Recoil(14)
	WRTH H 16 A_Pain
	Goto See
  Missile:
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
	goto "Super::Missile"
}
}

ACTOR BishopPuff2 : BishopPuff replaces BishopPuff
{
+CLIENTSIDEONLY
RenderStyle Add
Alpha 0.75
}

Actor ZorchEffectBossSmall
{
RenderStyle Add
Alpha 0.75
xscale 1.25
Speed 0
Damage 0
Radius 1
Height 1
MONSTER
-SOLID
+NOCLIP
+NOGRAVITY
+INVULNERABLE
+CLIENTSIDEONLY
+DONTSPLASH
-EXPLODEONWATER
+CANBOUNCEWATER
States
{
Spawn:
	ZFOG AABBCCDDEEFFGGHHIIJJ 4 BRIGHT A_SpawnItemEx("ZorchSparkle",0,0,random(5,64),random(-7,7),random(-7,7),random(1,3),48,128)
	stop
	}
}

Actor Dragon2 : Dragon replaces Dragon
{
+NORADIUSDMG
+NOTDMATCH
+NOICEDEATH
Health 1500
DamageFactor "Pistol", 1.75
DamageFactor "ZorchPistol", 1.75
DamageFactor "TimonsAxe", 1.5
DamageFactor "Normal", 0.9
DamageFactor "DragonClaw", 1.2
DamageFactor "Mace", 0.9
DamageFactor "Zorch", 0.9
DamageFactor "BFG", 0.5
DamageFactor "BFGSpray", 0.5
DamageFactor "Fire", 0.9
DamageFactor "Ice", 0.9
DamageFactor "Disintegrate", 0.9
DamageFactor "DukeDamage", 0.9
DamageFactor "DukeExplosive", 0.75
DamageFactor "DukeIce", 0.9
States
{
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoGravity
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchhuge","soundslot5",0,0)
	DRAG F 8 A_SpawnItem("ZorchEffectHuge")
    DRAG F 8 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_PlaySoundEx("DragonSight","soundslot6",0,2)
    DRAG F 8 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    DRAG F 8 A_SetTranslucent(0.7,0)
    DRAG F 8 A_SetTranslucent(0.6,0)
    DRAG F 8 A_SetTranslucent(0.5,0)
    DRAG F 8 A_SetTranslucent(0.4,0)
    DRAG F 8 A_SetTranslucent(0.3,0)
    DRAG F 8 A_SetTranslucent(0.2,0)
    DRAG F 8 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(0,0)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
    DRAG N 0 A_PlaySoundEx("freeze/wyvern","soundslot6",0,0)
	DRAG N 0 A_UnsetShootable
	DRAG N 0 A_GenericFreezeDeath
    DRAG N 140 A_UnsetSolid
    DRAG N 0 A_PlaySoundEx("freeze/break","soundslot6",0,0)
	DRAG FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 0 A_SpawnItemEx("IceChunk2",random(-1,1),random(-1,1),random(16,96),random(-2,2),random(-2,2),random(5,15))
    DRAG N 0 A_IceGuyDie
    DRAG N 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
Death.MightyBoot:
Death.DukeExplosive:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Death

  Death.DukeIce:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Ice
See:
TNT1 A 0 A_JumpIfInventory("DukeBossSee",1,"See2")
TNT1 A 0 A_GiveInventory("DukeBossSee",1)
TNT1 A 0 A_GiveToTarget("DukeBossSightTaunt")
See2:
    DRAG CB 5
    DRAG A 5 A_DragonInitFlight
    DRAG B 3 A_DragonFlap
    DRAG BCCDDCCBBAA 3 A_DragonFlight
    Goto See + 3
}
}

Actor Heresiarch2 : Heresiarch replaces Heresiarch
{
+NORADIUSDMG
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 1.75
DamageFactor "ZorchPistol", 1.75
DamageFactor "TimonsAxe", 1.1
DamageFactor "Normal", 1.1
DamageFactor "DragonClaw", 1.4
DamageFactor "Mace", 1.1
DamageFactor "Zorch", 1.1
DamageFactor "BFG", 0.5
DamageFactor "BFGSpray", 0.5
DamageFactor "Fire", 1.1
DamageFactor "Ice", 1.1
DamageFactor "Disintegrate", 1.1
DamageFactor "DukeDamage", 1.1
DamageFactor "DukeExplosive", 0.95
DamageFactor "DukeIce", 1.15
States
{
Death.DukeDamage:
Death.MightyBoot:
Death.DukeExplosive:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Death

  Death.DukeIce:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Ice
See:
TNT1 A 0 A_JumpIfInventory("DukeBossSee",1,"See2")
TNT1 A 0 A_GiveInventory("DukeBossSee",1)
TNT1 A 0 A_GiveToTarget("DukeBossSightTaunt")
See2:
    SORC ABCD 5 A_Chase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchhuge","soundslot5",0,0)
	SORC G 8 A_SpawnItem("ZorchEffectHuge")
    SORC G 8 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_PlaySoundEx("chex/heresizorch","soundslot6",0,2)
    SORC G 8 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    SORC G 8 A_SetTranslucent(0.7,0)
    SORC G 8 A_SetTranslucent(0.6,0)
    SORC G 8 A_SetTranslucent(0.5,0)
    SORC G 8 A_SetTranslucent(0.4,0)
    SORC G 8 A_SetTranslucent(0.3,0)
    SORC G 8 A_SetTranslucent(0.2,0)
    SORC G 8 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
	TNT1 A 0 A_SpawnItemEx("BishopPuff", 0,0,40, 0,0,0.5)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
    SORC G 0 A_PlaySoundEx("freeze/heresiarch","soundslot6",0,0)
	SORC G 0 A_UnsetShootable
	SORC G 0 A_GenericFreezeDeath
    SORC G 140 A_UnsetSolid
    SORC G 0 A_PlaySoundEx("freeze/break","soundslot6",0,0)
	SORC GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG 0 A_SpawnItemEx("IceChunk2",random(-1,1),random(-1,1),random(16,96),random(-2,2),random(-2,2),random(5,15))
    SORC G 0 A_IceGuyDie
    SORC G 1 A_IceGuyDie
	TNT1 A -1
	stop
}
}

Actor FighterBoss2 : FighterBoss replaces FighterBoss
{
+BOSS
+NORADIUSDMG
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 1.75
DamageFactor "ZorchPistol", 1.75
DamageFactor "TimonsAxe", 1.1
DamageFactor "Normal", 0.9
DamageFactor "DragonClaw", 1.2
DamageFactor "Mace", 0.9
DamageFactor "Zorch", 0.9
DamageFactor "BFG", 0.5
DamageFactor "BFGSpray", 0.5
DamageFactor "Fire", 0.9
DamageFactor "Ice", 0.9
DamageFactor "Disintegrate", 0.9
DamageFactor "DukeDamage", 0.9
DamageFactor "DukeExplosive", 0.75
DamageFactor "DukeIce", 0.9
States
{
Death.DukeDamage:
Death.MightyBoot:
Death.DukeExplosive:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Death

  Death.DukeIce:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Ice
See:
TNT1 A 0 A_JumpIfInventory("DukeBossSee",1,"See2")
TNT1 A 0 A_GiveInventory("DukeBossSee",1)
TNT1 A 0 A_GiveToTarget("DukeBossSightTaunt")
See2:
PLAY ABCD 4 A_FastChase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchhuge","soundslot5",0,0)
	PLAY G 8 A_SpawnItem("ZorchEffectBossSmall")
    PLAY G 8 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    PLAY G 8 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    PLAY G 8 A_SetTranslucent(0.7,0)
    PLAY G 8 A_SetTranslucent(0.6,0)
    PLAY G 8 A_SetTranslucent(0.5,0)
    PLAY G 8 A_SetTranslucent(0.4,0)
    PLAY G 8 A_SetTranslucent(0.3,0)
    PLAY G 8 A_SetTranslucent(0.2,0)
    PLAY G 8 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
	TNT1 A 0 A_SpawnItemEx("BishopPuff", 0,0,40, 0,0,0.5)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
    PLAY X 0 A_PlaySoundEx("freeze/zedek","soundslot6",0,0)
	PLAY X 0 A_UnsetShootable
	PLAY X 0 A_GenericFreezeDeath
    PLAY X 140 A_UnsetSolid
    PLAY X 0 A_PlaySoundEx("freeze/break","soundslot6",0,0)
	PLAY XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 0 A_SpawnItemEx("IceChunk2",random(-1,1),random(-1,1),random(16,96),random(-2,2),random(-2,2),random(5,15))
    PLAY X 0 A_IceGuyDie
    PLAY X 1 A_IceGuyDie
	TNT1 A -1
	stop
}
}

Actor FSwordMissile2 : FSwordMissile replaces FSwordMissile
{
States
  {
  Death:
    FSFX D 4 Bright
    FSFX E 3 Bright A_FSwordFlames
    FSFX F 4 Bright //A_Explode(64, 128, 0)
    FSFX G 3 Bright
    FSFX H 4 Bright
    FSFX I 3 Bright
    FSFX J 4 Bright
    FSFX KLM 3 Bright
    Stop
  }
}

Actor ClericBoss2 : ClericBoss replaces ClericBoss
{
+BOSS
+NORADIUSDMG
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 1.75
DamageFactor "ZorchPistol", 1.75
DamageFactor "TimonsAxe", 1.1
DamageFactor "Normal", 0.9
DamageFactor "DragonClaw", 1.2
DamageFactor "Mace", 0.9
DamageFactor "Zorch", 0.9
DamageFactor "BFG", 0.75
DamageFactor "BFGSpray", 0.75
DamageFactor "Fire", 0.9
DamageFactor "Ice", 0.9
DamageFactor "Disintegrate", 0.9
DamageFactor "DukeDamage", 0.9
DamageFactor "DukeExplosive", 0.75
DamageFactor "DukeIce", 0.9
States
{
Death.DukeDamage:
Death.MightyBoot:
Death.DukeExplosive:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Death

  Death.DukeIce:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Ice
See:
TNT1 A 0 A_JumpIfInventory("DukeBossSee",1,"See2")
TNT1 A 0 A_GiveInventory("DukeBossSee",1)
TNT1 A 0 A_GiveToTarget("DukeBossSightTaunt")
See2:
CLER ABCD 4 A_FastChase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchhuge","soundslot5",0,0)
	CLER H 8 A_SpawnItem("ZorchEffectBossSmall")
    CLER H 8 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    CLER H 8 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    CLER H 8 A_SetTranslucent(0.7,0)
    CLER H 8 A_SetTranslucent(0.6,0)
    CLER H 8 A_SetTranslucent(0.5,0)
    CLER H 8 A_SetTranslucent(0.4,0)
    CLER H 8 A_SetTranslucent(0.3,0)
    CLER H 8 A_SetTranslucent(0.2,0)
    CLER H 8 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
	TNT1 A 0 A_SpawnItemEx("BishopPuff", 0,0,40, 0,0,0.5)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
    CLFR Z 0 A_PlaySoundEx("freeze/traductus","soundslot6",0,0)
	CLFR Z 0 A_UnsetShootable
	CLFR Z 0 A_GenericFreezeDeath
    CLFR Z 140 A_UnsetSolid
    CLFR Z 0 A_PlaySoundEx("freeze/break","soundslot6",0,0)
	CLFR ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ 0 A_SpawnItemEx("IceChunk2",random(-1,1),random(-1,1),random(16,96),random(-2,2),random(-2,2),random(5,15))
    CLFR Z 0 A_IceGuyDie
    CLFR Z 1 A_IceGuyDie
	TNT1 A -1
	stop
}
}

Actor MageBoss2 : MageBoss replaces MageBoss
{
+BOSS
+NORADIUSDMG
+NOTDMATCH
+NOICEDEATH
DamageFactor "Pistol", 1.75
DamageFactor "ZorchPistol", 1.75
DamageFactor "TimonsAxe", 1.1
DamageFactor "Normal", 0.9
DamageFactor "DragonClaw", 1.2
DamageFactor "Mace", 0.9
DamageFactor "Zorch", 0.9
DamageFactor "BFG", 0.5
DamageFactor "BFGSpray", 0.5
DamageFactor "Fire", 0.9
DamageFactor "Ice", 0.9
DamageFactor "Disintegrate", 0.9
DamageFactor "DukeDamage", 0.9
DamageFactor "DukeExplosive", 0.75
DamageFactor "DukeIce", 0.9
States
{
Death.DukeDamage:
Death.MightyBoot:
Death.DukeExplosive:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Death

  Death.DukeIce:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Ice
See:
TNT1 A 0 A_JumpIfInventory("DukeBossSee",1,"See2")
TNT1 A 0 A_GiveInventory("DukeBossSee",1)
TNT1 A 0 A_GiveToTarget("DukeBossSightTaunt")
See2:
MAGE ABCD 4 A_FastChase
    Loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
   XDeath:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::XDeath"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchhuge","soundslot5",0,0)
	MAGE G 8 A_SpawnItem("ZorchEffectBossSmall")
    MAGE G 8 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_Scream
    MAGE G 8 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    MAGE G 8 A_SetTranslucent(0.7,0)
    MAGE G 8 A_SetTranslucent(0.6,0)
    MAGE G 8 A_SetTranslucent(0.5,0)
    MAGE G 8 A_SetTranslucent(0.4,0)
    MAGE G 8 A_SetTranslucent(0.3,0)
    MAGE G 8 A_SetTranslucent(0.2,0)
    MAGE G 8 A_SetTranslucent(0.1,0)
	TNT1 A 1 A_SetTranslucent(1,0)
	TNT1 A 0 A_SpawnItemEx("BishopPuff", 0,0,40, 0,0,0.5)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	MAGE Y 0 A_UnsetShootable
    MAGE Y 0 A_PlaySoundEx("freeze/menelkir","soundslot6",0,0)
	MAGE Y 0 A_GenericFreezeDeath
    MAGE Y 140 A_UnsetSolid
    MAGE Y 0 A_PlaySoundEx("freeze/break","soundslot6",0,0)
	MAGE YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY 0 A_SpawnItemEx("IceChunk2",random(-1,1),random(-1,1),random(16,96),random(-2,2),random(-2,2),random(5,15))
    MAGE Y 0 A_IceGuyDie
    MAGE Y 1 A_IceGuyDie
	TNT1 A -1
	stop
}
}

ACTOR MageStaffFX22 : MageStaffFX2 replaces MageStaffFX2
{
  States
  {
  Death:
    MSP2 E 4 Bright A_SetTranslucent(1,1)
    MSP2 F 5 Bright //A_Explode(80, 192, 0)
    MSP2 GH 5 Bright
    MSP2 I 4 Bright
    Stop
  }
}

Actor Korax2 : Korax replaces Korax
{
DamageFactor "Pistol", 1.75
DamageFactor "ZorchPistol", 1.75
DamageFactor "BFG", 0.5
DamageFactor "BFGSpray", 0.5
DamageFactor "DukeExplosive", 0.75
Health 10000
PainChance 10
Speed 20
+INVULNERABLE
+NORADIUSDMG
+NOTDMATCH
+NOICEDEATH
States
{
Spawn:
	TNT1 A 0 A_SetTranslucent(0,0)
	TNT1 A 80
	TNT1 A 0 ACS_ExecuteAlways(204,0,1)
	KORX A 0 A_SetTranslucent(0.1,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.2,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.3,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.4,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.5,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.6,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.7,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.8,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	KORX A 0 A_SetTranslucent(0.9,0)
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 1 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, random(1,4), 0, 129, 0)  
	TNT1 A 0 A_PlaySoundEx("KoraxVoiceGreetings","SoundSlot5",0,2)
	KORX AAAAAAAAAAAAAA 0 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, 4, 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 0 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, 4, 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 0 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, 4, 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 0 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, 4, 0, 129, 0) 
	KORX AAAAAAAAAAAAAA 0 A_SpawnItemEx ("StarSparkle", random(-32, 32), random(-32,32), random(0, 8), 0, 0, 4, 0, 129, 0) 
	KORX A 100 A_SetTranslucent(1,0)
	TNT1 A 0 A_PlaySoundEx("KoraxVoiceReady","SoundSlot5",0,2)
	KORX A 100
	TNT1 A 0 A_ChangeFlag("INVULNERABLE",0)
	KORX A 1 A_Look
	wait
Idle:
	KORX A 1 A_Look
	loop
   Death:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
     goto "Super::Death"
Death.ZorchPistol:
  Death.Zorch:
     TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_ChangeFlag("DONTGIB",1)
	TNT1 A 0 A_PlaySoundEx("chex/zorchhuge","soundslot5",0,0)
	KORX H 10 A_SpawnItem("ZorchEffectHuge")
    KORX H 10 A_SetTranslucent(0.9,0)
	TNT1 A 0 A_PlaySoundEx("chex/koraxzorch","soundslot6",0,2)
    KORX H 10 A_SetTranslucent(0.8,0)
    TNT1 A 0 A_NoBlocking
    KORX H 10 A_SetTranslucent(0.7,0)
    KORX H 10 A_SetTranslucent(0.6,0)
    KORX H 10 A_SetTranslucent(0.5,0)
    KORX H 10 A_SetTranslucent(0.4,0)
    KORX H 10 A_SetTranslucent(0.3,0)
    KORX H 10 A_SetTranslucent(0.2,0)
    KORX H 10 A_SetTranslucent(0.1,0)
	TNT1 A 0 A_KoraxBonePop
	TNT1 A 1 A_SetTranslucent(1,0)
    TNT1 A -1
    stop
  Ice:
  Death.HexenIce:
  Death.Ice:
    TNT1 A 0 A_GiveToTarget("KillCount",1)
	TNT1 A 0 A_NoBlocking
	KORX H 0 A_KoraxBonePop
	KORX H 0 A_UnsetShootable
    KORX H 0 A_PlaySoundEx("freeze/korax","soundslot6",0,0)
	KORX H 0 A_GenericFreezeDeath
    KORX H 140 A_UnsetSolid
    KORX H 0 A_PlaySoundEx("freeze/break","soundslot6",0,0)
	KORX HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 0 A_SpawnItemEx("IceChunk2",random(-1,1),random(-1,1),random(16,96),random(-2,2),random(-2,2),random(5,15))
    KORX H 0 A_IceGuyDie
    KORX H 1 A_IceGuyDie
	TNT1 A -1
	stop
Death.DukeDamage:
Death.MightyBoot:
Death.DukeExplosive:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Death

  Death.DukeIce:
	TNT1 A 0 A_GiveToTarget("DukeBossKillTaunt",1)
	goto Ice
See:
TNT1 A 0 A_JumpIfInventory("DukeBossSee",1,"See2")
TNT1 A 0 A_GiveInventory("DukeBossSee",1)
TNT1 A 0 A_GiveToTarget("DukeBossSightTaunt")
See2:

    KORX AAA 3 A_KoraxChase
    KORX B 3 A_Chase
    KORX BBB 3 A_KoraxChase
    KORX C 0 A_PlaySound("KoraxStep")
    KORX C 3 A_Chase
    KORX CCC 3 A_KoraxChase
    KORX D 3 A_Chase
    KORX DDD 3 A_KoraxChase
    KORX A 0 A_PlaySound("KoraxStep")
    KORX A 3 A_Chase
    Loop
}
}