class SquareSplashBase : SquareActor
{
	Default
	{
		+NOBLOCKMAP;
		+NOCLIP;
		+NOGRAVITY;
		+DONTSPLASH;
		+DONTBLAST;
		+CLIENTSIDEONLY;
		+FORCEXYBILLBOARD;
	}
	States
	{
	Spawn:
		SLDG ABCDE 5;
		Stop;
	}
}

class SquareSplash : SquareActor
{
	Default
	{
		Radius 2;
		Height 4;
		+CLIENTSIDEONLY;
		+NOBLOCKMAP;
		+MISSILE;
		+DROPOFF;
		+NOTELEPORT;
		+CANNOTPUSH;
		+DONTSPLASH;
		+DONTBLAST;
		+FORCEXYBILLBOARD;

		Gravity 0.125;
	}
	States
	{
	Spawn:
		SLDG FGH 4;
		SLDG I 8;
		Stop;
	Death:
		SLDG I 6;
		Stop;
	}
}

class SquareInvisibleSplash : SquareSplashBase
{
	States
	{
	Spawn:
		TNT1 A 70;
		Stop;
	}
}

class SquareBloodSplashBase : SquareSplashBase { }
class SquareBloodSplash     : SquareSplash     { }

class SquareNukageSplashBase : SquareSplashBase { Default { Translation "198:202=116:119"; } }
class SquareNukageSplash     : SquareSplash     { Default { Translation "198:202=116:119"; } }

class SquareMudSplashBase : SquareSplashBase { Default { Translation "198:202=228:231"; } }
class SquareMudSplash     : SquareSplash     { Default { Translation "198:202=228:231"; } }

class SquarePunchSplashBase : SquareSplashBase { Default { Translation "198:202=36:38"; } }
class SquarePunchSplash     : SquareSplash     { Default { Translation "198:202=36:38"; } }

class SquareBossGooSplashBase : SquareSplashBase { Default { Translation "198:202=2:5"; } }
class SquareBossGooSplash     : SquareSplash     { Default { Translation "198:202=2:5"; } }

class SquareWaterSplashBase : SquareActor
{
	Default
	{
		+CLIENTSIDEONLY;
		+NOBLOCKMAP;
		+NOCLIP;
		+NOGRAVITY;
		+DONTSPLASH;
		+DONTBLAST;
	}
	States
	{
	Spawn:
		SPSH ABCDE 5;
		Stop;
	}
}

class SquareWaterSplash : SquareActor
{
	Default
	{
		Radius 2;
		Height 4;
		+NOBLOCKMAP;
		+MISSILE;
		+DROPOFF;
		+NOTELEPORT;
		+CANNOTPUSH;
		+DONTSPLASH;
		+DONTBLAST;
		+CLIENTSIDEONLY;
		Gravity 0.125;
	}
	States
	{
	Spawn:
		SPSH FGH 4;
		SPSH I 8;
		Stop;
	Death:
		SPSH I 6;
		Stop;
	}
}

class SquareButterMilkSplashBase : SquareSplashBase { Default { Translation "198:202=241:244"; } }
class SquareButterMilkSplash     : SquareSplash     { Default { Translation "198:202=241:244"; } }

class SquareMilkSplashBase : SquareSplashBase { Default { Translation "198:202=10:14"; } }
class SquareMilkSplash     : SquareSplash     { Default { Translation "198:202=10:14"; } }

class SquareSlimeSplashBase : SquareSplashBase { Default { Translation "198:202=131:135"; } }
class SquareSlimeSplash     : SquareSplash     { Default { Translation "198:202=131:135"; } }

class SquareCheeseSplashBase : SquareSplashBase { Default { Translation "198:202=242:246"; } }
class SquareCheeseSplash     : SquareSplash     { Default { Translation "198:202=242:246"; } }

class SquareOrangeSplashBase : SquareSplashBase { Default { Translation "198:202=147:150"; } }
class SquareOrangeSplash     : SquareSplash     { Default { Translation "198:202=147:150"; } }

class LavaSteam : Steam
{
	Default
	{
		Scale 0.08;
	}
}

class SquareLavaSplashBase : SquareSplashBase
{
	Default
	{
		Translation "198:202=147:150";
	}
	States
	{
	Spawn:
		SLDG ABCDE 5 A_SpawnItemEx("LavaSteam", random[SquareEffectRandom](-8,8), random[SquareEffectRandom](-8,8), 0, 0, 0, random[SquareEffectRandom](1, 4) * 0.5, 0, 0, 96);
		Stop;
	}
}

class SquareLavaSplash : SquareSplash
{
	Default
	{
		Translation "198:202=147:150";
	}
	States
	{
	Spawn:
		SLDG FGH 4;
		SLDG I 8;
		Stop;
	Death:
		SLDG I 6;
		Stop;
	}
}
