ACTOR Rail_Standard
{
	Radius				11
	Height				8
	Speed				30
	Damage				1
	DamageType			MarineFire
	
	DamageType			MarineFire
	RenderStyle			Add
	
	Projectile
	+RANDOMIZE
	+MTHRUSPECIES
	
	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(100,128,0,0,16)
			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
	+MTHRUSPECIES
	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 : FastProjectile replaces PlasmaBall
{
  Game Doom
  SpawnID 51
  Radius 13
  Height 8
  Speed 40
  Damage 7
  Projectile
  RenderStyle Add
  Alpha 1.0
  SeeSound "weapons/plasmaf"
  DeathSound "weapons/plasmax"
  Obituary "$OB_MPPLASMARIFLE"
  DamageType MarineFire
  +MTHRUSPECIES
  States
  {
  Spawn:
    PLSS AB 6 bright
    Loop
  Death:
    PLSE ABCDE 4 bright
    stop
  }
}

ACTOR PlasmaProjectile_Advanced : FastProjectile
{
	Radius				11
	Height				8
	Speed				64
	Damage				6
	DamageType			MarineFire
	RenderStyle			Add
	Projectile
	+RIPPER //[Samu] Lazy-ass motherfucker.
	+MTHRUSPECIES
	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
			Loop
		Death:
			PLSE C 8 bright
			PLSE D 6 bright
			PLSE E 4 bright
			stop
	}
}

ACTOR PlasmaProjectile_Spread : FastProjectile
{
	Game Doom
	SpawnID 51
	Radius 13
	Height 8
	Speed 64
	Damage 7
	Projectile
	RenderStyle Add
	Alpha 0.75
	SeeSound "weapons/plasmaf"
	DeathSound "weapons/plasmax"
	Obituary "$OB_MPPLASMARIFLE"
	+MTHRUSPECIES
	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
		//[Samu] I have no idea why the heck they want to clear the target...
		//TNT1 A 0 A_ClearTarget
		//[Samu] But this causes the "Im not gaining cash with this gun" problem. Specially for the plasmagun with spread.
		Spawn2:
		PLSS A 2 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, 45, 2,AAPTR_TARGET)
		PLSS A 0 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, -45, 2,AAPTR_TARGET)
		PLSS B 3 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, 45, 2,AAPTR_TARGET)
		PLSS B 0 bright A_CustomMissile("PlasmaProjectile_Spread_Expand2", 0, 0, -45, 2,AAPTR_TARGET)
		PLSS B 0 A_FadeOut(0.1)
		goto Spawn
	}
}

ACTOR PlasmaProjectile_Spread_Expand : FastProjectile
{
	Game Doom
	SpawnID 51
	Radius 13
	Height 8
	Speed 72
	Damage 5
	Projectile
	+RANDOMIZE
	+MTHRUSPECIES
	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
      }
}