// MONSTERS //

Actor PSXZombieMan : ZombieMan Replaces ZombieMan
{
	Scale 0.92
	GibHealth 10
	AttackSound ""
	States
	{
	CheckTarget:
		POSS A 0 A_PlaySound ("grunt/sight", CHAN_AUTO)
		Goto See
	Spawn:
		POSS AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		POSS A 0 A_PlaySound ("grunt/sight", CHAN_AUTO)
		Goto See
	See:
		POSS AABBCCDD 4 A_Chase
		Loop
	Missile:
		POSS E 12 A_FaceTarget
		POSS F 0 A_PlaySound ("grunt/attack", CHAN_AUTO, 0.9)
		POSS F 10 A_CustomBulletAttack (22.5, 0, 1, random(1, 8), "PSXBulletPuff", 0)
		POSS E 10
		Goto See
	Pain:
		POSS G 3
		POSS G 3 A_PlaySound ("grunt/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		POSS H 6
		POSS I 6 A_PlaySound ("grunt/death", CHAN_AUTO)
		POSS J 6 A_NoBlocking
		POSS K 6
		POSS L -1
		Stop
	XDeath:
		POSS M 6
		POSS N 6 A_PlaySound ("misc/gibbed", CHAN_AUTO)
		POSS O 6 A_NoBlocking
		POSS PQRST 6
		POSS U -1
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXShotgunGuy : ShotgunGuy Replaces ShotgunGuy
{
	Scale 0.92
	GibHealth 15
	AttackSound ""
	States
	{
	CheckTarget:
		SPOS A 0 A_PlaySound ("shotguy/sight", CHAN_AUTO)
		Goto See
	Spawn:
		SPOS AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		SPOS A 0 A_PlaySound ("shotguy/sight", CHAN_AUTO)
		Goto See
	See:
		SPOS AABBCCDD 3 A_Chase
		Loop
	Missile:
		SPOS E 12 A_FaceTarget
		SPOS F 0 Bright A_PlaySound ("shotguy/attack", CHAN_AUTO)
		SPOS F 12 Bright A_CustomBulletAttack (22.5, 0, 3, random(1, 5), "PSXBulletPuff", 0)
		SPOS E 12
		Goto See
	Pain:
		SPOS G 3
		SPOS G 3 A_PlaySound ("shotguy/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		SPOS H 6
		SPOS I 6 A_PlaySound ("shotguy/death", CHAN_AUTO)
		SPOS J 6 A_NoBlocking
		SPOS K 6
		SPOS L -1
		Stop
	XDeath:
		SPOS M 6
		SPOS N 6 A_PlaySound ("misc/gibbed", CHAN_AUTO)
		SPOS O 6 A_NoBlocking
		SPOS PQRST 6
		SPOS U -1
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXChaingunGuy : ChaingunGuy Replaces ChaingunGuy
{
	Scale 0.92
	GibHealth 35
	AttackSound ""
	States
	{
	CheckTarget:
		CPOS A 0 A_PlaySound ("chainguy/sight", CHAN_AUTO)
		Goto See
	Spawn:
		CPOS AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		CPOS A 0 A_PlaySound ("chainguy/sight", CHAN_AUTO)
		Goto See
	See:
		CPOS AABBCCDD 3 A_Chase
		Loop
	Missile:
		CPOS E 10 A_FaceTarget
		CPOS F 0 Bright A_PlaySound ("grunt/attack", CHAN_AUTO, 0.78)
		CPOS F 4 Bright A_CustomBulletAttack (22.5, 0, 1, random(1, 5), "PSXBulletPuff", 0)
		CPOS E 0 Bright A_PlaySound ("grunt/attack", CHAN_AUTO, 0.78)
		CPOS E 4 Bright A_CustomBulletAttack (22.5, 0, 1, random(1, 5), "PSXBulletPuff", 0)
		CPOS F 2 A_MonsterRefire (40, "CheckTarget")
		Goto Missile+1
	Pain:
		CPOS G 3
		CPOS G 3 A_PlaySound ("chainguy/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		CPOS H 5
		CPOS I 5 A_PlaySound ("chainguy/death", CHAN_AUTO)
		CPOS J 5 A_NoBlocking
		CPOS KLM 5
		CPOS N -1
		Stop
	XDeath:
		CPOS O 6
		CPOS P 6 A_PlaySound ("misc/gibbed", CHAN_AUTO)
		CPOS Q 6 A_NoBlocking
		CPOS RS 6
		CPOS T -1
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXDoomImp : DoomImp Replaces DoomImp
{
	Scale 0.92
	GibHealth 30
	States
	{
	CheckTarget:
		TROO A 0 A_PlaySound ("imp/sight", CHAN_AUTO)
		Goto See
	Spawn:
		TROO AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		TROO A 0 A_PlaySound ("imp/sight", CHAN_AUTO)
		Goto See
	See:
		TROO AABBCCDD 3 A_Chase
		Loop
	Melee:
	Missile:
		TROO EF 9 A_FaceTarget
		TROO G 7 A_CustomComboAttack ("PSXDoomImpBall", 32, random(1, 8), "imp/melee", "", 1)
		Goto See
	Pain:
		TROO H 2
		TROO H 2 A_PlaySound ("imp/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		TROO I 8
		TROO J 8 A_PlaySound ("imp/death", CHAN_AUTO)
		TROO K 8
		TROO L 8 A_NoBlocking
		TROO M -1
		Stop
	XDeath:
		TROO N 6
		TROO O 6 A_PlaySound ("misc/gibbed", CHAN_AUTO)
		TROO P 6
		TROO Q 6 A_NoBlocking
		TROO RST 6
		TROO U -1
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXDemon : Demon Replaces Demon
{
	Scale 0.92
	AttackSound ""
	States
	{
	CheckTarget:
		SARG A 0 A_PlaySound ("demon/sight", CHAN_AUTO)
		Goto See
	Spawn:
		SARG AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		SARG A 0 A_PlaySound ("demon/sight", CHAN_AUTO)
		Goto See
	See:
		SARG AABBCCDD 2 A_Chase
		Loop
	Melee:
		SARG E 0 A_PlaySound ("demon/melee", CHAN_AUTO)
		SARG EF 9 A_FaceTarget
		SARG G 8 A_CustomBulletAttack (0, 0, 1, random(1, 8), "PSXBulletPuff_SargAttack", 64)
		Goto See
	Pain:
		SARG H 2
		SARG H 2 A_PlaySound ("demon/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		SARG I 9
		SARG J 9 A_PlaySound ("demon/death", CHAN_AUTO)
		SARG K 5
		SARG L 5 A_NoBlocking
		SARG M 5
		SARG N -1
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXSpectre : PSXDemon Replaces Spectre
{
	RenderStyle Add
	Alpha 0.25
}

/*  The Nightmare Spectre uses the Demon sprites with inverted colors and
    subtractive blending in the real PSX version. Subtractive blending is why
	most players claimed the Nightmare Spectre was green - it was, on a brown
	background where you commonly saw them. */
Actor PSXNightmareSpectre : PSXDemon 3000
{
	Health 300
	RenderStyle Translucent
	Alpha 0.7
	Obituary "$OB_NMSPECTREHIT"
	States
	{
	CheckTarget:
		SAR2 A 0 A_PlaySound ("demon/sight", CHAN_AUTO)
		Goto See
	Spawn:
		SAR2 AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		SAR2 A 0 A_PlaySound ("demon/sight", CHAN_AUTO)
		Goto See
	See:
		SAR2 AABBCCDD 2 A_Chase
		Loop
	Melee:
		SAR2 E 0 A_PlaySound ("demon/melee", CHAN_AUTO)
		SAR2 EF 9 A_FaceTarget
		SAR2 G 8 A_CustomBulletAttack (0, 0, 1, random(1, 8), "PSXBulletPuff_SargAttack", 64)
		Goto See
	Pain:
		SAR2 H 2
		SAR2 H 2 A_PlaySound ("demon/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		SAR2 I 9
		SAR2 J 9 A_PlaySound ("demon/death", CHAN_AUTO)
		SAR2 K 5
		SAR2 L 5 A_NoBlocking
		SAR2 M 5
		SAR2 N -1
		Stop
	Raise:
		Stop
	Crush:
		SAR2 O -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXLostSoul : LostSoul Replaces LostSoul
{
	Scale 0.92
	RenderStyle Normal
	Health 50
	+COUNTKILL
	States
	{
	Spawn:
		SKUL AB 12 Bright A_Look
		Loop
	See:
		SKUL AB 7 Bright A_Chase
		Loop
	Missile:
		SKUL C 10 Bright A_FaceTarget
		SKUL D 5 Bright A_SkullAttack
		SKUL CD 5 Bright
		Goto Missile+2
	Pain:
		SKUL E 3 Bright
		SKUL E 3 Bright A_PlaySound ("skull/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		SKUL F 7 Bright
		SKUL G 7 Bright A_PlaySound ("skull/death", CHAN_AUTO)
		SKUL H 7 Bright
		SKUL I 7 Bright A_NoBlocking
		SKUL J 7
		SKUL K 7
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXCacodemon : Cacodemon Replaces Cacodemon
{
	Scale 0.92
	States
	{
	CheckTarget:
		HEAD A 0 A_PlaySound ("caco/sight", CHAN_AUTO)
		Goto See
	Spawn:
		HEAD A 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		HEAD A 0 A_PlaySound ("caco/sight", CHAN_AUTO)
		Goto See
	See:
		HEAD A 3 A_Chase
		Loop
	Missile:
		HEAD BC 6 A_FaceTarget
		HEAD D 6 Bright A_CustomComboAttack ("PSXCacodemonBall", 32, random(1, 8), "", "", 1)
		Goto See
	Pain:
		HEAD E 3
		HEAD E 3 A_PlaySound ("caco/pain", CHAN_AUTO, 0.9)
		HEAD F 6
		Goto See
	Death:
		HEAD G 9
		HEAD H 9 A_PlaySound ("caco/death", CHAN_AUTO)
		HEAD IJ 9
		HEAD K 9 A_NoBlocking
		HEAD L -1 A_SetFloorClip
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXHellKnight : HellKnight Replaces HellKnight
{
	Scale 0.92
	Species "PSXHellKnight"
	States
	{
	CheckTarget:
		BOS2 A 0 A_PlaySound ("knight/sight", CHAN_AUTO)
		Goto See
	Spawn:
		BOS2 AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		BOS2 A 0 A_PlaySound ("knight/sight", CHAN_AUTO)
		Goto See
	See:
		BOS2 AABBCCDD 3 A_Chase
		Loop
	Melee:
	Missile:
		BOS2 EF 9 A_FaceTarget
		BOS2 G 9 A_CustomComboAttack ("PSXBaronBall", 32, random(1, 8), "baron/melee", "", 1)
		Goto See
	Pain:
		BOS2 H 2
		BOS2 H 2 A_PlaySound ("knight/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		BOS2 I 9
		BOS2 J 9 A_PlaySound ("knight/death", CHAN_AUTO)
		BOS2 K 9
		BOS2 L 9 A_NoBlocking
		BOS2 MN 9
		BOS2 O -1 A_BossDeath
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXBaronOfHell : BaronOfHell Replaces BaronOfHell
{
	Scale 0.92
	States
	{
	CheckTarget:
		BOSS A 0 A_PlaySound ("baron/sight", CHAN_AUTO)
		Goto See
	Spawn:
		BOSS AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		BOSS A 0 A_PlaySound ("baron/sight", CHAN_AUTO)
		Goto See
	See:
		BOSS AABBCCDD 3 A_Chase
		Loop
	Melee:
	Missile:
		BOSS EF 9 A_FaceTarget
		BOSS G 9 A_CustomComboAttack ("PSXBaronBall", 32, random(1, 8), "baron/melee", "", 1)
		Goto See
	Pain:
		BOSS H 2
		BOSS H 2 A_PlaySound ("baron/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		BOSS I 9
		BOSS J 9 A_PlaySound ("baron/death", CHAN_AUTO)
		BOSS K 9
		BOSS L 9 A_NoBlocking
		BOSS MN 9
		BOSS O -1 A_BossDeath
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXArachnotron : Arachnotron Replaces Arachnotron
{
	Scale 0.92
	States
	{
	CheckTarget:
		BSPI A 0 A_PlaySound ("baby/sight", CHAN_AUTO)
		Goto See
	Spawn:
		BSPI AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		BPSI A 0 A_PlaySound ("baby/sight", CHAN_AUTO)
		Goto See
	See:
		BSPI A 20
		Goto See2
	See2:
		BSPI A 0 A_PlaySound ("baby/walk", CHAN_AUTO)
		BSPI A 3 A_Chase
		BSPI A 4 A_Chase
		BSPI B 4 A_Chase
		BSPI B 4 A_Chase
		BSPI C 4 A_Chase
		BSPI C 4 A_Chase
		BSPI D 0 A_PlaySound ("baby/walk", CHAN_AUTO)
		BSPI D 3 A_Chase
		BSPI D 4 A_Chase
		BSPI E 4 A_Chase
		BSPI E 4 A_Chase
		BSPI F 4 A_Chase
		BSPI F 4 A_Chase
		Loop
	Missile:
		BSPI A 20 Bright A_FaceTarget
		BSPI G 5 Bright A_BspiAttack
		BSPI H 5 Bright
		BSPI H 2 Bright A_MonsterRefire (10, "CheckTarget")
		Goto Missile+1
	Pain:
		BSPI I 3
		BSPI I 3 A_PlaySound ("baby/pain", CHAN_AUTO, 0.9)
		Goto See2
	Death:
		BSPI J 20 A_PlaySound ("baby/death", CHAN_AUTO)
		BSPI K 7 A_NoBlocking
		BSPI LMNO 7
		BSPI P -1 A_BossDeath
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXPainElemental : PainElemental Replaces PainElemental
{
	Scale 0.92
	States
	{
	CheckTarget:
		PAIN A 0 A_PlaySound ("pain/sight", CHAN_AUTO)
		Goto See
	Spawn:
		PAIN A 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		PAIN A 0 A_PlaySound ("pain/sight", CHAN_AUTO)
		Goto See
	See:
		PAIN AABBCC 4 A_Chase
		Loop
	Missile:
		PAIN DE 6 A_FaceTarget
		PAIN F 6 Bright A_FaceTarget
		PAIN F 1 Bright A_PainAttack
		Goto See
	Pain:
		PAIN G 6
		PAIN G 6 A_PlaySound ("pain/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		PAIN H 9 Bright
		PAIN I 9 Bright A_PlaySound ("pain/death", CHAN_AUTO)
		PAIN JK 9 Bright
		PAIN L 9 Bright A_PainDie
		PAIN M 9 Bright
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXRevenant : Revenant Replaces Revenant 
{
	Scale 0.92
	States
	{
	CheckTarget:
		SKEL A 0 A_PlaySound ("skeleton/sight", CHAN_AUTO)
		Goto See
	Spawn:
		SKEL AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		SKEL A 0 A_PlaySound ("skeleton/sight", CHAN_AUTO)
		Goto See
	See:
		SKEL AABBCCDDEEFF 2 A_Chase
		Loop
	Melee:
		SKEL G 2 A_FaceTarget
		SKEL G 0 A_PlaySound ("skeleton/swing", CHAN_AUTO)
		SKEL G 6 A_FaceTarget
		SKEL H 8 A_FaceTarget
		SKEL I 8 A_SkelFist
		Goto See
	Missile:
		SKEL J 2 Bright A_FaceTarget
		SKEL J 10 Bright A_FaceTarget
		SKEL K 12 A_SkelMissile
		SKEL K 12 A_FaceTarget
		Goto See
	Pain:
		SKEL L 5
		SKEL L 5 A_PlaySound ("skeleton/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		SKEL LM 8
		SKEL N 8 A_PlaySound ("skeleton/death", CHAN_AUTO)
		SKEL O 8 A_NoBlocking
		SKEL P 8
		SKEL Q -1
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXFatso : Fatso Replaces Fatso
{
	Scale 0.92
	States
	{
	CheckTarget:
		FATT A 0 A_PlaySound ("fatso/sight", CHAN_AUTO)
		Goto See
	Spawn:
		FATT AB 15 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		FATT A 0 A_PlaySound ("fatso/sight", CHAN_AUTO)
		Goto See
	See:
		FATT AABBCCDDEEFF 4 A_Chase
		Loop
	Missile:
		FATT G 0 A_PlaySound ("fatso/raiseguns", CHAN_AUTO)
		FATT G 20 A_FaceTarget
		FATT H 12 Bright A_FatAttack1
		FATT IG 5 A_FaceTarget
		FATT H 12 Bright A_FatAttack2
		FATT IG 5 A_FaceTarget
		FATT H 12 Bright A_FatAttack3
		FATT IG 5 A_FaceTarget
		Goto See
	Pain:
		FATT J 3
		FATT J 3 A_PlaySound ("fatso/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		FATT K 5
		FATT L 5 A_PlaySound ("fatso/death", CHAN_AUTO)
		FATT M 5 A_NoBlocking
		FATT NOPQRS 5
		FATT T -1 A_BossDeath
		Stop
	Raise:
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXSpiderMastermind : SpiderMastermind Replaces SpiderMastermind
{
	Scale 0.92
	AttackSound ""
	States
	{
	CheckTarget:
		SPID A 0 A_PlaySound ("spider/sight", CHAN_AUTO, 1.0, 0, ATTN_NONE)
		Goto See
	Spawn:
		SPID AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		SPID A 0 A_PlaySound ("spider/sight", CHAN_AUTO, 1.0, 0, ATTN_NONE)
		Goto See
	See:
		SPID A 0 A_PlaySound ("spider/walk", CHAN_AUTO)
		SPID A 3 A_Chase
		SPID A 4 A_Chase
		SPID B 4 A_Chase
		SPID B 4 A_Chase
		SPID C 0 A_PlaySound ("spider/walk", CHAN_AUTO)
		SPID C 3 A_Chase
		SPID C 4 A_Chase
		SPID D 4 A_Chase
		SPID D 4 A_Chase
		SPID E 0 A_PlaySound ("spider/walk", CHAN_AUTO)
		SPID E 3 A_Chase
		SPID E 4 A_Chase
		SPID F 4 A_Chase
		SPID F 4 A_Chase
		Loop
	Missile:
		SPID A 20 Bright A_FaceTarget
		SPID G 0 Bright A_PlaySound ("grunt/attack", CHAN_AUTO, 0.78)
		SPID G 5 Bright A_CustomBulletAttack (22.5, 0, 3, random(1, 5), "PSXBulletPuff", 0)
		SPID H 0 Bright A_PlaySound ("grunt/attack", CHAN_AUTO, 0.78)
		SPID H 5 Bright A_CustomBulletAttack (22.5, 0, 3, random(1, 5), "PSXBulletPuff", 0)
		SPID H 2 Bright A_MonsterRefire (10, "CheckTarget")
		Goto Missile+1
	Pain:
		SPID I 3
		SPID I 3 A_PlaySound ("spider/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		SPID J 20 A_PlaySound ("spider/death", CHAN_AUTO, 1.0, 0, ATTN_NONE)
		SPID K 7 A_NoBlocking
		SPID LMNOPQR 7
		SPID S 7
		SPID S -1 A_BossDeath
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}

Actor PSXCyberdemon : Cyberdemon Replaces Cyberdemon
{
	Scale 0.92
	States
	{
	CheckTarget:
		CYBR A 0 A_PlaySound ("cyber/sight", CHAN_AUTO, 1.0, 0, ATTN_NONE)
		Goto See
	Spawn:
		CYBR AB 12 A_LookEx (LOF_NOSEESOUND, 0, 0, 0, 0, "PlaySeeSound")
		Loop
	PlaySeeSound:
		CYBR A 0 A_PlaySound ("cyber/sight", CHAN_AUTO, 1.0, 0, ATTN_NONE)
		Goto See
	See:
		CYBR A 0 A_PlaySound ("cyber/hoof", CHAN_AUTO)
		CYBR A 3 A_Chase
		CYBR A 4 A_Chase
		CYBR B 4 A_Chase
		CYBR B 4 A_Chase
		CYBR C 4 A_Chase
		CYBR C 4 A_Chase
		CYBR C 0 A_PlaySound ("cyber/hoof2", CHAN_AUTO)
		CYBR D 4 A_Chase
		CYBR D 4 A_Chase
		Loop
	Missile:
		CYBR E 7 A_FaceTarget
		CYBR F 14 A_CyberAttack
		CYBR E 14 A_FaceTarget
		CYBR F 14 A_CyberAttack
		CYBR E 14 A_FaceTarget
		CYBR F 14 A_CyberAttack
		Goto See
	Pain:
		CYBR G 10 A_PlaySound ("cyber/pain", CHAN_AUTO, 0.9)
		Goto See
	Death:
		CYBR H 12
		CYBR I 12 A_PlaySound ("cyber/death", CHAN_AUTO, 1.0, 0, ATTN_NONE)
		CYBR JKL 12
		CYBR M 12 A_NoBlocking
		CYBR NO 12
		CYBR P 30
		CYBR P -1 A_BossDeath
		Stop
	Crush:
		POL5 A -1 A_PlaySound ("misc/crushed", CHAN_AUTO)
		Stop
	}
}