ACTOR Rail_Standard
{
	Radius				11
	Height				8
	Speed				30
	Damage				1
	DamageType			MarineFire
	
	DamageType			MarineFire
	RenderStyle			Add
	
	Projectile
	+RANDOMIZE
	+DEHEXPLOSION
	
	explosiondamage			90	// default, 128
	explosionradius			90	// default, 128
	
	SeeSound			"x1/fire1"
	//DeathSound			"weapons/rocklx"
	Obituary			"%o smells %k's rails... oh wait, thats $o's melted insides"
        DontHurtShooter
	
	States
	{
		Spawn:
			PLSS A 1 bright A_SpawnItem ("Rail_Standard_Tracer" , 0, 0, 0, 0)
			PLSS B 1
			goto Spawn
		Death:
			PLSE C 8 bright A_Explode
			PLSE D 6 bright
			PLSE E 4 bright
			stop
	}
}

ACTOR Rail_Taser
{
	Radius				11
	Height				8
	Speed				30
	Damage				60
	DamageType			MarineFire
	
	DamageType			MarineFire
	RenderStyle			Add
	
	Projectile
	+RANDOMIZE
	
	Obituary			"%o smells %k's rails... oh wait, thats $o's melted insides"
	
	SeeSound 			"x1/taser"
	
	States
	{
		Spawn:
			PLSE CDE 2
			stop
		Death:
			PLSE C 8 bright
			PLSE D 6 bright
			PLSE E 4 bright
			stop
	}
}

ACTOR Rail_Standard_Tracer
{
	Radius				11
	Height				8
	
	RenderStyle			Add
	Scale				0.7
	
	+CLIENTSIDEONLY
	+NOINTERACTION
	
	States
	{
		Spawn:
			PLSS AB 1 bright A_FadeOut(0.1)
			goto Spawn
	}
}

// Plasma Ball
actor PlasmaBall_Player replaces PlasmaBall
{
  Game Doom
  SpawnID 51
  Radius 13
  Height 8
  Speed 25
  Damage 5
  Projectile
  +RANDOMIZE
  RenderStyle Add
  Alpha 0.75
  SeeSound "weapons/plasmaf"
  DeathSound "weapons/plasmax"
  Obituary "$OB_MPPLASMARIFLE"
  DamageType MarineFire
  States
  {
  Spawn:
    PLSS AB 6 bright
    goto Spawn
  Death:
    PLSE ABCDE 4 bright
    stop
  }
}

ACTOR PlasmaProjectile_Advanced
{
	Radius				11
	Height				8
	Speed				50
	Damage				5
	DamageType			MarineFire

	RenderStyle			Add
	
	Projectile
	+RANDOMIZE
	+DEHEXPLOSION
	+RIPPER
	
	SeeSound			"x1/fire1"
	//DeathSound			"weapons/rocklx"
	Obituary			"%o smells %k's rails... oh wait, thats $o's melted insides"
	
	States
	{
		Spawn:
			PLSS A 1 bright A_SpawnItem ("Rail_Standard_Tracer" , 0, 0, 0, 0)
			PLSS B 1
			goto Spawn
		Death:
			PLSE C 8 bright
			PLSE D 6 bright
			PLSE E 4 bright
			stop
	}
}

ACTOR PlasmaProjectile_Spread
{
	Game Doom
	SpawnID 51
	Radius 13
	Height 8
	Speed 50
	Damage 4		// reduced from 6 to 4
	Projectile
	+RANDOMIZE
	RenderStyle Add
	Alpha 0.75
	SeeSound "weapons/plasmaf"
	DeathSound "weapons/plasmax"
	Obituary "$OB_MPPLASMARIFLE"
	DamageType			MarineFire
	States
	{
		Spawn:
		TNT1 A 0
		TNT1 A 0 A_ClearTarget
		Spawn2:
		PLSS AB 2 bright A_CustomMissile("PlasmaProjectile_Spread_Expand", 0, 0, random(15,-15), 2, 0)
		PLSS B 0 A_FadeOut(0.1)
		goto Spawn
		Death:
		PLSE AAAAA 0 A_CustomMissile("PlasmaProjectile_Spread_Expand3", 0, 0, random(0,359),2,random(90,-90))
		PLSE ABCDE 4 bright
		stop
	}
}

ACTOR PlasmaProjectile_Spread2 : PlasmaProjectile_Spread
{
	states
	{
		Spawn:
		TNT1 A 0
		TNT1 A 0 A_ClearTarget
		Spawn2:
		PLSS A 2 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, 45, 2)
		PLSS A 0 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, -45, 2)
		PLSS B 3 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, 45, 2)
		PLSS B 0 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, -45, 2)
		PLSS B 0 A_FadeOut(0.1)
		goto Spawn
	}
}

ACTOR PlasmaProjectile_Spread_Expand
{
	Game Doom
	SpawnID 51
	Radius 13
	Height 8
	Speed 65
	Damage 3		// reduced from 4 to 3
	Projectile
	+RANDOMIZE
	RenderStyle Add
	Alpha 0.75
	SeeSound "weap/apr/fire"
	DeathSound "weapons/plasmax"
	Obituary "$OB_MPPLASMARIFLE"
	DamageType			MarineFire
	
	scale 0.3
	
	States
	{
		Spawn:
		PLSS AB 2 bright A_FadeOut(0.2)
		goto Spawn
		Death:
		PLSE ABCDE 4 bright
		stop
	}
}

ACTOR PlasmaProjectile_Spread_Expand2 : PlasmaProjectile_Spread_Expand
{
	Speed 10
	states
	{
		Spawn:
		PLSS AB 6 bright
		PLSS B 0 A_Fadeout(0.33)
		goto Spawn
	}
}

ACTOR PlasmaProjectile_Spread_Expand3 : PlasmaProjectile_Spread_Expand
{
      states
      {
		Spawn:
		PLSS AB 2 bright A_FadeOut(0.5)
		goto Spawn
      }
}