ACTOR NewMinotaurFriend : MinotaurFriend replaces MinotaurFriend
{
  Radius 28
  Height 100
  Speed 20
  Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",ACTIVATOR,random(21,41))+(7*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,ACTIVATOR))/4)
  Monster
  +FLOORCLIP
  +DONTMORPH
  +NODROPOFF
  +NOBLOCKMONST
  SeeSound "minotaur/sight"
  AttackSound "minotaur/attack1"
  PainSound "minotaur/pain"
  DeathSound "minotaur/death"
  ActiveSound "minotaur/active"
  health 2500
  painchance 0
  +NOPAIN
  meleerange 164
  mass 4000
  //+NOICEDEATH
  +QUICKTORETALIATE
  +MISSILEMORE
  +DONTMORPH
  -COUNTKILL
  -TELESTOMP
  Species "Player"
  +THRUSPECIES
  -NOTARGETSWITCH
  -NORADIUSDMG
  +NEVERFAST
  /*+NODAMAGETHRUST*/
  +DONTHARMSPECIES
  RadiusDamageFactor 0.25
  DamageFactor "PhysicalPlayer", 0
	DamageFactor "FirePlayer", 0
	DamageFactor "LightningPlayer", 0
	DamageFactor "ShadowPlayer", 0
	DamageFactor "PoisonPlayer", 0
  Obituary "%o was burnt to a crisp by the Maulotaur."
  HitObituary "%o was crushed by the Maulotaur."
  Damagetype "Physical"
  Tag "Dark Servant"
  states
  {
  Spawn:
	NMTR A 0
	NMTR A 0 A_AlertMonsters
	NMTR A 0 A_GiveInventory("ImAPet",1)
	NMTR A 0 A_SetTranslucent(1,0)
	NMTR A 0 ACS_NamedExecuteAlways("WOC Monster Init",0,115,WOC_TRACERSUMMON)//increase health on higher difficulties//A_JumpIf(ACS_ExecuteWithResult(536,0,0,0)==1,"Mutate")
	Idle:
	NMTR AB 10 A_Look
    Loop
  Melee:
	NMTR U 0 A_SpawnItemEx("PetAlert")
    NMTR U 0 A_UnSetInvulnerable
	NMTR U 0 A_TakeInventory("Hammercheck", 1)
    NMTR V 8 A_FaceTarget
    NMTR W 4 A_FaceTarget
	NMTR W 4 A_PlayWeaponSound("minotaur/swing")
    NMTR X 10 A_CustomMeleeAttack (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",ACTIVATOR,random(35,55))+(10*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,ACTIVATOR))/4, "FighterHammerHitThing")
    Goto See
  Missile:
	NMTR U 0 A_SpawnItemEx("PetAlert")
    NMTR U 0 A_UnSetInvulnerable
    NMTR V 0 A_Jump(51, 2)
    NMTR V 0 A_JumpIfCloser(800, "Hammer")
	NMTR V 0 A_TakeInventory("Hammercheck", 1)
  	NMTR V 0 A_Jump(104, 2)
    NMTR V 0 A_JumpIfCloser(2000, "Charge")
    NMTR V 8
	NMTR V 0 A_PlayWeaponSound("minotaur/swing")
    NMTR Y 4 A_FaceTarget
	NMTR Z 0 A_CustomMissile("NewMinotaurFX1", 40, 0, 0)
	NMTR Z 0 A_CustomMissile("NewMinotaurFX1", 40, 0, 2.8125)
	NMTR Z 0 A_CustomMissile("NewMinotaurFX1", 40, 0, -2.8125)
	NMTR Z 0 A_CustomMissile("NewMinotaurFX1", 40, 0, 5.625)
	NMTR Z 0 A_CustomMissile("NewMinotaurFX1", 40, 0, -5.625)
    NMTR Z 9
    Goto See
  Hammer:
    NMTR U 0 A_UnSetInvulnerable
  	NMTR V 0 A_JumpIfInventory("Hammercheck", 1, "Missile")
    NMTR V 8 A_FaceTarget
    NMTR W 4 A_FaceTarget
	NMTR W 4 A_PlayWeaponSound("minotaur/swing")
	NMTR W 0 A_PlaySound("minotaur/attack3", CHAN_VOICE)
	NMTR X 0 A_PlaySound("minotaur/attack1", CHAN_WEAPON)
    NMTR X 10 A_CustomMissile("NewMinotaurFX2", 0, 0, 0)
	NMTR V 0 A_Jump(192, "HammerLoop")
    Goto See
  HammerLoop:
    NMTR X 10 A_GiveInventory("Hammercheck", 1)
    Goto Hammer
  Charge:
	NMTR U 0 A_SetInvulnerable
    NMTR U 0 A_FaceTarget
    NMTR U 0 A_SkullAttack(25)
	NMTR U 0 A_SpawnItemEx("MinoPuff",0,0,0,0,0,2)
	NMTR U 2
	NMTR U 0 A_JumpIf(z - floorz >= 15, "ChargeStop")
    goto Charge+3
   ChargeStop:
    SPOS A 0 A_Stop
    goto See
  See:
    NMTR A 0 A_UnSetInvulnerable
	NMTR A 0 A_SetTranslucent(1,0)
	NMTR A 0 A_JumpIfTargetinLOS(2, 140)
	NMTR A 0 A_Jump(50, "Giveup")
    NMTR AB 5 A_Chase
	NMTR CD 5 A_Chase
    Loop
  Giveup:
	NMTR A 0 A_ClearTarget
	Goto See
  Death:
	NMTR E 6
    NMTR E 2 A_Scream
    NMTR E 5 A_SpawnItemEx("NewMinotaurSmokeExit")
    NMTR E 5
    NMTR E 5 A_NoBlocking
    NMTR E 5
    NMTR E 5 A_SetTranslucent(0.66, 0)
    NMTR E 5 A_SetTranslucent(0.33, 0)
    NMTR E 10 A_BossDeath
    Stop
  Ice:
	"----" A 0
	"----" E 5 A_GenericFreezeDeath
	"----" E 1 A_FreezeDeathChunks
	Wait
  }
}

ACTOR NewMinotaurSmokeExit
{
  +NOBLOCKMAP
  +NOGRAVITY
  +NOTELEPORT
  RenderStyle Add
  //Alpha 0.6
  States
  {
  Spawn:
    MNSM ABCDEFGHIJIHGFEDCBA 3
    Stop
  }
}

Actor NewMinotaurFX1 : MinotaurFX1
{
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,random(3,24))+(3*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,WOCTARGET))/4)
	+MTHRUSPECIES
	/*+NODAMAGETHRUST*/
}

Actor NewMinotaurFX2 : MinotaurFX2
{
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,random(8,28))+(4*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,WOCTARGET))/4)
	+MTHRUSPECIES
	/*+NODAMAGETHRUST*/
	+FORCERADIUSDMG
	DamageType "FirePlayer"
	DeathType "Fire"
	PainType "Fire"
	States
	{
	Spawn:
		FX13 A 2 Bright A_SpawnItemEx("NewMinotaurFX3",random(-2,2),random(-2,2),0)
		Loop
	Death:
		FX13 I 4 Bright A_Explode(ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,128)+(28*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,WOCTARGET))/4, 128, 0)
		FX13 JKLM 4 Bright
		Stop
	}
}

Actor NewMinotaurFX3 : MinotaurFX3
{
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,random(8,28))+(4*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,WOCTARGET))/4)
	+MTHRUSPECIES
	/*+NODAMAGETHRUST*/
	+FORCERADIUSDMG
	DamageType "FirePlayer"
	DeathType "Fire"
	PainType "Fire"
	States
	{
	Death:
		FX13 I 4 Bright A_Explode(ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,128)+(28*ACS_ExecuteWithResult(WOC_DECORATE,STATS,CHARISMA,WOCTARGET))/4, 128, 0)
		FX13 JKLM 4 Bright
		Stop
	}
}