Actor Lifeleecher : Weapon 30393
{
Scale 0.72
Weapon.SelectionOrder 6000
Weapon.PreferredSkin "LifeLeecher-Marine"
Weapon.AmmoUse1 1
Weapon.AmmoGive1 15
Weapon.AmmoType1 "HadesCrystal"
Inventory.PickupSound "Weapons/KarasawaCharge"
Inventory.PickupMessage "Hades-Tech Cannon."
Obituary "%o's life was sucked dry by %k."
Tag "Life Leecher"
States
	{
	Spawn:
		KSWP A -1
		Loop
	Ready:
		TNT1 A 0 A_PlaySound("Weapons/KarasawaIdle",CHAN_WEAPON,1.0,0)
		KSAW BCDC 4 A_WeaponReady
		TNT1 A 0 A_JumpIfInventory("HandGrenadeAction",1,"GrenadeCheck")
		TNT1 A 0 A_JumpIfInventory("MineAction",1,"MineCheck")
		Loop
	Select:
		KSAW D 1 A_Raise
		Loop
	Deselect:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("HandGrenadeAction",1)
		TNT1 A 0 A_TakeInventory("MineAction",1)
		TNT1 A 0 A_TakeInventory("RailgunAction",1)
	DeselectLoop:
		KSAW D 1 A_Lower
		Loop
	Fire:
		KSAW DE 2 Bright A_Light1
	Hold:
		KSAW F 2 Bright A_Light2
		TNT1 A 0 A_FireCustomMissile("PlayerLifeLeecher",0,1,0,0)
		KSAW E 2 Bright A_Light1
		KSAW E 1 Bright A_Refire
		KSAW DCBBB 2 Bright A_Light0
		GoTo Ready
	AltFire:
		TNT1 A 0
		TNT1 A 0 A_JumpIfInventory("HadesCrystal",10,1)
		GoTo Ready
		TNT1 A 0 A_PlaySound("Weapons/KarasawaCharge",CHAN_WEAPON,1.0,0)
		KSAW DDDE 2 Bright A_Light1
		KSAW F 2 Bright A_Light2
		TNT1 A 0 A_TakeInventory("HadesCrystal",10,TIF_NOTAKEINFINITE)
		KSAW G 4 Bright A_FireCustomMissile("PlayerDoomWraith",0,1,0,0)
		KSAW H 3 A_Light1
		KSAW IJ 3 A_Light0
		KSAW B 10
		GoTo Ready
	GrenadeCheck:
		TNT1 A 0 A_JumpIfInventory("HandGrenadeAmmo",1,"GrenadeToss")
		TNT1 A 0 A_TakeInventory("HandGrenadeAction",1)
		Goto Ready
	GrenadeToss:
		TNT1 A 0 A_GiveInventory("Hand Grenade")
		TNT1 A 0 A_SelectWeapon("Hand Grenade")
		Goto Deselect
	MineCheck:
		TNT1 A 0 A_JumpIfInventory("MineAmmo",1,"MineToss")
		TNT1 A 0 A_TakeInventory("MineAction",1)
		Goto Ready
	MineToss:
		TNT1 A 0 A_GiveInventory("Land Mine")
		TNT1 A 0 A_SelectWeapon("Land Mine")
		Goto Deselect
	}
}

Actor PlayerLifeLeecher : ZombieHadesBall
{
Damage 6
-StrifeDamage
+ThruSpecies
Species ""
Species "Player"
Damagetype ""
Damagetype "DrainLife"
States
	{
	XDeath:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_GiveToTarget("LifeLeecherHPPack",1)
		TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,128)
		TNT1 AAA 0 Bright A_CustomMissile("Kaboom10",0,0,random(0,360),2,random(0,360))
		TNT1 AAA 0 Bright A_CustomMissile("SmokeFX4",0,0,random(0,360),2,random(0,360))
		NBAL HIJKLM 3 Bright A_FadeOut(0.1,1)
		Stop
	}
}

Actor PlayerDoomWraith : DoomWraith2
{
BounceCount 10
Damage (4*random(3,8))
+ThruSpecies
Species ""
Species "Player"
Damagetype ""
Damagetype "DrainLife"
States
	{
	Normal:
		DWRT AAAAA 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT BBBBB 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT AAAAA 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT BBBBB 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT AAAAA 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT BBBBB 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT AAAAA 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT BBBBB 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT AAAAA 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		DWRT BBBBB 1 Bright A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(15,120,0)
		Goto Death
	Death:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(0.3)
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,0)
		TNT1 A 0 A_ChangeFlag(HEXENBOUNCE,1)
		TNT1 A 0 A_Scream
		TNT1 A 0 A_SpawnItemEx("Kaboom12",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 AAAAAA 0 A_SpawnItemEx("Kaboom10",0,0,0,random(-5,5),random(-5,5),random(-5,5),random(0,360))
		TNT1 A 0 A_Explode(30,190,0)
		DWRT HIJKLMMMMMM 4 Bright A_FadeOut(0.1,1)
		Stop
	}
}

Actor HadesCrystal : Ammo
{
Inventory.Amount 1
Inventory.MaxAmount 300
Ammo.BackpackAmount 2
Ammo.BackpackMaxAmount 600
Inventory.Icon "LLAMA0"
Inventory.PickUpSound "misc/picku2"
Inventory.PickUpMessage "Hades Crystal."
Tag "Hades Crystal"
States
	{
	Spawn:
		AMM6 ABCD 3 Bright
		Loop
	}
}

Actor HadesCrystalBundle : HadesCrystal
{
Inventory.Amount 25
Inventory.PickUpMessage "Hades Crystal Bundle."
Tag "Hades Crystal Bundle"
States
	{
	Spawn:
		AMM6 EFGH 3 Bright
		Loop
	}
}