ACTOR Lexicon_AALI_HeadsOnAStick : HeadsOnAStick
{
	States
	{
	Spawn:
		LX50 A -1
		Stop
	}
}

ACTOR Lexicon_AALI_HeadOnAStick : HeadOnAStick
{
	States
	{
	Spawn:
		LX50 B -1
		Stop
	}
}

ACTOR Lexicon_AALI_Stalagtite : Stalagtite
{
	States
	{
	Spawn:
		LX50 C -1
		Stop
	}
}

ACTOR Lexicon_AALI_Candelabra : Candelabra
{
	States
	{
	Spawn:
		LX50 D -1
		Stop
	}
}

ACTOR Lexicon_AALI_Column : Column
{
	States
	{
	Spawn:
		LX50 E -1
		Stop
	}
}

ACTOR Lexicon_AALI_BigTree : BigTree
{
	States
	{
	Spawn:
		LX50 F -1
		Stop
	}
}

ACTOR Lexicon_AALI_TorchTree : TorchTree
{
	States
	{
	Spawn:
		LX50 G -1
		Stop
	}
}

ACTOR Lexicon_AALI_ShortRedColumn : ShortRedColumn
{
	States
	{
	Spawn:
		LX50 H -1
		Stop
	}
}

ACTOR Lexicon_AALI_SkullColumn : SkullColumn
{
	States
	{
	Spawn:
		LX50 I -1
		Stop
	}
}

ACTOR Lexicon_AALI_TallGreenColumn : TallGreenColumn
{
	States
	{
	Spawn:
		LX50 J -1
		Stop
	}
}

ACTOR Lexicon_AALI_TallRedColumn : TallRedColumn
{
	States
	{
	Spawn:
		LX50 K -1
		Stop
	}
}

ACTOR Lexicon_AALI_ShortGreenColumn : ShortGreenColumn
{
	States
	{
	Spawn:
		LX50 L -1
		Stop
	}
}

ACTOR Lexicon_AALI_PlasmaRifle : DoomWeapon
{
	Weapon.SelectionOrder 100
	Weapon.AmmoUse 1
	Weapon.AmmoGive 40
	Weapon.AmmoType "Cell"
	Weapon.SlotNumber 6
	+WEAPON.CHEATNOTWEAPON
	Inventory.PickupMessage "$GOTPLASMA"
	Tag "$TAG_PLASMARIFLE"
	States
	{
	Ready:
		PLSG A 1 A_WeaponReady
		Loop
	Deselect:
		PLSG A 1 A_Lower
		Loop
	Select:
		PLSG A 1 A_Raise
		Loop
	Fire:
		TNT1 A 0 A_GunFlash("Flash",GFF_NOEXTCHANGE)
		PLSG A 3 A_FireCustomMissile("Lexicon_AALI_PlasmaBall")
		PLSG B 20 A_ReFire
		Goto Ready
	Flash:
		TNT1 A 0 A_Light1
		PLSF A 4 Bright A_Jump(128,1)
		Goto LightDone
		PLSF B 4 Bright
		Goto LightDone
	Spawn:
		PLAS A -1
		Stop
	}
}

ACTOR Lexicon_AALI_PlasmaBall : PlasmaBall { SeeSound "AALI/DSPLASMA" }

ACTOR Lexicon_AALI_BossBrain : BossBrain
{
	States
	{
	Pain:
		BBRN B 1 A_BrainPain
		Goto Spawn
	Death:
		BBRN A 1 A_BrainScream
		BBRN AA 1 
		BBRN A -1 A_BrainDie
		stop
	}
}

ACTOR Lexicon_AALI_BossEye : BossEye
{
	DropItem "DoomImp", 255, 50
	DropItem "Demon", 255, 40
	DropItem "Spectre", 255, 30
	DropItem "PainElemental", 255, 10
	DropItem "Cacodemon", 255, 30
	DropItem "Archvile", 255, 2
	DropItem "LexiconActorSpawner14", 255, 10
	DropItem "LexiconActorSpawner16", 255, 20
	DropItem "LexiconActorSpawner15", 255, 30
	DropItem "HellKnight", 255, 24
	DropItem "BaronOfHell", 255, 10
	States
	{
	See:
		SSWV A 181 A_PlaySound("AALI/DSBOSSIT", CHAN_VOICE, 1.0, 0, ATTN_NONE)
		SSWV A 150 A_BrainSpit("Lexicon_AALI_SpawnShot")
		Wait
	}
}

ACTOR Lexicon_AALI_SpawnShot : SpawnShot { SeeSound "AALI/DSBOSPIT" }

ACTOR Lexicon_AALI_CommanderKeen : CommanderKeen
{
	Speed 8
	Radius 24
	Height 56
	ReactionTime 64
	PainChance 64
	Mass 400
	-SPAWNCEILING
	+FLOAT
	+NOBLOOD
	SeeSound "AALI/DSBOSCUB"
	PainSound "demon/pain"
	ActiveSound "AALI/DSKEENPN"
	DeathSound "AALI/DSKEENDT"
	Tag "$AALI_TAG_ALIENGUARDIAN"
	States
	{
	Spawn:
		LX51 ABCDEF 3 A_Look
		loop
	See:
		LX51 ABCDEF 3 A_Chase
		loop
	Pain:
		LX51 J 3 
		LX51 J 3 A_Pain
		goto See
	// Can't replicate how A_SkelMissile works with tics, so this'll have to do.
	Missile:
		LX51 G 8 Bright A_FaceTarget
		LX51 H 6 Bright A_FaceTarget
		LX51 I 0 A_Jump(128, "HomingMissile1")
		LX51 I 6 Bright A_CustomMissile("Lexicon_AALI_RevenantTracerDumbfire", 48)
		Goto EndMissile1
	HomingMissile1:
		LX51 I 6 Bright A_CustomMissile("Lexicon_AALI_RevenantTracerHoming", 48)
		Goto EndMissile1
	EndMissile1:
		LX51 H 6 A_FaceTarget
		LX51 I 0 A_Jump(128, "HomingMissile2")
		LX51 I 6 Bright A_CustomMissile("Lexicon_AALI_RevenantTracerDumbfire", 48)
		Goto EndMissile2
	HomingMissile2:
		LX51 I 6 Bright A_CustomMissile("Lexicon_AALI_RevenantTracerHoming", 48)
		Goto EndMissile2
	EndMissile2:
		LX51 H 6 A_FaceTarget
		LX51 I 0 A_Jump(128, "HomingMissile3")
		LX51 I 6 Bright A_CustomMissile("Lexicon_AALI_RevenantTracerDumbfire", 48)
		Goto EndMissile3
	HomingMissile3:
		LX51 I 6 Bright A_CustomMissile("Lexicon_AALI_RevenantTracerHoming", 48)
		Goto EndMissile3
	EndMissile3:
		LX51 H 6 A_FaceTarget
		Goto FinishMissile
	FinishMissile:
		LX51 G 14 Bright A_FaceTarget
		goto See
	Death:
		LX51 K 4 Bright A_Fall
		LX51 L 4 Bright A_Explode
		LX51 M 4 Bright A_Scream
		LX51 NOQ 4 Bright 
		stop
	}
}

ACTOR Lexicon_AALI_WolfensteinSS : WolfensteinSS
{
	Health 30
	Speed 14
	SeeSound "AALI/DSSSSIT" 
	ActiveSound "AALI/DSBOSCUB"
	DeathSound "AALI/DSSSDTH"
	BloodColor "89 5D A1"
	Tag "$AALI_TAG_PLASMAALIEN"
	States
	{
	Spawn:
		LX52 NO 10 A_Look
		loop
	See:
		LX52 AABBCCDD 2 A_Chase
		loop
	Pain:
		LX52 H 3 
		LX52 H 3 A_Pain
		goto See
	Missile:
		LX52 EF 10 Bright A_FaceTarget
		LX52 G 4 Bright A_CustomMissile("Lexicon_AALI_ArachnotronPlasma")
		LX52 F 4 A_FaceTarget
		LX52 G 4 Bright A_CustomMissile("Lexicon_AALI_ArachnotronPlasma")
		goto See
	Death:
	XDeath:
		LX52 I 5
		LX52 J 5 A_Scream
		LX52 K 5 A_NoBlocking
		LX52 L 5
		LX52 M -1
		Stop
	Raise:
		LX52 MLKJI 5 
		goto See
	}
}

ACTOR Lexicon_AALI_Revenant : Revenant
{
	States
	{
	Missile:
		SKEL J 1 BRIGHT A_FaceTarget 
		SKEL J 9 BRIGHT A_FaceTarget
		TNT1 A 0 A_FaceTarget
		SKEL K 0 A_Jump(128, "HomingMissile")
		SKEL K 10 A_CustomMissile("Lexicon_AALI_RevenantTracerDumbfire", 48)
		Goto EndMissile
	HomingMissile:
		SKEL K 10 A_CustomMissile("Lexicon_AALI_RevenantTracerHoming", 48)
		Goto EndMissile
	EndMissile:
		SKEL K 10 A_FaceTarget
		Goto See
	}
}

actor Lexicon_AALI_RevenantTracerDumbfire : RevenantTracer
{
	States
	{
	Spawn:
		FATB AB 2
		Loop
	Death:
		FBXP C 8
		FBXP D 6
		FBXP E 4
		Stop
	}
}

actor Lexicon_AALI_RevenantTracerHoming : RevenantTracer
{
	States
	{
	Spawn:
		FATB A 0 A_SpawnItemEx("Lexicon_AALI_RevenantTracerSmoke",0,0,0,0,0,1,0,SXF_CLIENTSIDE)
		FATB A 2 A_SeekerMissile(0, 8, SMF_LOOK|SMF_PRECISE, 256)
		FATB B 0 A_SpawnItemEx("Lexicon_AALI_RevenantTracerSmoke",0,0,0,0,0,1,0,SXF_CLIENTSIDE)
		FATB B 2 A_SeekerMissile(0, 8, SMF_LOOK|SMF_PRECISE, 256)
		Loop
	Death:
		FBXP C 8
		FBXP D 6
		FBXP E 4
		Stop
	}
}

ACTOR Lexicon_AALI_RevenantTracerSmoke : RevenantTracerSmoke
{
	States
	{	
	Spawn:
		LX50 MNOPQ 4
		Stop
	}
}

ACTOR Lexicon_AALI_Fatso : Fatso
{
	States
	{
	Spawn:
		LX54 AB 15 A_Look
		Loop
	See:
		LX54 AABBCCDDEEFF 4 A_Chase
		Loop
	Missile:
		LX54 G 20 A_FatRaise
		LX54 H 10 BRIGHT A_FatAttack1
		LX54 IG 5
		LX54 H 10 BRIGHT A_FatAttack2
		LX54 IG 5
		LX54 H 10 BRIGHT A_FatAttack3
		LX54 IG 5
		Goto See
	Pain:
		LX54 J 3
		LX54 J 3 A_Pain
		Goto See
    Death:
		LX54 K 6
		LX54 L 6 A_Scream
		LX54 M 6 A_NoBlocking
		LX54 NOPQRS 6
		LX54 T -1 A_BossDeath
		Stop
	Raise:
		LX54 R 5
		LX54 QPONMLK 5
		Goto See
	}
}

ACTOR Lexicon_AALI_Arachnotron : Arachnotron
{
	States
	{
	Spawn:
		LX53 AB 10 A_Look
		Loop
	See:
		LX53 A 20
		LX53 A 3 A_BabyMetal
		LX53 ABBCC 3 A_Chase
		LX53 D 3 A_BabyMetal
		LX53 DEEFF 3 A_Chase
		Goto See+1
	Missile:
		LX53 A 20 BRIGHT A_FaceTarget
		LX53 G 4 BRIGHT A_CustomMissile("Lexicon_AALI_ArachnotronPlasma")
		LX53 H 4 BRIGHT
		LX53 H 1 BRIGHT A_SpidRefire
		Goto Missile+1
	Pain:
		LX53 I 3
		LX53 I 3 A_Pain
		Goto See+1
	Death:
		LX53 J 20 A_Scream
		LX53 K 7 A_NoBlocking
		LX53 LMNO 7
		LX53 P -1 A_BossDeath
		Stop
    Raise:
		LX53 P 5
		LX53 ONMLKJ 5
		Goto See+1
	}
}

ACTOR Lexicon_AALI_ArachnotronPlasma : ArachnotronPlasma
{
	SeeSound "AALI/DSPLASMA"
	RenderStyle "Normal"
	States
	{
	Spawn:
		LX50 RS 5 BRIGHT
		Loop
	Death:
		LX50 TUVWX 5 BRIGHT
		Stop
	}
}