

ACTOR ExplosionSmoke
{
    +NOBLOCKMAP
    +NOTELEPORT
    +DONTSPLASH
	+MISSILE
	+FORCEXYBILLBOARD
    +CLIENTSIDEONLY
    +NOINTERACTION
	+NOGRAVITY
	+DOOMBOUNCE
	+THRUACTORS
	BounceFactor 0.5
	Radius 0
	Height 0
	Scale 2.2
	Speed 1
	Mass 0
    States
    {
    Spawn:
		TNT1 A 2
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
		SM7K ABCDEFGHIJKLMNOPQRSTUVWXYZ 3
		Goto Death
	Death:
		TNT1 A 0
		Stop
	Stap:		
		TNT1 A 0
		Stop
    }
}


ACTOR ExplosionSmokeFast22: ExplosionSmoke
{
	Speed 2
	Scale 0.8
}


ACTOR HeavyExplosionSmoke: ExplosionSmoke
{
Speed 1
	States
    {
    Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
		smk2 AAAAAAAA 2 A_FadeIn(0.05)
		smk2 AAAAAAAAAAAAAAAAA 2
		smk2 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_FadeOut(0.01)
	Death:
	    TNT1 A 0
		Stop
	Stap:		
		TNT1 A 0
		Stop
    }

}


ACTOR BigSmokes: ExplosionSmoke
{
    Speed 1
	Alpha 0.1
	Scale 1.5
    States
    {
    Spawn:
        SMOK A 0
        Goto Death
	Death:
		SMK3 B 100
		SMK3 CDEFGHIJKLM 1
		
Stop
    }
}


Actor NeoSmoke: ExplosionSmoke
{
	Alpha 0.1
Speed 1
+CLIENTSIDEONLY
Scale 1.5
States
    {
    Spawn:
        TNT1 A 2
        Goto Death
	Death:                                                          
        PUF2 EEFGHIJK 2 A_FadeOut(0.010)
        TNT1 A 0 A_SpawnItem ("PlasmaSmoke")
        PUF2 LMNOPQRSTUVWXYZ 2 A_FadeOut(0.010)
		
Stop
}
}


Actor BigNeoSmoke: HeavyExplosionSmoke
{
	Scale 1.4
	Alpha 0.2
	Speed 1
	States
	{
	Spawn:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	smk2 A 40
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	smk2 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_FadeOut(0.002)
	Goto Death
	Death:
	    TNT1 A 0
    Stop
	Stap:		
	TNT1 A 0
	Stop
}
}


Actor HugeNeoSmoke: BigNeoSmoke
{
Alpha 0.5
Scale 2.5
States
	{
	Spawn:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	smk2 A 5
	smk2 A 40
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	smk2 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_FadeOut(0.003)
	Goto Death
	}
}

Actor RidiculousNeoSmoke: BigNeoSmoke
{
Alpha 0.5
Scale 5.0
States
	{
	Spawn:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	smk2 A 5
	smk2 A 40
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	smk2 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_FadeOut(0.003)
	Goto Death
	}
}

ACTOR GunFireSmoke
{
	Scale 0.25
	PROJECTILE
	+MISSILE
	+THRUACTORS
	Speed 8
	Renderstyle Add
    States
    {
    Spawn:
        SMOK A 0
		TNT1 A 0 A_Jump(192, "Spawn1", "Spawn2", "Spawn3", "Spawn4", "Live")
	
	Spawn1:
		TNT1 A 0
		TNT1 A 0 A_SetScale(0.28, 0.28)
		Goto Live
		
	Spawn2:
		TNT1 A 0
		TNT1 A 0 A_SetScale(0.3, 0.3)
		Goto Live
		
	Spawn3:
		TNT1 A 0
		TNT1 A 0 A_SetScale(-0.25, 0.25)
		Goto Live	
		
	Spawn4:
		TNT1 A 0
		TNT1 A 0 A_SetScale(-0.3, 0.3)
		Goto Live
	Live:
		SM7K ACEGIKMOQSUWY 1
Stop
    }
}


ACTOR GunFireSmoke2: GunFireSmoke
{
Speed 4
    States
    {
    Spawn:
   
	Live:
		SM7K ABCDEFGHIJKLMNOPQRSTUVWXYZ 1
Stop
    }
}



ACTOR AltSmoke: ExplosionSmoke
{
+NOINTERACTION
+NOCLIP
Scale 0.8
States
    {
    Spawn:
        PUF2 A 1
        Goto Death
	Death:                                                          
        PUF2 ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_FadeOut(0.010)
		
Stop
    }
}

ACTOR ShinnySmoke: AltSmoke
{
Scale 2.0
Renderstyle Add
}



Actor PlasmaSmoke
{
PROJECTILE
+CLIENTSIDEONLY
+MISSILE
+THRUACTORS
+DOOMBOUNCE
Radius 1
Height 1
Scale 2.0
Speed 1
Renderstyle Translucent
Alpha 0.4
States
    {
    Spawn:  
	    TNT1 A 0
		TNT1 A 0 A_Jump(128, 2)
		TNT1 A 0 A_SetScale(-1.2, 1.2)
		TNT1 A 0
        SMOK ABCDEFGHIJKLMNOPQR 2
		Stop
		}
}


ACTOR RocketSmokeTrail1: ExplosionSmoke
{
Speed 1
Alpha 0.7
Scale 1.3
States
{
Spawn:
TNT1 A 1
TNT1 A 0 A_Jump(128, 2)
TNT1 A 0 A_SetScale(-0.8, -0.8)
TNT1 A 0
SM1K ABCDEFGHIJKLMNOPQRSTUVWXYZ 4
Stop
}
}




ACTOR RocketSmokeTrail2: ExplosionSmoke
{
Speed 1
Alpha 0.7
Scale 0.2
States
{
Spawn:
SMK4 ABCDEFGHIJKLM 4
Stop
}
}


ACTOR SignalFlareSmokeTrail: ExplosionSmoke
{
Speed 2
Renderstyle Normal
XScale 0.1
YScale 0.2
States
{
Spawn:
SM1K OPQRSTUVWXYZ 5 A_SetScale(scalex+0.05, scaley+0.05)
Stop
}
}


ACTOR SignalFlareSmokeTrail2: ExplosionSmoke
{
Speed 1
Renderstyle Normal
XScale 0.4
YScale 0.4
States
{
Spawn:
TNT1 A 35
SM1K AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTTUUUVVVVWWWWWXXXXXYYYYYYYZZZZZZZZZ 3 A_SetScale(scalex+0.05, scaley+0.03)
Stop
}
}







Actor OldschoolRocketSmokeTrail2: AltSmoke
{
	Alpha 0.7
Speed 1
+CLIENTSIDEONLY
Scale 0.2
States
    {
    Spawn:  
	    TNT1 A 2
        SMK3 BCDEFGHIJKKLLMMNN 2
		SMK3 NN 1 A_FadeOut(0.05)
		Stop
		
Stop
}
}


Actor OldschoolRocketSmokeTrail2Bigger: AltSmoke
{
	Alpha 0.7
Speed 1
+CLIENTSIDEONLY
Scale 0.4
States
    {
    Spawn:  
	    TNT1 A 0
        SMK3 BBBBBBCDEFGHIJKKLLMMN 2
		SMK3 NNNN 1 A_FadeOut(0.05)
		Stop
		
Stop
}
}

Actor OldschoolRocketSmokeTrailDarker: AltSmoke
{
	Alpha 0.6
Speed 1
+CLIENTSIDEONLY
Scale 0.2
States
    {
    Spawn:  
	    TNT1 A 2
        SMK6 BCDEFGHIJKKLLMMNNNNNN 1
		SMK6 NNNN 1 A_FadeOut(0.1)
		Stop
		
Stop
}
}


Actor HitpuffSmoke
{
PROJECTILE
+CLIENTSIDEONLY
+MISSILE
+THRUACTORS
+DOOMBOUNCE
Radius 1
Height 1
Scale 0.7
Speed 1
Renderstyle Add
Alpha 0.4
States
    {
    Spawn:  
	    TNT1 A 0
		TNT1 A 0 A_Jump(128, 2)
		TNT1 A 0
        SMOK ABCDEFGHIJKLMNOPQ 1 A_SetScale(scalex+0.05, scaley+0.05)
		Stop
		
		
Stop
}
}



Actor ExplosionSmokeHD: HitpuffSmoke
{
Scale 2.0
Speed 2
Renderstyle Translucent
Alpha 0.6
States
    {
    Spawn:  
	    TNT1 A 0
		TNT1 A 0 A_Jump(128, 2)
		TNT1 A 0 A_SetScale(-2.5, -2.0)
		TNT1 A 0
        SM7K ABCDEFGHIJKLMNOPQRSTUVWXYZ 3
		Stop
		
		
Stop
}
}


Actor ExplosionSmokeHDFast: ExplosionSmokeHD
{
Speed 4
Alpha 0.5
States
    {
    Spawn:  
	    TNT1 A 0
		TNT1 A 0 A_Jump(128, 2)
		TNT1 A 0 A_SetScale(-2.5, -2.0)
		TNT1 A 0
        SM7K ABCDEFGHIJKLMNOPQRSTUVWXYZ 1
		Stop
		
		
Stop
}
}


Actor ExplosionSmokeHDLarge: HitpuffSmoke
{
Scale 5.0
Speed 1
States
    {
    Spawn:  
	    TNT1 A 0
		TNT1 A 0 A_Jump(128, 2)
		TNT1 A 0 A_SetScale(-6.0, -5.0)
		TNT1 A 0
        SMOK ABCDEFGHIJKLMNOPQ 5
		Stop
		
}
}


Actor NukeSmoke: HitpuffSmoke
{
Scale 6.0
Speed 1
Alpha 0.1
+SKYEXPLODE
+FORCEXYBILLBOARD
States
    {
    Spawn:  
	    SMk2 AAAAAAAAAAAA 2 A_FadeIn(0.05)
		SMk2 A 600
	Death:	
		SMk2 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 20 A_FadeOut(0.02)
		Stop
		
}
}


Actor NukeSmokeBig: NukeSmoke
{
XScale 18.0
YScale 12.0
}


Actor SmallSmoke: AltSmoke
{
+CLIENTSIDEONLY
	Speed 1
Scale 1.5
}




ACTOR MeleeSmoke: ExplosionSmoke
{
Speed 1
Alpha 0.15
Scale 0.2
States
{
Spawn:
//SMK1 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 1 A_FadeOut(0.005)
SMK3 B 4
SMK3 CDEFGHIJKLM 2
Stop
}
}



Actor SmokeSpawner
{
    Speed 20
    +NOCLIP
    States
    {
    Spawn:
      TNT1 A 0
		//NULL A 0 A_CustomMissile ("ShotSmoke", 0, 0, random (0, 360), 2, random (0, 180))
		NULL A 0 A_CustomMissile ("ShotSmoke", -5, 0, 0, 2, random (0, 45))
		NULL A 0 A_CustomMissile ("GunBarrelSmoke", -5, 0, 0, 2, 0)
        Stop
    }
}

Actor SmokeSpawner11
{
    Speed 25
    +NOCLIP
    States
    {
    Spawn:
		TNT1 A 0
		NULL A 0 A_CustomMissile ("GunBarrelSmoke", -10, 0, 0, 2, 90)
        Stop
    }
}



ACTOR ShotSmoke
{
+NOGRAVITY
+NOBLOCKMAP
+FLOORCLIP
+FORCEXYBILLBOARD
+NOINTERACTION
+FORCEXYBILLBOARD
+MISSILE
Speed 1
RenderStyle Translucent
Alpha		0.1
+CLIENTSIDEONLY
Radius		0
Height		0
Scale		0.6

States
 {
    Spawn:
         NULL A 1
         SMOK ABCDEFGHIJK 2
        Stop
    }
}


ACTOR GunBarrelSmoke: ExplosionSmoke
{
 
	Alpha 0.4
	RenderStyle Translucent
	XScale 0.3
	YScale 0.3
	Speed 4
    States
    {
    Spawn:
		TNT1 A 0
		TNT1 A 0 A_Jump(255, "Spawn1", "Spawn2", "Spawn3", "Spawned")
	Spawned:
		SMOK CDEFGHIJKLMNOP 1
		Stop

	Spawn1:
		TNT1 A 0
		TNT1 A 0 A_SetScale (0.4, 0.4)
		Goto Spawned
	Spawn2:
		TNT1 A 0
		TNT1 A 0 A_SetScale (-0.4, -0.4)
		Goto Spawned
	Spawn3:
		TNT1 A 0
		TNT1 A 0 A_SetScale (-0.3, -0.3)
		Goto Spawned
	Stap:		
		TNT1 A 0
		Stop
    }
}

ACTOR CasingSmoke: Shotsmoke
{
Speed 1
RenderStyle Add
Alpha		0.4
Scale		0.07
States
 {
    Spawn:
         NULL A 1
         SMOK ABCDEFGHIJK 1 A_FadeOut(0.01)
        Stop
    }
}


actor CyberStep
{
	+NOBLOCKMAP
	+NOGRAVITY
	+NOTELEPORT
	renderstyle translucent
	alpha 0.75
    Scale 0.5
	states
	{
		Spawn:
			MNSM ABCDEFGHIJKLMNOPQ 1 bright
			stop
	}
}

Actor LostSoulOnHandFireSpawner
{
    Speed 20
    +NOCLIP
    States
    {
    Spawn:
      TNT1 A 1
      TNT1 A 0 Thing_ChangeTID(0,390)
 NULL AAA 0 A_CustomMissile ("SoulTrails", 0, 0, random (0, 360), 2, random (0, 180))
        Stop
    }
}


Actor LSOHK
{
    Speed 20
    +NOCLIP
    States
    {
    Spawn:
      TNT1 A 1
      TNT1 A 0 A_PlaySound ("Skull/Death")
 	EXPL AAAAAAAAAAAAAAAA 0 A_CustomMissile ("FlameTrails", 6, 0, random (0, 360), 2, random (0, 360))
		EXPL A 0 A_SpawnItemEx("ExplosionParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 0)
    TNT1 AAA 0 A_CustomMissile ("LSpart1", 42, 0, random (0, 360), 2, random (0, 160))
    TNT1 A 0 A_CustomMissile ("LSpart3", 42, 0, random (0, 360), 2, random (0, 160))
    TNT1 AAAA 0 A_CustomMissile ("LSpart2", 42, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0
        Stop
    }
}










ACTOR BarrelExplosionSmokeColumn
{
    Radius 0
    Height 0
	//Scale 0.4
	//Scale 0.8
	XScale 1.6
	YScale 1.0
    +NOBLOCKMAP
    +NOTELEPORT
    +DONTSPLASH
	+CLIENTSIDEONLY
	Renderstyle Translucent
	Alpha 0.9
	Damage 0
    States
    {
    Spawn:
	    SB3M ABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWX 2
		SB3M ABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWX 2
		SB3M ABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWX 2
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 2 A_FadeOut(0.03)
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 2 A_FadeOut(0.03)
		Stop
Stap:		
TNT1 A 0
Stop
    }
}



ACTOR BarrelExplosionSmokeColumnInfinite: BarrelExplosionSmokeColumn
{
Renderstyle Translucent
	Alpha 0.95
    States
    {
    Spawn:
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 3
		Loop
    }
}


ACTOR BarrelExplosionSmokeColumnInfiniteSmall: BarrelExplosionSmokeColumnInfinite
{
XScale 0.5
YScale 0.5
}



ACTOR ExplosionSimpleSmokeColumn: BarrelExplosionSmokeColumn
{
    Radius 0
    Height 0
	Alpha 0.4
}


ACTOR MicroSmokeColumn: BarrelExplosionSmokeColumn
{
    Radius 0
    Height 0
	Alpha 0.2
	RenderStyle Add
	XScale 0.2
	YScale 0.2
	States
    {
    Spawn:
		SB3M ABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWX 2
		TNT1 A 0 A_SetScale(0.16, 0.16)
		SB3M ABCDEFGHIJKLMNOPQRSTUVWXABCDEFGHIJKLMNOPQRSTUVWX 2
		TNT1 A 0 A_SetScale(0.13, 0.13)
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 3 
		TNT1 A 0 A_SetScale(0.10, 0.10)
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 3  
		TNT1 A 0 A_SetScale(0.06, 0.06)
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 3 
		TNT1 A 0 A_SetScale(0.03, 0.03)
		SB3M ABCDEFGHIJKLMNOPQRSTUVWX 3 
		Stop
		}
}

ACTOR ExplosionSimpleSmokeColumn2: ExplosionSimpleSmokeColumn
{
   +NOGRAVITY
}
	
	
	
ACTOR BigBlackSmoke
{
    +NOBLOCKMAP
    +NOTELEPORT
    +DONTSPLASH
	+MISSILE
	+FORCEXYBILLBOARD
    +CLIENTSIDEONLY
    +NOINTERACTION
	+NOGRAVITY
	+DOOMBOUNCE
	+THRUACTORS
	Health 99999
	BounceFactor 0.5
	Radius 1
	Height 1
	XScale 3.0
	YScale 3.0
	Speed 1
    States
    {
    Spawn:
	TNT1 A 0
	Exist:
	SM6K AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ 1 A_SetScale(scalex+0.01, scaley+0.01)
	Goto Death
	Death:
	    TNT1 A 0
    Stop
Stap:		
TNT1 A 0
Stop
    }
}

Actor FLamethrowerSmokeEffect: BigBlackSmoke
{
-NOINTERACTION
BOunceFactor 0
Speed 32
XScale 4.0
YScale 4.0
Radius 32
Height 64
States
	{
	Spawn:
	TNT1 A 1
	TNT1 A 12
	TNT1 A 0 A_Stop
	TNT1 A 0 A_Recoil(-5)
	Goto Exist
	}
}





ACTOR BigBlackSmokeLarger: BigBlackSmoke
{
	Scale 6.0
	Speed 1
	Alpha 1.0
	Renderstyle Normal
	States
    {
    Spawn:
	TNT1 A 0
	SM7K ABCDEFGHIJKLMNOPQRSTUVWXYZ 6
	Goto Death
	Death:
	    TNT1 A 0
    Stop
Stap:		
TNT1 A 0
Stop
}
}

ACTOR BigBlackSmokePillar: BigBlackSmoke
{
	Scale 1.4
	Speed 1
	Alpha 0.5
    States
    {
    Spawn:
	SMK5 JIHGFEDCB 2
	SMK5 A 50
	Goto Death
	Death:
		SMK5 BCDEFGHIJ 4
	    TNT1 A 0
    Stop
	Stap:		
	TNT1 A 0
	Stop
    }
}

ACTOR BigBlackSmokePillarDecoration 13121
{
	Scale 1.4
	Alpha 0.9
	Radius 32
	Height 32
	Renderstyle Translucent
	+CLIENTSIDEONLY
    States
    {
    Spawn:
	SB3M ABCDEFGHIJKLMNOPQRSTUVWX 2
	Loop
    }
}


ACTOR BigBlackSmokePillar2: BigBlackSmokePillar
{
	XScale -1.8
	YScale 1.8
}


ACTOR BlackSmokePillarParticle: BigBlackSmoke
{
Scale 0.3
    States
    {
    Spawn:
	TNT1 A 0
	TNT1 A 5
	TNT1 A 0 A_FadeOut(0.9)
	SMK1 KKKKKKKKK 2 A_FadeIn(0.02)
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	SMK1 K 50
	TNT1 A 0 A_JumpIf(waterlevel > 1, "Stap")
	SMK1 KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 2 A_FadeOut(0.01)
	Goto Death
	Death:
	    TNT1 A 0
    Stop
Stap:		
TNT1 A 0
Stop
    }
}

ACTOR MediumBlackSmoke: BigBlackSmoke
{
Scale 0.3
}


