actor PlasmaBallRun : BallRunBase
{
	Radius 13
	Health 5
	Speed 25
	Species "PlayerProjectiles"
	DeathSound "weapons/plasmax"
	states
	{
		Spawn:
			PLRN A 0
			goto Jump
		Death:
			TNT1 A 0 A_ScreamAndUnblock
			PLRE ABCDE 4 Bright
			stop
	}
}

actor PlasmaBallRB : RunBallProjectileBase
{
	Species "PlayerProjectiles"
	Radius 13
	Height 8
	Speed 25
	Damage 5
	SeeSound "weapons/plasmaf"
	DeathSound "weapons/plasmax"
	states
	{
		Idle:
			PLSS AB 6 Bright
			loop
		Death:
			PLSE ABCDE 4 Bright
			Stop
	}
}

actor PlasmaRifleRB : WeaponRunBall replaces PlasmaRifle
{
	Weapon.SlotNumber 6
	Weapon.SelectionOrder 100
	Weapon.AmmoUse 1
	Weapon.AmmoUse2 1
	Weapon.AmmoGive 40
	Weapon.AmmoType "Cell"
	Weapon.AmmoType2 "Cell"
	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:
			PLSG A 3 A_FireCustomMissile("PlasmaBallRB")
			PLSG B 20 A_ReFire
			Goto Ready
		AltFire:
			PLSG A 3 A_FirePlasma
			PLSG B 20 A_ReFire
			Goto Ready
		Flash:
			PLSF A 4 Bright A_Light1
			Goto LightDone
			PLSF B 4 Bright A_Light1
			Goto LightDone
		Spawn:
			PLAS A 0
			goto Initialize
		Transform:
			PGRB A 0
			goto super::Transform
	}
}

actor PlasmaBallEx : PlasmaBall replaces PlasmaBall
{
	RenderStyle "Normal"
	Alpha 1.0
	Species "PlayerProjectiles"
	+THRUSPECIES
	+SHOOTABLE
	+NOBLOOD
	-NOBLOCKMAP
	+NOTARGETSWITCH
}