Actor Broat
{
MONSTER
Health 900
Height 45
Radius 31
Mass 900
Speed 17
FloatSpeed 7
Painchance "Mine", 128
Painchance "SatanGuard", 0
Painchance "BloodElemental", 0
Painchance "Wicked", 0
Painchance 80
+NoBlood
+FLOORCLIP
+FLOAT
+NOGRAVITY
+QUICKTORETALIATE
+DONTHURTSPECIES
+DontHarmSpecies
Species "EleSouls"
DamageType "Broat"
DamageFactor "PDTBFG", 0.25
DamageFactor "PDTBFGTracer", 0.25
DamageFactor "PlayerDevBall", 0.125
DamageFactor "PlayerDevBall2", 0.125
DamageFactor "PlayerDevTracer", 0.125
DamageFactor "PlayerDTBFGRailgunSlug", 0.125
DamageFactor "PlayerDevTracer", 0.125
DamageFactor "LegendaryPlayer", 0.3
DamageFactor "LegendaryGuruPlayer", 0.3
//No Infighting
Damagefactor "Broat", 0.0
Damagefactor "BloodSkull", 0.0
Damagefactor "BloodElemental", 0.0
Damagefactor "Wicked", 0.0
Damagefactor "EleSouls", 0.0
DamageFactor "CacoComet", 0.0
DropItem "LifeEssence", 200, 13
DropItem "HEMArmorBonusMax13", 200
SeeSound "broat/sight"
ActiveSound "broat/active"
PainSound "broat/pain"
DeathSound "broat/death"
Obituary "%o was overheated by a Broat"
States
	{
	Spawn:
		CORS A 10 A_Look
		loop
	See:
		CORS AABBAABBAABB 2 A_Chase
		TNT1 A 0 A_Jump(80,"Rush")
		Loop
	Rush:
		TNT1 AA 0 A_Chase
		CORS A 1 A_PlaySound("PDD/blur")
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1 
		TNT1 AA 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0) 
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1  
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS A 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0) 
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS B 1 
		TNT1 A 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		CORS B 1 
		TNT1 AA 0 A_Chase
		TNT1 A 0 A_SpawnItem("DSFX3",0,0)
		TNT1 A 0 A_Jump(96,"See")
		Goto Rush
	Missile:
		TNT1 A 0
		TNT1 A 0 Healthing(5)
		TNT1 A 0 A_Jump(85,"Spread")
	Normal:
		CORS B 5 A_FaceTarget
		CORS CC 1 Bright A_FaceTarget
		TNT1 AA 0 A_CustomMissile("BroatHomer",39,0,0)
		CORS B 8
		GoTo See
	Spread:
		CORS B 5 A_FaceTarget
		CORS CC 1 Bright A_FaceTarget
		CORS CCCCCC 0 bright A_CustomMissile("BROATPL",32,random(-17.0,17.0),random(-5,5),0,random(-5,5))
		CORS B 15
		Goto See
	Pain:
		CORS A 2
		CORS A 2 A_Pain
		Goto See
	Death:
		TNT1 A 0
		CORS D 6 A_Scream
		TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
		TNT1 A 0 A_PainDie("Wicked")
		TNT1 AAA 0 A_CustomMissile("Kaboom3",35,0,random(0,360),2,random(0,360))	
		TNT1 AAA 0 A_CustomMissile("SmokeFX3",35,0,random(0,360),2,random(0,360))
		CORS GH 4
		TNT1 A 0 A_Fall
		TNT1 A 0 A_ChangeFlag(SOLID,0)
		TNT1 A 0 A_ChangeFlag(THRUACTORS,1)
		TNT1 A 0 A_TakeInventory("Tic",999999)
	Fall:
		CORS I 1 A_CheckFloor("Land")
		TNT1 A 0 A_JumpIfInventory("Tic",525,"Land")
		TNT1 A 0 A_GiveInventory("Tic",1)
		Loop
	Land:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("Tic",999999)	
		TNT1 A 0 A_ChangeFlag(CORPSE,1)
		CORS JK 3
		TNT1 A 0 A_ChangeFlag(SOLID,0)
		TNT1 A 0 A_ChangeFlag(THRUACTORS,0)
		TNT1 A 0 A_ChangeFlag(MOVEWITHSECTOR,1)
		CORS L 63000 CanRaise
		Stop
	Raise:
		TNT1 A 0
		TNT1 A 0 A_ChangeFlag(MOVEWITHSECTOR,0)
		TNT1 A 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		CORS LKJIHGD 5
		Goto See
	}
}

Actor BROATPL : NewImpBall
{
Projectile
Height 2
Radius 2
Speed 5
Damage (4*Random(1,4))
+RANDOMIZE
+DontHarmSpecies
+DontHurtSpecies
Species ""
Species "EleSouls"
Damagetype ""
Damagetype "Broat"
DeathSound "Hellion/balldth"
States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0,random(5,-5),0,0)
		TNT1 A 0 A_ScaleVelocity(50.0)
	SLoop:
		BAL1 AB 1 Bright A_SpawnItemEx("ImpBallTrail",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)	
		Loop
	}
}

Actor BroatHomer : WickedHomer
{
Damage (4*random(4,8))
Species ""
Species "EleSouls"
Damagetype ""
DamageType "Broat"
}

ACTOR DSFX3
{
PROJECTILE
Height 2
Radius 2
Speed 0
RENDERSTYLE Translucent
ALPHA 0.9
+NOINTERACTION
+CLIENTSIDEONLY
States
	{
	Spawn:
		TNT1 A 3
		CORS A 3 A_FadeOut(0.1,1)
		Wait
	}
}