Actor Asylum : PlayerPawn
{
	Mass 700
	Scale 0.15
	Health 125
	Gravity 0.0
	Player.Forwardmove 1.4
	Player.Sidemove 2.0
	Player.SoundClass "Asylum"
	Player.DisplayName "Asylum"
	Player.ScoreIcon "ASYLST"
	Player.WeaponSlot 1, AsylumVision
	Player.StartItem "AsylumVision", 1
	Player.StartItem "AsylumAmmo", 1
	Player.StartItem "AsylumAmmo2", 50
	Player.StartItem "IsGhoul", 1
	Player.StartItem "SpecialAbility", 1
	Player.ColorRange 112, 127
	Player.Maxhealth 150
	Player.ViewHeight 50
	bloodcolor "Black"
	Species "Ghoul"
	Mass 300
	Damagefactor "Asylum", 0.0
	Damagefactor "Divine", 1.2
	Damagefactor "AntiAirBolt", 1.1
	Damagefactor "RevyRifleBullet", 1.1
	Damagefactor "IlluPewpewRifle", 1.1
	Damagefactor "KarStiglitz", 1.2
	Damagefactor "railgun", 1.1
	Damagefactor "CodenameBeam", 1.1
	Damagefactor "ice", 0.8
	Damagefactor "ice2", 0.8
	Damagefactor "AltIce2", 0.8
	Damagefactor "fire2", 0.9
	Damagefactor "RenegadeFire", 0.9
	Damagefactor "AltFire2", 0.9
	DamageFactor "Grenade", 0.9
	DamageFactor "CalebDynamite", 0.9
	Damagefactor "minion", 0.0
	Damagefactor "BlueFire", 0.0
	Damagefactor "ZombieIce", 0.0
    Damagefactor "ZombiePoison", 0.0
	Damagefactor "ZombieSlaps", 0.0
	Damagefactor "Tenebra", 0.0
	Damagefactor "Judgement", 0.0
	Damagefactor "ThrottlePews", 0.8
	Player.ForwardMove 0.8
	Player.SideMove 0.7
	LimitedToTeam 1
	+NOSKIN
	+NOICEDEATH
	+NODAMAGETHRUST
	+QUICKTORETALIATE
	States
	{
	Spawn:
	    ASYL A 0 A_Settranslucent(1.0)
	    ASYL A 0 SetPlayerProperty(0,1,3)
		ASYL A 0 A_Changeflag("shootable",true)
		ASYL A 0 SetPlayerProperty(0,0,4)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 20
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		Goto Spawn
	See:
		ASYL A 0 A_JumpIfHealthLower(60,"INeedHealingSee")
		ASYL A 0 A_JumpIfInventory("AsylumActivateNormalFlightAmmo",1,"NormalAsylumFlight")
		ASYL A 0 A_Settranslucent(0.7)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 6
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.6)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
        ASYL A 2 A_Recoil(-38)
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.5)
		ASYL A 6
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.4)
		ASYL A 0 A_GiveInventory("AsylumAmmo",1)
		ASYL A 0 A_GiveInventory("AsylumAmmo2",1)
		ASYL A 2 A_Stop
		Goto Spawn
	NormalAsylumFlight:
		ASYL A 0 A_Settranslucent(0.5)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 6
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.4)
        ASYL A 2
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.3)
		ASYL A 6
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.1)
		ASYL A 0 A_Settranslucent(1.0)
		ASYL A 0 A_GiveInventory("AsylumAmmo",1)
		ASYL A 0 A_GiveInventory("AsylumAmmo2",1)
		ASYL A 2
		Goto Spawn
	INeedHealingSee:
		ASYL A 0 A_JumpIfInventory("AsylumActivateNormalFlightAmmo",1,"HealingNormalAsylumFlight")
		ASYL A 0 A_Settranslucent(0.5)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 6
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.4)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
        ASYL A 2 A_Recoil(-38)
		ASYL A 0 A_SpawnItemEx("GhoulINeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
		ASYL A 0 A_SpawnItemEx("64GhoulINeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.3)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 6
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.1)
		ASYL A 0 A_Settranslucent(1.0)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_GiveInventory("AsylumAmmo",1)
		ASYL A 0 A_GiveInventory("AsylumAmmo2",1)
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 2 A_Stop
		Goto Spawn
	HealingNormalAsylumFlight:
		ASYL A 0 A_Settranslucent(0.5)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 6
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.4)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
        ASYL A 2
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_SpawnItemEx("GhoulINeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
		ASYL A 0 A_SpawnItemEx("64GhoulINeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.3)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 6
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 0 A_Settranslucent(0.1)
		ASYL A 0 A_Settranslucent(1.0)
		ASYL A 0 A_GiveInventory("AsylumAmmo",1)
		ASYL A 0 A_GiveInventory("AsylumAmmo2",1)
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 2
		Goto Spawn
	Dancing:
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		ASYL A 0 Setplayerproperty(0,1,4)
		ASYL AAAAAAAAAAAAAAAA 1 A_Settranslucent(1.0)
		ASYL A 0 ThrustThing(angle*random(0,224), 10, 0, 0)
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		ASYL AAAAAAAAAAAAAAAA 1 A_Settranslucent(1.0)
		ASYL A 0 ThrustThing(angle*random(0,224), 10, 0, 0)
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		ASYL AAAAAAAAAAAAAAAA 1 A_Settranslucent(1.0)
		ASYL A 0 ThrustThing(angle*random(0,224), 10, 0, 0)
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		ASYL AAAAAAAAAAAAAAAA 1 A_Settranslucent(1.0)
		ASYL A 0 ThrustThing(angle*random(0,224), 10, 0, 0)
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		ASYL AAAAAAAAAAAAAAAA 1 A_Settranslucent(1.0)
		ASYL A 0 ThrustThing(angle*random(0,224), 10, 0, 0)
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		ASYL AAAAAAAAAAAAAAAA 1 A_Settranslucent(1.0)
		ASYL A 0 ThrustThing(angle*random(0,224), 10, 0, 0)
		ASYL A 1 Setplayerproperty(0,0,4)
		ASYL A 0 A_TakeInventory("AriaInfluence",10)
		Goto Spawn
	Missile:
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
		ASYL A 1 A_Stop
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
        ASYL A 2
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 A_JumpIfInventory("AriaInfluence",10,"Dancing")
	Goto Spawn
	Melee:
		ASYL A 1
	Goto Missile
	Pain:
	ASYL A 0 Setplayerproperty(0,0,4)
	TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
	ASYL A 1 A_Pain
	ASYL A 1 A_Settranslucent(0.3)
	TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
	Goto Spawn
	Pain.Vivi:
	ASYL A 0 A_SetPitch(pitch - 3.0)
	ASYL A 0 A_SetAngle(angle + (random(-50,50)/10))
	Goto Pain
	Death.LoWangVampiric:
	TNT1 A 0 A_GiveToTarget("SWLoWangBloody",1)
	TNT1 A 0 A_JumpIfInventory("BloodCurseItem",1,"Death",AAPTR_TARGET)
	TNT1 A 0 A_GiveToTarget("Health",20)
	Goto Death
	Pain.ViviMine:
	ASYL A 0 ThrustThingZ(0,70,0,0)
	Goto Pain
	Death.SkarletPistolDrain:
	TNT1 A 0 A_JumpIfInventory("BloodCurseItem",1,"Death",AAPTR_TARGET)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death
	Death.SkarletVampiric:
	TNT1 A 0 A_JumpIfInventory("BloodCurseItem",1,"Death",AAPTR_TARGET)
	TNT1 A 0 A_GiveToTarget("Health",60)
	Goto Death
	Death.DoomChainSaw:
	TNT1 A 0 A_GiveToTarget("cell",50)
	TNT1 A 0 A_GiveToTarget("RocketAmmo",5)
	TNT1 A 0 A_GiveToTarget("clip1",50)
	TNT1 A 0 A_GiveToTarget("Shell",10)
	Goto Death
	Death.D64Pistol:
	TNT1 A 0 A_GiveToTarget("D64UnmakerUpgrades",1)
	TNT1 A 0 A_GiveToTarget("Cell",75)
	TNT1 A 0 A_GiveToTarget("D64KilledCount",1)
	Goto DeathAnimAlt
	Death.Plasma:
	TNT1 A 0 A_GiveToTarget("CyborgFuel",25)
	Goto DeathAnim
	Death.Telefrag:
	Goto Death.UnmakerLaser
	Pain.GwenPlasma2:
		TNT1 A 0 A_JumpIfInventory("GwenGoddessStack",100,"GwenGoddessDeath")
		ASYL A 0 Setplayerproperty(0,0,4)
		ASYL A 0 A_Pain
		ASYL A 20 Setplayerproperty(0,1,0)
		ASYL A 2 Setplayerproperty(0,0,0)
		Goto See
	GwenGoddessDeath:
		TNT1 A 0 SetPlayerProperty(0,1,4)
		TNT1 A 0 A_SetTranslucent (1.0, 0)
		TNT1 A 0 A_SpawnItemEx("GwenTimeImplosionRing")
		TNT1 A 0 A_Playsound("Gwen/DivineExplosionSound",0,1,0,ATTN_NONE)
		ASYL A 24 SetPlayerProperty(0,1,4)
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRingDamageFX")
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRingDamage")
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRing")
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRingX")
		TNT1 A 0 A_SpawnItemEx("GwenThunderFX")
		TNT1 A 0 A_SpawnItemEx("GwenGoddessStateEXP")
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("KNThunderFX_Smoke", 0, 0, 0, 0.01 * Random(-125, 125), 0.01 * Random(-125, 125), 0.01 * Random(25, 245), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 A 0 DamageThing(100000)
		Goto Death
	Death:
	DeathAnim:
		TNT1 A 0 A_GiveToTarget("KillBeep",1)
		TNT1 A 0 A_SpawnItemEx("AdditionalGhoulDeathVFX")
		ASYL A 0 A_GiveToTarget("KilledMe",1)
		ASYL A 0 A_GiveToTarget("KilledMohoph",1)
		ASYL A 0 A_PlayerScream
		ASYL A 28 A_SetTranslucent(0.8,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL B 6 A_SetTranslucent(0.7,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL C 6 A_SetTranslucent(0.6,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL D 6 A_SetTranslucent(0.5,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL E 6 A_SetTranslucent(0.4,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL F 6 A_SetTranslucent(0.3,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL G 6 A_SetTranslucent(0.2,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL G 6 A_SetTranslucent(0.1,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
	    ASYL G 6 A_SetTranslucent(0.1,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		TNT1 A -1
		Stop
	DeathAnimAlt:
		TNT1 A 0 A_GiveToTarget("KillIndicator",1)
		TNT1 A 0 A_SpawnItemEx("AdditionalGhoulDeathVFX")
		ASYL A 0 A_GiveToTarget("KilledMe",1)
		ASYL A 0 A_GiveToTarget("KilledMohoph",1)
		ASYL A 0 A_PlayerScream
		ASYL A 28 A_SetTranslucent(0.8,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL B 6 A_SetTranslucent(0.7,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL C 6 A_SetTranslucent(0.6,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL D 6 A_SetTranslucent(0.5,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL E 6 A_SetTranslucent(0.4,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL F 6 A_SetTranslucent(0.3,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL G 6 A_SetTranslucent(0.2,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		ASYL G 6 A_SetTranslucent(0.1,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
	    ASYL G 6 A_SetTranslucent(0.1,0)
		ASYL A 0 A_CustomMissile("ArchvileFirex3", 0, 0, random(0, 360))
		TNT1 A -1
		Stop
	Death.ChexWarrior:
		ASYL A 0 A_GiveToTarget("KillIndicator",1)
		ASYL A 0 A_TakeInventory("KilledCount",999)
		ASYL A 0 A_GiveToTarget("KilledMe",1)
		ASYL A 0 A_GiveToTarget("KilledMohoph",1)
		ASYL A 0 A_SpawnItemEx("ChexCereal",0,0,32,random(2,3),momy,random(8,12),random(-180,180))
		ASYL A 0 A_GiveToTarget("ChexArmorBonus",25)
		ASYL A 0 A_GiveToTarget("ChexBoop",1)
		ASYL A 0 A_Stop
		ASYL A 0 A_NoGravity
		ASYL A 0 A_ChangeFlag("DONTGIB",1)
		ASYL A 0 A_PlaySoundEx("Teleport/Chex",7)
		ASYL A 3 A_SpawnItem("BigZorch")
		ASYL A 3 A_SetTranslucent(0.9,0)
		ASYL A 0 A_Scream
		ASYL A 3 A_SetTranslucent(0.8,0)
		ASYL A 0 A_NoBlocking
		ASYL A 3 A_SetTranslucent(0.7,0)
		ASYL A 3 A_SetTranslucent(0.6,0)
		ASYL A 3 A_SetTranslucent(0.5,0)
		ASYL A 3 A_SetTranslucent(0.4,0)
		ASYL A 3 A_SetTranslucent(0.3,0)
		ASYL A 3 A_SetTranslucent(0.2,0)
		ASYL A 3 A_SetTranslucent(0.1,0) 
		TNT1 A 1 A_SetTranslucent(1,0)
		TNT1 A -1
		Stop
	Death.CarolineDamage:
		NULL A 0 A_SpawnItemEx("CarolineHeart",0,0,32,random(2,3),momy,random(8,12),random(-180,180))
		Goto Death.UnmakerLaser
	Death.MapGibber:
		TNT1 A 0 A_PlaySound("car/hit",chan_auto)
	Death.MapGibber2:
	Death.UnmakerLaser:
		TNT1 A 0 A_GiveToTarget("KillBeep",1)
		TNT1 A 0 A_SpawnItemEx("AdditionalGhoulDeathVFX")
		TNT1 A 0 A_TakeInventory("KilledCount",999)
		TNT1 A 0 A_GiveToTarget("KilledMe",1)
		TNT1 A 0 A_GiveToTarget("KilledMohoph",1)
		TNT1 A 1
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_Gravity
		TNT1 A 0 A_CustomMissile("ArchvileFirex3", 0,0,random(0,360), 2,0)
		TNT1 A 0 A_CustomMissile("ArchvileFirex3", 0,0,random(0,360), 2,0)
		TNT1 A 0 A_CustomMissile("ArchvileFirex3", 0,0,random(0,360), 2,0)
		TNT1 A 0 A_CustomMissile("ArchvileFirex3", 0,0,random(0,360), 2,0)
		TNT1 A 0 A_CustomMissile("ArchvileFirex3", 0,0,random(0,360), 2,0)
		NULL A 1 A_SpawnItemEx("SoulGIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
		NULL A -1
		Stop
	Death.MarineShotgun:
	ASYL A 0 A_GiveToTarget("grenadeammo",1)
	ASYL A 0 A_GiveToTarget("shell",3)
	ASYL A 0 A_GiveToTarget("clip1",20)
	Goto DeathAnim
	Death.Marinemachinegun:
	ASYL A 0 A_GiveToTarget("grenadeammo",1)
	ASYL A 0 A_GiveToTarget("shell",3)
	ASYL A 0 A_GiveToTarget("clip1",20)
	Goto Deathanim
	Death.Marinepistol:
	ASYL A 0 A_GiveToTarget("grenadeammo",1)
	ASYL A 0 A_GiveToTarget("shell",3)
	ASYL A 0 A_GiveToTarget("clip1",20)
	Goto Deathanim
	Death.Grenade:
		ASYL A 0 A_GiveToTarget("KilledG",1)
		Goto DeathAnim
	Death.CrapPlasma:
		ASYL A 0 A_GiveToTarget("Unlock9",1)
		Goto DeathAnim
	Death.Ice2:
		ASYL A 0 A_GiveToTarget("KilledIce2",1)
		Goto DeathAnim
	Death.Fire2:
		ASYL A 0 A_GiveToTarget("KilledFire2",1)
		Goto DeathAnim
	Death.Railgun:
		ASYL A 0 A_GiveToTarget("KilledLightning",1)
		Goto DeathAnim
	Death.GhostTrap:
		ASYL A 0 A_GiveToTarget("KilledG",1)
		Goto DeathAnim
	Death.AltFire2:
		ASYL A 0 A_GiveToTarget("KilledAltFire2",1)
		Goto Death.Fire2
	Death.AltIce2:
		ASYL A 0 A_GiveToTarget("KilledAltIce2",1)
		Goto Death.Ice2
	Death.AltGrenade:
		ASYL A 0 A_GiveToTarget("KilledAltG",1)
		Goto Death.Grenade
	Death.Fire3:
		ASYL A 0 A_GiveToTarget("KilledFire3",1)
		Goto DeathAnim
	Death.Ice3:
		ASYL A 0 A_GiveToTarget("KilledIce3",1)
		Goto DeathAnim
	Death.Grenade2:
		ASYL A 0 A_GiveToTarget("KilledG2",1)
		Goto DeathAnim
	Pain.Drainer:
		ASYL A 0 A_GiveToTarget("Health",10)
		Goto Spawn
	Death.ChexWarriorPistol:
	Death.ChexWarriorChainsaw:
	Goto Death.ChexWarrior
	Death.RenegadeBullets:
	Death.RenegadeFire:
	Death.ArtilleryDamage:
		TNT1 A 0 A_GiveToTarget("RenegadeKillItem",1)
		Goto DeathAnimAlt
	Death.CalebDynamite:
		TNT1 A 0 A_GiveToTarget("KilledG",1)
	Death.CalebShotgun:
	Death.CalebRevolver:
		TNT1 A 0 A_GiveToTarget("Health",20)
		TNT1 A 0 A_SpawnItemEx("CalebHeart",0,0,32,random(2,3),momy,random(8,12),random(-180,180))
		TNT1 A 0 A_GiveToTarget("CalebHeartbeat",1)
		Goto DeathAnimAlt
	Pain.EngineerSaw:
	Pain.Ghosttrap:
	Pain.GBFire:
	Pain.Misty:
	Pain.GBSaw:
	Pain.GBString:
	Pain.GBNuke:
	Pain.Ice2:
	Pain.Ice:
	Pain.ElecStorm:
	Pain.AltFire2:
	Pain.AltIce2:
	Pain.Fire2:
	Pain.Doggo:
	Pain.LaraArrow:
	Pain.Wind2:
	Pain.Grenade:
	Pain.Grenade2:
	Pain.TemplarLightningRain:
	Pain.CarolineDamage:
	Pain.ChexWarrior:
	Pain.InariPlasma:
	Pain.Plasma:
	Pain.FlameProtect:
	Pain.DutchShotgun:
	Pain.KarenExplo:
	Pain.Sentinel:
	Pain.Divine:
	Pain.GwenPlasma3:
	Pain.MacheteSlicerino:
	Pain.AntiAirbolt:
	Pain.MechPewPews:
	Pain.RainbowNado:
		TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
		Goto Pain
	}
}

Actor AsylumVision : Weapon
{
	Weapon.SelectionOrder 350
	Weapon.SlotNumber 1
	Weapon.Ammotype "AsylumAmmo"
	Weapon.Ammotype2 "AsylumAmmo2"
	Weapon.Ammouse 1
	Weapon.AmmoUse2 25
	Weapon.Kickback 0
	Weapon.YAdjust 0
	Inventory.icon "TNT1A0"
	+INVENTORY.UNDROPPABLE
	+WEAPON.MELEEWEAPON
	+WEAPON.DONTBOB
	+WEAPON.NOAUTOAIM
	+WEAPON.ALT_AMMO_OPTIONAL
	
	States
	{
	Spawn:
		LYSA A 1
		Stop
	Ready:
		LYSA A 0
		LYSA A 1 A_WeaponReady
		LYSA A 0 A_JumpIfInventory("CyborgDashCheck",1,"ActivateNormalFlight")
		Loop
	Deselect:
		LYSA A 1 A_Lower
		Loop
	Select:
		LYSA A 1 A_Raise
		Goto Select
	Fire:
	LYSA A 0 A_jump(256,"Crashmimic","Ivymimic","Shosannamimic","magemimic","huntermimic","cyborgmimic","Geraldinemimic","InariMimic","Terminatormimic","Darkpriestessmimic","SeriousSamMimic","Strifemimic","64Mimic")
		Crashmimic:
		LYSA A 5 Bright
		LYSA A 0 Bright a_firecustommissile("StunnerBallx", 0, 1, 50, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, 60, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, 40, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, 50, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, 50, 10)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, 50, -10)
		LYSA A 0 Bright a_firecustommissile("StunnerBallx", 0, 0, -50, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, -60, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, -40, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, -50, 0)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, -50, 10)
		LYSA A 0 Bright a_firecustommissile("PlasmaBolterShot2x", 0, 0, -50, -10)
		LYSA F 0 Bright A_FireCustomMissile("PlasmaBolterShot2x", 0, 0, 10, 0)
		LYSA F 0 Bright A_FireCustomMissile("PlasmaBolterShot2x", 0, 0, -10, 0)
		LYSA F 0 Bright A_FireCustomMissile("PlasmaBolterShot2x", 0, 0, 0, 0)
		LYSA F 0 Bright A_FireCustomMissile("PlasmaBolterShot2x", 0, 0, 0, 10)
		LYSA F 0 Bright A_FireCustomMissile("PlasmaBolterShot2x", 0, 0, 0, -10)
		LYSA F 0 Bright A_FireCustomMissile("StunnerBallx", 0, 0, 0, 0)
		Goto Unwind
		Ivymimic:
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,1,50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,0)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,-50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,0)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,-50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,0)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,-50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,1,50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,0)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,-50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,0)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,-50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,50)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,0)
		LYSA A 1 Bright A_FireCustomMissile("IvyPlasmaX",0,0,-50)
		Goto Unwind
		Shosannamimic:
		LYSA A 0 Bright A_FireCustomMissile("ShosannaBeamX",0,1,50)
		LYSA A 0 Bright A_FireCustomMissile("ShosannaBeamX",0,0,-50)
		Goto Unwind
		Magemimic:
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,1,50)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,0)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,-50)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,50)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,0)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,-50)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,50)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,0)
		LYSA A 0 Bright A_Playweaponsound("XWNDFR")
        LYSA A 3 Bright A_FireCustomMissile("MageWandMissile2X",0,0,-50)
		Goto Unwind
		Huntermimic:
		LYSA A 0 Bright A_FireCustomMissile("FlameArrowX", 0, 1, 50)
		LYSA A 0 Bright A_FireCustomMissile("FlameArrowX", 0, 0, 0)
		LYSA A 0 Bright A_FireCustomMissile("FlameArrowX", 0, 0, -50)
		Goto Unwind
		Cyborgmimic:
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,1,50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("CyborgPlasmaPew",0,0,-50)
		Goto Unwind
		Geraldinemimic:
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,1,50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("ScatterPShotX",0,0,-50)
		Goto Unwind
		Inarimimic:
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,1,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("FuzzyPlasmaX",0,0,-50)
		Goto Unwind
		Terminatormimic:
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,1,50)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,-50)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,50)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,0)
		LYSA A 2 Bright A_FireCustomMissile("PowermissileX",0,0,-50)
		Goto Unwind
		Darkpriestessmimic:
		LYSA A 0 Bright A_playweaponsound("Fireball/Throw")
		LYSA A 0 Bright A_FireCustomMissile("WrathBallX",0,1,50)
		LYSA A 0 Bright A_FireCustomMissile("WrathBallX",0,0,0)
		LYSA A 0 Bright A_FireCustomMissile("WrathBallX",0,0,-50)
		Goto Unwind
		SeriousSamMimic:
		LYSA A 0 A_Playsound("CANNON_F")
		LYSA A 0 Bright A_FireCustomMissile("Cannonsamhighx",0,1,50)
		LYSA A 0 Bright A_FireCustomMissile("Cannonsamhighx",0,0,-50)
		Goto Unwind
		StrifeMimic:
		LYSA A 0 Bright A_FireCustomMissile("LightningPlasmax",0,1,50)
		LYSA A 0 Bright A_FireCustomMissile("LightningPlasmax",0,0,-50)
		Goto Unwind
		64Mimic:
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,1,50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,0)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,-50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,0)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,-50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,0)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,-50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,50)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,0)
		LYSA A 0 A_PlaySound("D64Unmaker/Fire", CHAN_AUTO, 0.8, 0, ATTN_NORM)
		LYSA A 2 Bright A_FireCustomMissile("64UnmakerX",0,0,-50)
		Goto Unwind
		Altfire:
		LYSA A 1 Bright A_JumpIfNoAmmo("Unwind")
		LYSA A 0 Bright A_Takeinventory("AsylumAmmo2",25)
		LYSA A 1 Bright A_SpawnItemEx("Pustule",50,0,0)
		Goto Unwind
	Unwind:
		LYSA A 24
		Goto Ready
	ActivateNormalFlight:
		TNT1 A 0 A_TakeInventory("CyborgDashCheck",999)
		TNT1 A 0 A_GiveInventory("AsylumActivateNormalFlightAmmo",1)
		TNT1 A 0 A_JumpIfInventory("AsylumActivateNormalFlightAmmo",2,"AsylumActivateJitterFlight")
		Goto Ready
	AsylumActivateJitterFlight:
		TNT1 A 0 A_TakeInventory("AsylumActivateNormalFlightAmmo",0)
		Goto Ready
	}
}

Actor AsylumAmmo : Ammo
{
	Ammo.BackPackAmount 1
	Ammo.BackPackMaxAmount 1
	Inventory.Amount 1
	Inventory.MaxAmount 1
	States
	{
	Spawn:
		TNT1 A 1
		Stop
	}
}

Actor AsylumActivateNormalFlightAmmo : Ammo
{
	Ammo.BackPackAmount 0
	Ammo.BackPackMaxAmount 2
	Inventory.Amount 0
	Inventory.MaxAmount 2
	States
	{
	Spawn:
		TNT1 A 1
		Stop
	}
}

Actor AsylumAmmo2 : Ammo
{
	Ammo.BackPackAmount 50
	Ammo.BackPackMaxAmount 50
	Inventory.Amount 50
	Inventory.MaxAmount 50
	States
	{
	Spawn:
		TNT1 A 1
		Stop
	}
}

Actor StunnerBallX
{
  Radius 6
  Height 8
  Speed 45
  Scale 0.45
  Damage (5)
  Damagetype "Asylum"
  Decal StunnerScorch
  RenderStyle Add
  SeeSound "Weapons/StunnerFire"
  DeathSound "Weapons/StunnerHit"
  Obituary "%o couldn't withstand %k's charms."
  Translation "192:207=250:254"
  Projectile  
  states
  {
  Spawn:
    STPR A 1 Bright A_SpawnItemEx("StunnerBallFX", 0, 0, 0, 0, 0, 0, 0, 128)
    Loop
  XDeath:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	Goto Death
  Death:
    PLSE ABCDE 4 Bright
    Stop
  }
}

ACTOR PlasmaBolterShot2X
{
   Radius 3
   Height 4
   Speed 45
   Damage 4
   Damagetype "Asylum"
   Scale 0.75
   PROJECTILE
   +STRIFEDAMAGE
   DeathSound "weapons/plasmax"
   Obituary "%o couldn't withstand %k's charms."
   RenderStyle Add
   States
   {
   Spawn:
      PLSS ABABAB 2 Bright A_CustomMissile("PlasmaBolterShot1Trail",0,0,0,0)
      Goto Spawn+1
   XDeath:
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  Goto Death
   Death:
      PLSE ABCDE 4 bright
      Stop
   }
}

Actor IvyPlasmaX
{
	Radius 10
	Height 10
	Speed 55
	Damage (4)
	Scale 1.0
	RenderStyle Translucent
	Alpha 1.0
	Damagetype "Asylum"
	SeeSound "PlasmaShot"
	DeathSound "Weapons/PlasmaX"
	Obituary "%o got deleted by %k."
	PROJECTILE
	States
	{
	Spawn:
		PLS2 AB 3 bright A_SpawnItemEx("PlasmaTrail",random(-8,8),random(-8,8),random(-8,8),0,0,1)
		Loop
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		Goto Death
	Death:
		PLS2 CDEFG 2 bright
		Stop
	}
}

ACTOR ShosannaBeamX
{
   Speed 100
   Damage (10)
   Height 4
   Radius 4
   DeathSound "GASTER"
   Seesound "SHOEPIC"
   DamageType "Asylum"
   Obituary "%o saw the light at the end of the tunnel."
   Projectile
   scale 1.0
   alpha 0.75
   +RIPPER
   +bloodlessimpact
   States
   {
   Spawn:
	X086 A 0 A_SpawnItemEx("ShosannaAttackTrail")
    X086 A 0 bright
	X086 A 0 A_SpawnItemEx("ShosannaAttackTrail")
	X086 A 1 bright A_SetTranslucent(0.99, 1)
    loop
   Death:
        TNT1 A 0 A_Playsound("GASTER",1,1)
		TNT1 A 1 A_Explode(15,128,0)
	X099 A 0 
	X099 A 2 A_SetTranslucent(0.70, 1)
	X099 A 2 A_SetTranslucent(0.65, 1)
	X099 A 2 A_SetTranslucent(0.60, 1)
	X099 A 2 A_SetTranslucent(0.55, 1)
	X099 A 2 A_SetTranslucent(0.50, 1)
	X099 A 2 A_SetTranslucent(0.45, 1)
	X099 A 2 A_SetTranslucent(0.40, 1)
	X099 A 2 A_SetTranslucent(0.35, 1)
	X099 A 2 A_SetTranslucent(0.20, 1)
	X099 A 2 A_SetTranslucent(0.15, 1)
	X099 A 2 A_SetTranslucent(0.10, 1)
	X099 A 2 A_SetTranslucent(0.05, 1)
      Stop 
   } 
}

actor MageWandMissile2X : fastprojectile
{
    Radius 3
    Height 2
    Obituary "%k has put the icing on the %o cake."
    Decal RailScorchLower
    Damage (4)
	speed 150
	Deathsound "XWNDFR"
	+RIPPER
    +STRIFEDAMAGE
    DamageType "Asylum"
	States
	{
	Spawn:
	LWND CD 1 Bright
	TNT1 A 0 Bright A_SpawnItemEx("MageVFXIceTrail")
	TNT1 A 0 Bright A_SpawnItemEx("MageVFXIceTrail")
	TNT1 A 0 Bright A_SpawnItemEx("MageVFXIceTrail")
    TNT1 A 0 bright A_SpawnItemEx("Icescatterspark",random(-10,10),random(-10,10),random(-10,10),0,0,0)
	TNT1 A 0 bright A_SpawnItemEx("Icescatterspark",random(-10,10),random(-10,10),random(-10,10),0,0,0)
	TNT1 A 0 bright A_SpawnItemEx("Icescatterspark",random(-10,10),random(-10,10),random(-10,10),0,0,0)
	loop
	Death:
	TNT1 A 0 Bright A_SpawnItemEx("MageVFXIceTrail")
	TNT1 A 0 Bright A_SpawnItemEx("MageVFXIceTrail")
	LWND EFGHI 3
	Stop
	}
}

ACTOR FlameArrowX
{ 
   Radius 3 
   Height 2 
   Speed 66
   Decal "Scorch"
   Scale .5
   Damage 2
   damagetype "Asylum"
   +DONTBLAST
   Obituary "%o was scorched by %k's fire arrows." 
   PROJECTILE 
   +NODAMAGETHRUST
   +NOGRAVITY 
   +NOEXTREMEDEATH
   +SKYEXPLODE
   +SEEKERMISSILE
   renderstyle translucent
   alpha 1.0
   SeeSound "weapons/flamearrow"
   DeathSound "weapons/arrowexplode"
   States 
   { 
   Spawn: 
      FARW A 2 bright A_SpawnItemEx("Flamearrowtrail",0,0,0,0,0,0,0,128) 
	  FARW A 0 A_Explode(10,80,0)
	  Loop
   XDeath:
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  TNT1 A 0 A_Jump(256,"DeathCont")
	  Goto DeathCont
   Death:
	  TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
	  TNT1 A 0 A_Stop
	  TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
	  TNT1 A 0 A_JumpIfTargetInLOS("SplashBeep",360,JLOSF_PROJECTILE,141)
	  TNT1 A 0 A_Jump(256,"DeathCont")
	  Goto DeathCont
   SplashBeep:
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  TNT1 A 0 A_Jump(256,"DeathCont")
	  Goto DeathCont
   DeathCont: 
      FARW A 0 A_Explode(19,100,0)
      HELX ABCDEFGHIJ 2 bright A_FadeOut(0.05)
      Stop 
   } 
} 

actor CyborgPlasmaPewX
{
scale 0.8
renderstyle add
alpha 0.95
PROJECTILE
decal "plasmadecal"
damagetype "Asylum"
speed 40
radius 12
height 6
Damage (8)
Obituary "%o was devastated by %k's plasma." 
seesound "weapons/cyborgplasmafire"
deathsound "weapons/cyborgplasmahit"
States
{
Spawn:
SBLL ABCDEFGHIJ 1 bright A_SpawnItemEx("CyborgPlasmaTrailPews")
Loop
XDeath:
TNT1 A 0 A_GiveToTarget("HitBeep",1)
Goto Death
Death:
SBLL KLMNOPQRSTU 1 bright A_FadeOut(0.04)
Stop
}
}

ACTOR ScatterPShotX : FastProjectile
{
   Speed 50
   Radius 4
   Height 4
   Damage (3)
   Damagetype "Asylum"
   Obituary "%k felt like killing %o in more ways than one."
   Scale 0.25
   PROJECTILE
   +BRIGHT
   RenderStyle Add
   MissileHeight 8
   SeeSound "NDLSHOT"
   States
   {
   Spawn:
      SPPJ A 1
	  TNT1 A 0 A_SpawnItemEx("ScatterShotGlow", 0, 0, 0, 0, 0, 0, 0, 32)
      Loop
   XDeath:
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  Goto Death
   Death:
      TNT1 A 0
	  TNT1 A 0 A_PlaySound("SPRPIMPT")
	  TNT1 AAAA 0 A_CustomMissile("ScatterSparkX",0,0,random(0,360),CMF_AIMDIRECTION,random(0,12))
      SPRI ABCDE 1
      Stop
   }
}

ACTOR ScatterSparkX
{
   Speed 15
   Radius 4
   Height 4
   Scale 0.15
   Gravity 0.3
   PROJECTILE
   +BRIGHT
   -NOGRAVITY
   +DROPOFF 
   +THRUACTORS
   RenderStyle Add
   States
   {
   Spawn:
      SPPJ A 1
	  TNT1 A 0 A_SpawnItemEx("ScatterShotGlowSmall", 0, 0, 0, 0, 0, 0, 0, 32)
	  TNT1 A 0 A_SpawnItemEx("ScatterShotXDMGX", 0, 0, 0, 0, 0, 0, 0, 32)
      Loop
   Death:
      TNT1 A 0
	  TNT1 A 0 A_PlaySound("SPRPIMPT",5,0.12,0)
      SPRI ABCDE 1
      Stop
   }
}

ACTOR ScatterShotXDMGX
{                 
   Speed 2
   Radius 6
   Height 7
   Damage (2)
   Obituary "%k felt like killing %o in more ways than one."
   PROJECTILE
   +NODAMAGETHRUST
   States
   {
   Spawn:
      TNT1 A 1
      Stop
   XDeath:
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  Goto Death
   Death:
      TNT1 A 0
      Stop
   }
}

actor FuzzyPlasmaX // edited from Doom's standard plasmaball actor
{
  Radius 13
  Height 8
  Speed 40
  Damage (5)
  Decal DoomImpScorch
  Projectile
  scale 0.5
  +RANDOMIZE
  +SEEKERMISSILE
  RenderStyle Add
  Alpha 0.75
  Seesound "fuzzy/plasma"
  DeathSound "fuzzy/pdeath"
  Damagetype "Asylum"
  Obituary "%o got outsmarted by %k."
  States
  {
  Spawn:
	PLZM F 0 A_SeekerMissile(0,20)
    PLZM F 1 bright
	PLZM G 1 bright
    loop
  XDeath:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	Goto Death
  Death:
	PLZM H 0
	PLZM H 0
    PLZM HIJKL 3 bright
    stop
  }
}

ACTOR PowerMissileX
{
    Radius 12
    Height 8
    Speed 40
    Damage (12)
    Projectile
    +FORCERADIUSDMG
	+SEEKERMISSILE
	Seesound "missile/fire"
    DeathSound "missile/hit"
    Obituary "%k obliterated %o."
    DamageType "Asylum"
    Decal Scorch
    States
    {
    Spawn:
        PMSL A 1 Bright A_SpawnItemEx("MissileTrail",0,0,1,0,0,0,0,160)
        Loop
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		TNT1 A 0 A_Jump(256,"DeathCont")
		Goto DeathCont
	Death:
		TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
		TNT1 A 0 A_Stop
		TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
		TNT1 A 0 A_JumpIfTargetInLOS("SplashBeep",360,JLOSF_PROJECTILE,141)
		TNT1 A 0 A_Jump(256,"DeathCont")
		Goto DeathCont
	SplashBeep:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		TNT1 A 0 A_Jump(256,"DeathCont")
		Goto DeathCont
    DeathCont:
        TNT1 A 0
        TNT1 A 0 A_Scream
        TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("MissileTrail",random(-100,100)/100.00,random(-100,100)/100.00,random(-100,100)/100.00,random(-200,200)/100.00,random(-200,200)/100.00,random(-200,200)/100.00,random(-180,180),160,128)
        TNT1 AA 0 A_SpawnItemEx("MissileExplosionSmall",0,0,0,0,0,0,0,160)
        TNT1 A 0 A_SpawnItemEx("MissileExplosionLarge",0,0,0,0,0,0,0,160)
        TNT1 A 8 Bright A_Explode(10,100,0)
        TNT1 B 6
        TNT1 C 4
        TNT1 A 0
        Stop
    }
}

actor WrathBallX
{
  Radius 6
  Height 16
  Speed 30
  Damage 4
  Damagetype "Asylum"
  Obituary "%o was fried by %k!"
  RenderStyle Add
  Alpha 1
  SeeSound "D3Imp/Fireball"
  DeathSound "D3Imp/FireballHit"
  Decal "Scorch"
  Projectile
  +RANDOMIZE
  +SEEKERMISSILE
  states
  {
  Spawn:
    BALG AA 0 A_Weave(2,2,2,2)
    BALG AAA 1 bright A_SpawnItemEx("WrathPuff", -8, 0, 0, random(0 ,1), random(0 ,1), random (-1, 1), 0, 176)
	BALG BBB 1 bright A_SpawnItemEx("WrathPuff", -8, 0, 0, random(0 ,1), random(0 ,1), random (-1, 1), 0, 176)	
    loop
  XDeath:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	TNT1 A 0 A_Jump(256,"DeathCont")
	Goto DeathCont
  Death:
	TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
	TNT1 A 0 A_JumpIfTargetInLOS("SplashBeep",360,JLOSF_PROJECTILE,71)
	TNT1 A 0 A_Jump(256,"DeathCont")
	Goto DeathCont
  SplashBeep:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	TNT1 A 0 A_Jump(256,"DeathCont")
	Goto DeathCont
  DeathCont:
    BALG C 4 bright A_Explode (12, 50,0)
    BALG DE 4 bright
    stop
  }
}

ACTOR Cannonsamhighx
{
  Radius 18
  Height 18
  Speed 60
  Damage 3
  Projectile
  +RIPPER
  -NOGRAVITY
  +RANDOMIZE
  +DEHEXPLOSION
  +GRENADETRAIL
  +DoomBounce
  Gravity 0.25
  DeathSound "SSEXPLO"
  Obituary "%o was impressed by %k's balls."
  DamageType "AsylumCannonBall"
  States
  {
  Spawn:
    BALL A 1 Bright 
    Loop
  Death:
    TNT1 A 0
    TNT1 A 8 Bright A_Explode(15,100,0)
    TNT1 A 0
    TNT1 A 6 Bright
    TNT1 A 4 Bright
    Stop
  Grenade:
    TNT1 A 0
    MISL A 1000 A_Die
    Wait
  Detonate:
    TNT1 A 0
    TNT1 A 4 A_Scream
    TNT1 A 6 
    TNT1 A 10
    Stop
  }
}

Actor TemplarPlasmaBallx
{
	Alpha 0.84
	Decal "PlasmaDecal"
	DamageType "Asylum"
	Speed 40
	Radius 12
	Height 6
	Damage (5)
	Scale 0.7
	Obituary "%o was dismembered by %k's electric plasma."
	SeeSound "TMPLRF"
	DeathSound "PLSMFM"
	PROJECTILE
	States
	{
	Spawn:
		ZAP7 ABCDE 1 bright
		Loop
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		Goto Death
	Death:
		ZAP7 ABCDE 1 bright A_FadeOut(0.04)
		Loop
	}
}

Actor TemplarPlasmaBallWeakx : TemplarPlasmaBallx
{
	Decal "PlasmaDecal"
	DamageType "Asylum"
	Radius 5
	Height 3
	Damage 1
	Speed 45
	Scale 0.7
	Obituary "%o was dismembered by %k's electric plasma."
	States
	{
	Spawn:
		ZOT3 ABCDE 1 bright
		Loop
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		Goto Death
	Death:
		ZOT3 ABCDE 1 bright A_FadeOut(0.04)
		Loop
	}
}


Actor LightningPlasmax : TemplarPlasmaBallWeakx
{
	Speed 110
	Damage (6)
	SeeSound "Weapons/CyborgPlasmaFire"
	DeathSound "Weapons/CyborgPlasmaHit"
	Obituary "%o was dismembered by %k's electric plasma."
	+SKYEXPLODE
	States
	{
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		Goto Death
	Death:
		ZAP5 ABCDABCD 3 bright A_SpawnItemEx("LightningRainX",random(-80,80),random(-80,80),0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Stop
	}
}

Actor LightningRainX
{
	Damage 0
	SeeSound "LightningFall"
	Obituary "%o was dismembered by %k's electric plasma."
	PROJECTILE
	DamageType "Asylum"
	+RIPPER
	+SKYEXPLODE
	+NOEXPLODEFLOOR
	+BLOODLESSIMPACT
	-NOGRAVITY
	States
	{
	Spawn:
		ZOT1 A 0
		ZOT1 ABCDEABCDE 4 bright A_Explode(3,80,0)
		Stop
	Death:
		ZOT1 ABCDEABCDE 4 bright A_Explode(3,80,0)
		Stop
	}
}

Actor 64UnmakerX : FastProjectile
{
	Radius 2
	Height 2
	Speed 200
	Scale 0.75
	Damage 4
	DamageType "Asylum"
	Decal BulletChip
	Projectile
	+DONTREFLECT
	States
	{
		Spawn:
		TNT1 A 1
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (3*velx)/-35.0,  -(3*vely)/-35.0,  2+(3*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (3.5*velx)/-35.0,  -(3.5*vely)/-35.0,  2+(3.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (4*velx)/-35.0,  -(4*vely)/-35.0,  2+(4*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (4.5*velx)/-35.0,  -(4.5*vely)/-35.0,  2+(4.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (5*velx)/-35.0,  -(5*vely)/-35.0,  2+(5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (5.5*velx)/-35.0,  -(5.5*vely)/-35.0,  2+(5.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (6*velx)/-35.0,  -(6*vely)/-35.0,  2+(6*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (6.5*velx)/-35.0,  -(6.5*vely)/-35.0,  2+(6.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (7*velx)/-35.0,  -(7*vely)/-35.0,  2+(7*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (7.5*velx)/-35.0,  -(7.5*vely)/-35.0,  2+(7.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (8*velx)/-35.0,  -(8*vely)/-35.0,  2+(8*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (8.5*velx)/-35.0,  -(8.5*vely)/-35.0,  2+(8.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (9*velx)/-35.0,  -(9*vely)/-35.0,  2+(9*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (9.5*velx)/-35.0,  -(9.5*vely)/-35.0,  2+(9.5*velz)/-35.0,  0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (10*velx)/-35.0, -(10*vely)/-35.0, 2+(10*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (10.5*velx)/-35.0, -(10.5*vely)/-35.0, 2+(10.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (11*velx)/-35.0, -(11*vely)/-35.0, 2+(11*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (11.5*velx)/-35.0, -(11.5*vely)/-35.0, 2+(11.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (12*velx)/-35.0, -(12*vely)/-35.0, 2+(12*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (12.5*velx)/-35.0, -(12.5*vely)/-35.0, 2+(12.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (13*velx)/-35.0, -(13*vely)/-35.0, 2+(13*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (13.5*velx)/-35.0, -(13.5*vely)/-35.0, 2+(13.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (14*velx)/-35.0, -(14*vely)/-35.0, 2+(14*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (14.5*velx)/-35.0, -(14.5*vely)/-35.0, 2+(14.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (15*velx)/-35.0, -(15*vely)/-35.0, 2+(15*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (15.5*velx)/-35.0, -(15.5*vely)/-35.0, 2+(15.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (16*velx)/-35.0, -(16*vely)/-35.0, 2+(16*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (16.5*velx)/-35.0, -(16.5*vely)/-35.0, 2+(16.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (17*velx)/-35.0, -(17*vely)/-35.0, 2+(17*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (17.5*velx)/-35.0, -(17.5*vely)/-35.0, 2+(17.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (18*velx)/-35.0, -(18*vely)/-35.0, 2+(18*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (18.5*velx)/-35.0, -(18.5*vely)/-35.0, 2+(18.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (19*velx)/-35.0, -(19*vely)/-35.0, 2+(19*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (19.5*velx)/-35.0, -(19.5*vely)/-35.0, 2+(19.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (20*velx)/-35.0, -(20*vely)/-35.0, 2+(20*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (20.5*velx)/-35.0, -(20.5*vely)/-35.0, 2+(20.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (21*velx)/-35.0, -(21*vely)/-35.0, 2+(21*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (21.5*velx)/-35.0, -(21.5*vely)/-35.0, 2+(21.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (22*velx)/-35.0, -(22*vely)/-35.0, 2+(22*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (22.5*velx)/-35.0, -(22.5*vely)/-35.0, 2+(22.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (23*velx)/-35.0, -(23*vely)/-35.0, 2+(23*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (23.5*velx)/-35.0, -(23.5*vely)/-35.0, 2+(23.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (24*velx)/-35.0, -(24*vely)/-35.0, 2+(24*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (24.5*velx)/-35.0, -(24.5*vely)/-35.0, 2+(24.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (25*velx)/-35.0, -(25*vely)/-35.0, 2+(25*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (25.5*velx)/-35.0, -(25.5*vely)/-35.0, 2+(25.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (26*velx)/-35.0, -(26*vely)/-35.0, 2+(26*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (26.5*velx)/-35.0, -(26.5*vely)/-35.0, 2+(26.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (27*velx)/-35.0, -(27*vely)/-35.0, 2+(27*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (27.5*velx)/-35.0, -(27.5*vely)/-35.0, 2+(27.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (28*velx)/-35.0, -(28*vely)/-35.0, 2+(28*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (28.5*velx)/-35.0, -(28.5*vely)/-35.0, 2+(28.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (29*velx)/-35.0, -(29*vely)/-35.0, 2+(29*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (29.5*velx)/-35.0, -(29.5*vely)/-35.0, 2+(29.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (30*velx)/-35.0, -(30*vely)/-35.0, 2+(30*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (30.5*velx)/-35.0, -(30.5*vely)/-35.0, 2+(30.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (31*velx)/-35.0, -(31*vely)/-35.0, 2+(31*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (31.5*velx)/-35.0, -(31.5*vely)/-35.0, 2+(31.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (32*velx)/-35.0, -(32*vely)/-35.0, 2+(32*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (32.5*velx)/-35.0, -(32.5*vely)/-35.0, 2+(32.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (33*velx)/-35.0, -(33*vely)/-35.0, 2+(33*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (33.5*velx)/-35.0, -(33.5*vely)/-35.0, 2+(33.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (34*velx)/-35.0, -(34*vely)/-35.0, 2+(34*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (34.5*velx)/-35.0, -(34.5*vely)/-35.0, 2+(34.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (35*velx)/-35.0, -(35*vely)/-35.0, 2+(35*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (35.5*velx)/-35.0, -(35.5*vely)/-35.0, 2+(35.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (36*velx)/-35.0, -(36*vely)/-35.0, 2+(36*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (36.5*velx)/-35.0, -(36.5*vely)/-35.0, 2+(36.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
			
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (37*velx)/-35.0, -(37*vely)/-35.0, 2+(37*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		TNT1 A 0 A_SpawnItemEx("64UltimateLaserTrail", (37.5*velx)/-35.0, -(37.5*vely)/-35.0, 2+(37.5*velz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		Loop
		
		XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		Goto Death
		Death:
		LPUF AB 3 Bright A_FadeOut(0.10)
		Loop
	}
}
actor Pustule
{
  obituary "%o was popped by a pustule."
  health 40
  radius 20
  height 24
  mass 100
  speed 15
  scale 0.8
  PainChance 256
  seesound "blob/sight"
  painsound "blob/pain"
  activesound "blob/active"
  Species "Ghoul"
	Damagetype "Minion"
	Damagefactor "Minion", 0
	Damagefactor "Minion2", 0
	Damagefactor "Bluefire", 0
	Damagefactor "Hellzone", 0
	Damagefactor "Lamiafire", 0
	Damagefactor "bluefire", 0
	DamageFactor "SjasScream", 0
	DamageFactor "Creeper", 0
	DamageFactor "CreepStun", 0
	DamageFactor "Jitter", 0
	DamageFactor "Choke", 0
	DamageFactor "Ravager", 0
	DamageFactor "RavagerBall", 0
	DamageFactor "Yurei", 0
	DamageFactor "YureiBall", 0
	DamageFactor "Misty", 0
	DamageFactor "Clowny", 0
	DamageFactor "Mohoph", 0
	DamageFactor "Emtalic", 0
	DamageFactor "EmtalicWeak", 0
	DamageFactor "I1", 0
	DamageFactor "I2", 0
	DamageFactor "I3", 0
	DamageFactor "I4", 0
	DamageFactor "I5", 0
	DamageFactor "DarkSovereign", 0
	Damagefactor "BloodScepter", 0
	Damagefactor "ZombieIce", 0.0
    Damagefactor "ZombiePoison", 0.0
	Damagefactor "Tenebra", 0.0
	Damagefactor "Judgement", 0.0
	DamageFactor "Obliterator", 0.0
	DamageFactor "PuppetStrings", 0.0
	Damagefactor "ChexWarriorChainsaw", 4.0
	Damagefactor "RenegadeBullets", 2.3
	MONSTER 
	+NOINFIGHTING
	+DONTBLAST
	+ALWAYSFAST
	+LOOKALLAROUND
	+DONTMORPH
	+FRIENDLY
	+DONTHURTSPECIES
    +SPAWNFLOAT
    +MISSILEMORE
	+MISSILEEVENMORE
    +PUSHABLE
    +QUICKTORETALIATE
    -COUNTKILL
  states
  {
  Spawn:
    FLOB A 10 A_Look
    loop
  See:
    FLOB AABBCCBB 3 A_Chase
    loop
  Pain:
    FLOB A 1 A_Pain
    FLOB A 0 A_Wander
    FLOB ABBCCBB 1 A_Wander
    FLOB AABBCCBB 1 A_Wander
    goto See
  Melee:
    FLOB A 0 A_Die
  Death:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
    FLOB F 2 A_PlaySound("Blob/Explode")
    FLOB F 0 A_SpawnItem("PustuleDamage")
    FLOB FFFFFFFFFFFFFFFFFFFF 0 A_SpawnItemEX("BursterBlood", 0, 0, 0, random (4, 12), 0, random (4, 12), random(0, 360))
    FLOB GH 2
    stop
	Death.ChexWarrior:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		FLOB A 0 A_PlaySoundEx("Teleport/Chex",7)
		FLOB A 0 A_Stop
		FLOB A 0 A_NoGravity
		FLOB A 0 A_PlaySound("Blob/Pain")
		FLOB A 3 A_SpawnItem("BabyZorch")
		FLOB A 3 A_SetTranslucent(0.9,0)
		FLOB A 3 A_SetTranslucent(0.8,0)
		FLOB A 0 A_NoBlocking
		FLOB A 3 A_SetTranslucent(0.7,0)
		FLOB A 3 A_SetTranslucent(0.6,0)
		FLOB A 3 A_SetTranslucent(0.5,0)
		FLOB A 3 A_SetTranslucent(0.4,0)
		FLOB A 3 A_SetTranslucent(0.3,0)
		FLOB A 3 A_SetTranslucent(0.2,0)
		FLOB A 3 A_SetTranslucent(0.1,0) 
		TNT1 A 1 A_SetTranslucent(1,0)
		TNT1 A -1
		Stop
	Death.ChexWarriorChainsaw:
	Death.ChexWarriorPistol:
	Goto Death.ChexWarrior
	Pain.EngineerSaw:
	Pain.Ghosttrap:
	Pain.GBFire:
	Pain.Misty:
	Pain.GBSaw:
	Pain.GBString:
	Pain.GBNuke:
	Pain.Ice2:
	Pain.Ice:
	Pain.ElecStorm:
	Pain.AltFire2:
	Pain.AltIce2:
	Pain.Fire2:
	Pain.Doggo:
	Pain.LaraArrow:
	Pain.Wind2:
	Pain.Grenade:
	Pain.Grenade2:
	Pain.TemplarLightningRain:
	Pain.CarolineDamage:
	Pain.ChexWarrior:
	Pain.InariPlasma:
	Pain.Plasma:
	Pain.FlameProtect:
	Pain.DutchShotgun:
	Pain.KarenExplo:
	Pain.Sentinel:
	Pain.Divine:
	Pain.GwenPlasma3:
	Pain.MacheteSlicerino:
	Pain.AntiAirbolt:
	Pain.MechPewPews:
	Pain.RainbowNado:
	Pain.MirabelPlasma:
		TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
		Goto Pain
  }
}

actor PustuleDamage
{
  Radius 20
  Height 24
  Damagetype "Minion"
  +NOINTERACTION
  obituary "%o was popped by a pustule."
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_Explode (35, 64, 0, 1, 1)
    stop
  }
}

actor BursterBlood
{
  Radius 2
  Height 2
  Speed 1
  Damage 0
  Decal "BloodSplat"
  Projectile
  -NOGRAVITY
  States
  {
  Spawn:
    TNT1 A 1 A_SpawnItemEX("BursterBloodTrail", random(-2, 2), 0, random(-2, 2), 0, 0, 0, random(0, 360))
    loop
  Death:
    TNT1 A 4
    stop
  }
}

actor BursterBloodTrail
{
  Radius 2
  Height 2
  +NOINTERACTION
  +CLIENTSIDEONLY 
  States
  {
  Spawn:
    BLUD CBA 3
    stop
  }
}