//----------------------------MODIFIED CLASSES
Actor BasePlayerPawn : PlayerPawn
{
	Species "Player"
	Radius 16
	Height 64
	PainChance 256
	Speed 1
	
	+NOSKIN
	+THRUSPECIES
	+NOICEDEATH
	+DONTBLAST
	-NODAMAGETHRUST
	+DONTHARMSPECIES
	+QUICKTORETALIATE
	+NOTHRUSTWHENINVUL
	
	Player.JumpZ 9
	Player.Viewheight 48
	Player.ForwardMove 2.0,1.0
	Player.SideMove 2.0,1.0
	Player.MaxHealth 99999
	Player.HexenArmor 0, 0, 0, 0, 0
	Player.DamageScreenColor "Black", 0

	RadiusDamageFactor 0.25
	DamageFactor AcolyteHealing, 0
	Damagefactor "Suicide", 1000
	Damagefactor "Telefrag", 1000
	States
	{
	Pain:
	Pain.Physical:
		TNT1 A 0 A_SetBlend("Red",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Fire:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Ice:
		TNT1 A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Lightning:
		TNT1 A 0 A_SetBlend("SkyBlue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Poison: Pain.PoisonCloud: Pain.Slime: Pain.Nature:
		TNT1 A 0 A_SetBlend("Green",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Holy:
		TNT1 A 0 A_SetBlend("Goldenrod",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Shadow:
		TNT1 A 0 A_SetBlend("Purple",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.Arcane:
		TNT1 A 0 A_SetBlend("LightSlateBlue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto PainAnim
	Pain.PoisonTrue:
		TNT1 A 0 A_SetBlend("Green",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH2)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH2,1))
		Goto PainAnim
	Pain.ManaDrain:
		TNT1 A 0 A_TakeInventory("Mana1", 5)
		TNT1 A 0 A_TakeInventory("Mana2", 5)
		Goto Pain.Holy
	Death:
	Death.Physical:
	Death.TeleFrag:
	Death.Suicide:
		TNT1 A 0 A_SetBlend("Red",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto DeathAnim
	Death.Lightning:
		TNT1 A 0 A_SetBlend("SkyBlue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto DeathAnim
	Death.Poison: Death.PoisonCloud: Death.Slime: Death.Nature: Death.PoisonTrue:
		TNT1 A 0 A_SetBlend("Green",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto DeathAnim
	Death.Holy: Death.ManaDrain:
		TNT1 A 0 A_SetBlend("Goldenrod",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto DeathAnim
	Death.Shadow:
		TNT1 A 0 A_SetBlend("Purple",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto DeathAnim
	Death.Arcane:
		TNT1 A 0 A_SetBlend("LightSlateBlue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto DeathAnim
	XDeath:
		TNT1 A 0 A_SetBlend("Red",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		Goto XDeathAnim
	}
}

Actor BaseHexenPawn : BasePlayerPawn
{
	Player.Viewheight 48
}

Actor BaseDoomPawn : BasePlayerPawn
{
	Scale 0.85
	Height 56
	Player.ColorRange 112, 127
	Player.ViewHeight 44
	Player.Viewheight 48
}

Actor BaseHereticPawn : BaseDoomPawn
{
	Player.ColorRange 209, 224
}

Actor BaseFighterPlayer : BasePlayerPawn Replaces FighterPlayer
{	
	Health 130
	PainSound "PlayerFighterPain"
	Player.SpawnClass "Fighter"
	Player.SoundClass "Fighter"
	Player.DisplayName "Fighter"
	Player.ScoreIcon "FITEFACE"
	Player.Portrait "P_FWALK1"
	
	Player.StartItem "CurrentMaxHealth", 130
	Player.StartItem "ImAFighter"
	Player.StartItem "SpikedGauntlets",1
	Player.StartItem "Level",1
	Player.StartItem "MP",22
	Player.StartItem "Strength",15
	Player.StartItem "Agility",12
	Player.StartItem "Constitution",15
	Player.StartItem "Wisdom",5
	Player.StartItem "Intellect",5
	Player.StartItem "Charisma",10
	Player.StartItem "LvlUp",1
	
	States
	{
	Spawn:
		FIGH A -1
		Loop
	See:
		FIGH A 0 A_JumpIfInventory("IsVanguard",1,"SeeVanguard")
		FIGH ABCD 4
		Goto Spawn
	SeeVanguard:
		FIGH A 0 A_GiveInventory("PresenceItem")
		FIGH ABCD 4
		Goto Spawn
	Missile:
	Melee:
		FIGH E 0 A_GiveInventory("BracersOfForceActivate")
		FIGH EF 8
		Goto Spawn
	PainAnim:
		FIGH G 0 A_GiveInventory("ConcentrationItem", 1)
		FIGH G 0 A_JumpIfInventory("IsVanguard",1,"PainAnimVanguard")
		FIGH G 4
		FIGH G 4 A_Pain
		Goto Spawn
	PainAnimVanguard:
		FIGH G 4 A_GiveInventory("TemperanceItem", 1)
		FIGH G 4 A_Pain
		Goto Spawn
	Pain.ManaDrain:
		FIGH G 0 A_TakeInventory("Mana1", 5)
		FIGH G 0 A_TakeInventory("Mana2", 5)
		Goto Pain.Holy
	DeathAnim:
		TNT1 A 0 A_JumpIfHealthLower(-ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXHEALTH)/2,"XDeathAnim")
		FIGH H 6
		FIGH I 6 A_PlayerScream
		FIGH JK 6
		FIGH L 6 A_NoBlocking
		FIGH M 6
		FIGH N -1
		Stop
	XDeathAnim:
		FIGH O 0 A_SpawnItem("GIBBER")
		FIGH O 5 A_PlayerScream
		FIGH P 5
		FIGH R 5 A_NoBlocking
		FIGH STUV 5
		FIGH W -1
		Stop
	Ice:
		NULL A 0 A_NoBlocking
		NULL A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		NULL A 0 A_PlaySound("misc/freeze")
		NULL A 1 A_SpawnItemEx("BaseFighterIceCorpse",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSCALE)
		NULL AA -1
		Stop
	Burn:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		FDTH A 5 BRIGHT A_PlaySound("*burndeath")
		FDTH B 4 BRIGHT
		FDTH G 5 BRIGHT
		FDTH H 4 BRIGHT A_PlayerScream
		FDTH I 5 BRIGHT
		FDTH J 4 BRIGHT
		FDTH K 5 BRIGHT
		FDTH L 4 BRIGHT
		FDTH M 5 BRIGHT
		FDTH N 4 BRIGHT
		FDTH O 5 BRIGHT
		FDTH P 4 BRIGHT
		FDTH Q 5 BRIGHT
		FDTH R 4 BRIGHT
		FDTH S 5 BRIGHT A_NoBlocking
		FDTH T 4 BRIGHT
		FDTH U 5 BRIGHT
		FDTH V 4 BRIGHT
		ACLO E 35 A_CheckPlayerDone
		Wait
		ACLO E 8
		Stop
	}
}

Actor BaseFighterIceCorpse
{
	Radius 16
	Height 64
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		FIGH G 0
		FIGH G 0 A_Die("Ice")
		FIGH G 1 A_IceGuyDie
		FIGH G -1
		Stop
	Ice:
		FIGH G 5 A_GenericFreezeDeath
		FIGH G 1 A_FreezeDeathChunks
		wait
	}
}

Actor BaseClericPlayer : BasePlayerPawn Replaces ClericPlayer
{
	Health 100
	PainSound "PlayerClericPain"
	Player.DisplayName "Cleric"
	Player.SpawnClass "Cleric"
	Player.SoundClass "Cleric"
	Player.DisplayName "Cleric"
	Player.ScoreIcon "CLERFACE"
	Player.InvulnerabilityMode "Ghost"
	Player.Portrait "P_CWALK1"
	
	Player.StartItem "CurrentMaxHealth", 100
	Player.StartItem "ImACleric"
	Player.StartItem "MaceOfContrition",1
	Player.StartItem "Level",1
	Player.StartItem "MP",37
	Player.StartItem "Strength",12
	Player.StartItem "Agility",8
	Player.StartItem "Constitution",13
	Player.StartItem "Wisdom",8
	Player.StartItem "Intellect",7
	Player.StartItem "Charisma",14
	Player.StartItem "LvlUp",1
	Player.ColorRange 146, 163
	
	states
	{
	Spawn:
		CLER A -1
		Loop
	PainAnim:
		CLER H 0 A_JumpIfInventory("Retribution", random(1,10), 2)
		CLER H 0 A_Jump(256,2)
		CLER H 0 A_CustomMissile("RetributionBall")//A_TakeInventory("ClericArmorBonus", 1)
		CLER H 4
		CLER H 4 A_Pain
		Goto Spawn 
	See:
		CLER ABCD 4
		Goto Spawn
	Missile:
	Melee:
		CLER E 0 A_GiveInventory("BracersOfForceActivate")
		CLER EF 5
		CLER G 6
		Goto Spawn
	DeathAnim:
		TNT1 A 0 A_JumpIfHealthLower(-ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXHEALTH)/2,"XDeathAnim")
		CLER I 6
		CLER J 6 A_PlayerScream
		CLER KL 6
		CLER M 6 A_NoBlocking
		CLER NOP 6
		CLER Q -1
		Stop
	XDeathAnim:
		CLER R 0 A_SpawnItem("GIBBER")
		CLER R 5 A_PlayerScream
		CLER S 5
		CLER T 5 A_NoBlocking
		CLER UVWXYZ 5
		CLER [ -1
		Stop
	Ice:
		NULL A 0 A_NoBlocking
		NULL A 0 A_PlaySound("misc/freeze")
		NULL A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		NULL A 1 A_SpawnItemEx("BaseClericIceCorpse",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		NULL AA -1
		Stop
	Burn:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		FDTH C 5 Bright A_PlaySound("*burndeath")
		FDTH D 4 Bright
		FDTH G 5 Bright
		FDTH H 4 Bright A_PlayerScream
		FDTH I 5 Bright
		FDTH J 4 Bright
		FDTH K 5 Bright
		FDTH L 4 Bright
		FDTH M 5 Bright
		FDTH N 4 Bright
		FDTH O 5 Bright
		FDTH P 4 Bright
		FDTH Q 5 Bright
		FDTH R 4 Bright
		FDTH S 5 Bright A_NoBlocking
		FDTH T 4 Bright
		FDTH U 5 Bright
		FDTH V 4 Bright
		ACLO E 35 A_CheckPlayerDone
		Wait
		ACLO E 8
		Stop
	}
}

Actor BaseClericIceCorpse
{
	Radius 16
	Height 64
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		CLER H 0
		CLER H 0 A_Die("Ice")
		CLER H 1 A_IceGuyDie
		CLER H -1
		Stop
	Ice:
		CLER H 5 A_GenericFreezeDeath
		CLER H 1 A_FreezeDeathChunks
		wait
	}
}

Actor BaseMagePlayer : BasePlayerPawn Replaces MagePlayer
{
	Health 55
	PainSound "PlayerMagePain"
	Player.DisplayName "Mage"
	Player.SpawnClass "Mage"
	Player.SoundClass "Mage"
	Player.DisplayName "Mage"
	Player.ScoreIcon "MAGEFACE"
	Player.InvulnerabilityMode "Reflective"
	Player.Portrait "P_MWALK1"
	
	Player.StartItem "CurrentMaxHealth", 55
	Player.StartItem "ImAMage"
	Player.StartItem "SapphireWand",1
	Player.StartItem "Level",1
	Player.StartItem "MP",100
	Player.StartItem "Strength",7
	Player.StartItem "Agility",7
	Player.StartItem "Constitution",7
	Player.StartItem "Wisdom",14
	Player.StartItem "Intellect",15
	Player.StartItem "Charisma",10
	Player.StartItem "LvlUp",1
	Player.ColorRange 146, 163
	
	states
	{
	Spawn:
		MAGE A -1
		Loop
	See:
		MAGE ABCD 4
		Goto Spawn
	Missile:
	Melee:
		MAGE E 0 A_GiveInventory("BracersOfForceActivate")
		MAGE EF 8
		Goto Spawn
	PainAnim:
		MAGE G 0 A_JumpIfInventory("IsPyro",1,"Pyro")
		MAGE G 0 A_JumpIfInventory("IsArchon",1,"Archon")
		MAGE G 4
		MAGE G 4 A_Pain
		Goto Spawn
	Pyro:
		MAGE G 4 A_CustomMissile("PyroArmorBullet")
		MAGE G 4 A_Pain
		Goto Spawn
	Archon:
		MAGE G 4 A_GiveInventory("MP", ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXMAGICK,ACTIVATOR)/40)
		MAGE G 4 A_Pain
		Goto Spawn
	DeathAnim:
		TNT1 A 0 A_JumpIfHealthLower(-ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXHEALTH)/2,"XDeathAnim")
		MAGE H 6
		MAGE I 6 A_PlayerScream
		MAGE JK 6
		MAGE L 6 A_NoBlocking
		MAGE M 6
		MAGE N -1
		Stop
	XDeathAnim:
		MAGE O 0 A_SpawnItem("GIBBER")
		MAGE O 5 A_PlayerScream
		MAGE P 5
		MAGE R 5 A_NoBlocking
		MAGE STUVW 5
		MAGE X -1
		Stop
	Burn:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		FDTH E 5 Bright A_PlaySound("*burndeath")
		FDTH F 4 Bright
		FDTH G 5 Bright
		FDTH H 4 Bright A_PlayerScream
		FDTH I 5 Bright
		FDTH J 4 Bright
		FDTH K 5 Bright
		FDTH L 4 Bright
		FDTH M 5 Bright
		FDTH N 4 Bright
		FDTH O 5 Bright
		FDTH P 4 Bright
		FDTH Q 5 Bright
		FDTH R 4 Bright
		FDTH S 5 Bright A_NoBlocking
		FDTH T 4 Bright
		FDTH U 5 Bright
		FDTH V 4 Bright
		ACLO E 35 A_CheckPlayerDone
		Wait
		ACLO E 8
		Stop
	Ice:
		NULL A 0 A_NoBlocking
		NULL A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		NULL A 0 A_PlaySound("misc/freeze")
		NULL A 1 A_SpawnItemEx("BaseMageIceCorpse",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		NULL AA -1
		Stop
	}
}

Actor BaseMageIceCorpse
{
	Radius 16
	Height 64
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		MAGE G 0
		MAGE G 0 A_Die("Ice")
		MAGE G 1 A_IceGuyDie
		MAGE G -1
		Stop
	Ice:
		MAGE G 5 A_GenericFreezeDeath
		MAGE G 1 A_FreezeDeathChunks
		wait
	}
}

Actor BaseHunterPlayer : BaswPlayerPawn
{
	Health 85
	PainSound "HUNTPN2"
	Player.DisplayName "Hunter"
	Player.StartItem "CurrentMaxHealth", 85
	Player.SoundClass "Hunter"
	Player.SpawnClass "Cleric"
	Player.InvulnerabilityMode "Ghost"
	Player.Portrait P_HWALK1
	
	Player.StartItem "ImAHunter"
	Player.StartItem "Machete",1
	Player.StartItem "Level",1
	Player.StartItem "MP",54
	Player.StartItem "Strength",10
	Player.StartItem "Agility",14
	Player.StartItem "Constitution",10
	Player.StartItem "Wisdom",10
	Player.StartItem "Intellect",8
	Player.StartItem "Charisma",10
	Player.StartItem "LvlUp",1
	Player.ColorRange 51, 66
	
	states
	{
	Spawn:
		HUNT A -1
		Loop
	See:
		HUNT ABCD 4 
		Goto Spawn
	Missile:
	Melee:
		HUNT E 0 A_GiveInventory("BracersOfForceActivate")
		HUNT EE 8
		Goto Spawn
	PainAnim:
		HUNT F 4 A_GiveInventory("DuelistSpeed")
		HUNT F 4 A_Pain
		Goto Spawn
	DeathAnim:
		TNT1 A 0 A_JumpIfHealthLower(-ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXHEALTH)/2,"XDeathAnim")
		HUNT H 6
        HUNT I 6 A_PlayerScream
        HUNT JK 6
        HUNT L 6 A_NoBlocking
        HUNT MN 6
        HUNT O -1
        Stop
	XDeathAnim:
		HUNT O 0 A_SpawnItem("GIBBER")
        HUNT Q 5 A_XScream
        HUNT R 0 A_NoBlocking
        HUNT R 5
        HUNT STUVW 5
        HUNT Y -1
        Stop
	Ice:
		NULL A 0 A_NoBlocking
		NULL A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		NULL A 0 A_PlaySound("misc/freeze")
		NULL A 1 A_SpawnItemEx("BaseHunterIceCorpse",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		NULL AA -1
		Stop
	Burn:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		HUNT X 5 Bright A_PlaySound("*burndeath")
		FDTH G 5 Bright
		FDTH H 4 Bright A_PlayerScream
		FDTH I 5 Bright
		FDTH J 4 Bright
		FDTH K 5 Bright
		FDTH L 4 Bright
		FDTH M 5 Bright
		FDTH N 4 Bright
		FDTH O 5 Bright
		FDTH P 4 Bright
		FDTH Q 5 Bright
		FDTH R 4 Bright
		FDTH S 5 Bright A_NoBlocking
		FDTH T 4 Bright
		FDTH U 5 Bright
		FDTH V 4 Bright
		ACLO E 35 A_CheckPlayerDone
		Wait
		ACLO E 8
		Stop
	}
}

Actor BaseHunterIceCorpse
{
	Radius 16
	Height 64
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		HUNT F 0
		HUNT F 0 A_Die("Ice")
		HUNT F 1 A_IceGuyDie
		HUNT F -1
		Stop
	Ice:
		HUNT F 5 A_GenericFreezeDeath
		HUNT F 1 A_FreezeDeathChunks
		wait
	}
}

Actor BaseNecromancerPlayer : BasePlayerPawn
{
	Health 70
	PainSound "PlayerMagePain"
	Player.DisplayName "Necromancer"
	Player.StartItem "CurrentMaxHealth", 70
	Player.SoundClass "Mage"
	Player.SpawnClass "Mage"
	Player.InvulnerabilityMode "Reflective"
	Player.Portrait P_NWALK1
	
	Player.StartItem "ImAWarlock"
	Player.StartItem "Sickle",1
	Player.StartItem "Level",1
	Player.StartItem "MP",75
	Player.StartItem "Strength",8
	Player.StartItem "Agility",10
	Player.StartItem "Constitution",8
	Player.StartItem "Wisdom",12
	Player.StartItem "Intellect",14
	Player.StartItem "Charisma",10
	Player.StartItem "LvlUp",1
	Player.ColorRange 146, 163
	
	states
	{
	Spawn: 
		NECR A -1
		Loop
	See: 
		NECR ABCD 4
		Goto Spawn
	Melee:
	Missile:
		NECR E 8 A_GiveInventory("BracersOfForceActivate")
		NECR F 8 Bright
		Goto Spawn
	PainAnim:
		NECR G 4 
		NECR G 4 A_Pain 
		Goto Spawn
	DeathAnim:
		TNT1 A 0 A_JumpIfHealthLower(-ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXHEALTH)/2,"XDeathAnim")
		NECR H 8 
		NECR I 8 A_PlayerScream  
		NECR J 4 
		NECR K 4 A_NoBlocking 
		NECR L 4 
		NECR M -1 
		Stop
	XDeathAnim:
		NECR N 5 A_SpawnItem("GIBBER")
		NECR O 5 A_PlayerScream 
		NECR P 5 A_NoBlocking 
		NECR QR 5
		NECR S 5
		NECR TUV 5 
		NECR W -1
		Stop
	Ice:
		NULL A 0 A_NoBlocking
		NULL A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		NULL A 0 A_PlaySound("misc/freeze")
		NULL A 1 A_SpawnItemEx("BaseNecromancerIceCorpse",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		NULL AA -1
		Stop
	Burn:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		FDTH G 5 Bright A_PlaySound("*burndeath")
		FDTH H 4 Bright A_PlayerScream
		FDTH I 5 Bright
		FDTH J 4 Bright
		FDTH K 5 Bright
		FDTH L 4 Bright
		FDTH M 5 Bright
		FDTH N 4 Bright
		FDTH O 5 Bright
		FDTH P 4 Bright
		FDTH Q 5 Bright
		FDTH R 4 Bright
		FDTH S 5 Bright A_NoBlocking
		FDTH T 4 Bright
		FDTH U 5 Bright
		FDTH V 4 Bright
		ACLO E 35 A_CheckPlayerDone
		Wait
		ACLO E 8
		Stop
	}
}

Actor BaseNecromancerIceCorpse
{
	Radius 16
	Height 64
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		NECR G 0
		NECR G 0 A_Die("Ice")
		NECR G 1 A_IceGuyDie
		NECR G -1
		Stop
	Ice:
		NECR G 5 A_GenericFreezeDeath
		NECR G 1 A_FreezeDeathChunks
		wait
	}
}

Actor HereticNecromancerIceCorpse
{
	Radius 16
	Height 56
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		NECH G 0
		NECH G 0 A_Die("Ice")
		NECH G 1 A_IceGuyDie
		NECH G -1
		Stop
	Ice:
		NECH G 5 A_GenericFreezeDeath
		NECH G 1 A_FreezeDeathChunks
		wait
	}
}

Actor DoomNecromancerIceCorpse
{
	Radius 16
	Height 56
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		NECH G 0
		NECH G 0 A_Die("Ice")
		NECH G 1 A_IceGuyDie
		NECH G -1
		Stop
	Ice:
		NECH G 5 A_GenericFreezeDeath
		NECH G 1 A_FreezeDeathChunks
		wait
	}
}

Actor BaseAssassinPlayer : BaswPlayerPawn
{
	Health 75
	PainSound "ASSNPN2"
	Player.DisplayName "Assassin"
	Player.StartItem "CurrentMaxHealth", 75
	Player.SoundClass "Assassin"
	Player.SpawnClass "Fighter"
	Player.InvulnerabilityMode "none"
	Player.Portrait P_AWALK1
	
	Player.StartItem "ImAnAssassin"
	Player.StartItem "AssassinDagger",1
	Player.StartItem "Level",1
	Player.StartItem "MP",54
	Player.StartItem "Strength",10
	Player.StartItem "Agility",15
	Player.StartItem "Constitution",9
	Player.StartItem "Wisdom",8
	Player.StartItem "Intellect",10
	Player.StartItem "Charisma",10
	Player.StartItem "LvlUp",1
	Player.ColorRange 146, 163
	
	States
	{
	Spawn:
		ASSN A -1
		Stop
	See:
		ASSN ABCD 4
		Stop
	Missile:
	Melee:
		ASSN EF 8
		Goto Spawn
	PainAnim:
		ASSN O 4
		ASSN O 4 A_Pain
		Goto Spawn
	DeathAnim:
		TNT1 A 0 A_JumpIfHealthLower(-ACS_ExecuteWithResult(WOC_DECORATE,STATS,MAXHEALTH)/2,"XDeathAnim")
		ASSN G 6 
		ASSN H 6 A_PlayerScream
		ASSN IJ 6 
		ASSN K 6 A_NoBlocking
		ASSN LM 6
		ASSN N -1
		Stop
	XDeathAnim: 
		ASSN P 0 A_SpawnItem("GIBBER")
		ASSN P 5 A_PlayerScream
		ASSN Q 5 
		ASSN R 5 A_NoBlocking
		ASSN STUVWX 5
		ASSN Y -1
		Stop 
	Ice:
		NULL A 0 A_NoBlocking
		NULL A 0 A_SetBlend("Blue",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		NULL A 0 A_PlaySound("misc/freeze")
		NULL A 1 A_SpawnItemEx("BaseAssassinIceCorpse",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		NULL AA -1
		Stop
	Burn:
		TNT1 A 0 A_SetBlend("Orange",ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH)/100.0,ACS_ExecuteWithResult(WOC_DECORATE,MONSTERACS,PREVHEALTH,1))
		FDTH G 5 Bright A_PlaySound("*burndeath")
		FDTH H 4 Bright A_PlayerScream
		FDTH I 5 Bright
		FDTH J 4 Bright
		FDTH K 5 Bright
		FDTH L 4 Bright
		FDTH M 5 Bright
		FDTH N 4 Bright
		FDTH O 5 Bright
		FDTH P 4 Bright
		FDTH Q 5 Bright
		FDTH R 4 Bright
		FDTH S 5 Bright A_NoBlocking
		FDTH T 4 Bright
		FDTH U 5 Bright
		FDTH V 4 Bright
		ACLO E 35 A_CheckPlayerDone
		Wait
		ACLO E 8
		Stop
	}
}

Actor BaseAssassinIceCorpse
{
	Radius 16
	Height 64
	Health 1
	+SHOOTABLE
	+SOLID
	+CANPASS
	States 
	{
	Spawn:
		ASSN O 0
		ASSN O 0 A_Die("Ice")
		ASSN O 1 A_IceGuyDie
		ASSN O -1
		Stop
	Ice:
		ASSN O 5 A_GenericFreezeDeath
		ASSN O 1 A_FreezeDeathChunks
		wait
	}
}

ACTOR BaseMetamorphPlayer : BasePlayerPawn
{
	Speed 0.4
	Mass 2000
	Player.DisplayName "Bruiser"
	player.morphweapon "BruiserWeapon"
	DamageFactor "BruiserAttack",0
	Player.SoundClass "Mage"
	DamageFactor "Normal", 0.5
	States
	{
	Spawn:
		BOS4 A -1
		Loop
	See:
		BOS4 ABCD 4
		Goto Spawn
	Missile:
	Melee:
		BOS4 E 0 A_GiveInventory("BracersOfForceActivate")
		BOS4 EFG 6
		Goto Spawn
	PainAnim:
		BOS4 Q 4
		BOS4 Q 4 A_Pain 
		Goto Spawn
	DeathAnim:
		BOS4 R 6 Bright
		BOS4 S 6 Bright A_Scream 
		BOS4 T 6 Bright 
		BOS4 U 6 Bright
		BOS4 VW 6 Bright 
		BOS4 X 6 Bright A_SpawnItemEx("ArchonSoul",0,0,86,0,0,3,0,128)
		BOS4 YZ 6 Bright 
		BOZ4 Z -1 Bright
		Stop
	XDeath:
		Stop
	}
}



