ACTOR GvHRoot 24778
{
  Game Doom
  Radius 16
  Height 84
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    ROOT A -1
    Stop
  }
}

ACTOR GvHRootSmooth 24779
{
  Game Doom
  Radius 16
  Height 84
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    ROOT B -1
    Stop
  }
}

ACTOR GvHRootSmall 24780
{
  Game Doom
  Radius 16
  Height 48
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    ROOT C -1
    Stop
  }
}

ACTOR GvHRootTiny 24781
{
  Game Doom
  Radius 16
  Height 24
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    ROOT D -1
    Stop
  }
}

ACTOR GvHRootDouble 24782
{
  Game Doom
  Radius 16
  Height 48
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    ROOT E -1
    Stop
  }
}

ACTOR GvHRootFloor 24783
{
  Game Doom
  Radius 16
  Height 48
  -SOLID
  States
  {
  Spawn:
    ROOT F -1
    Stop
  }
}

ACTOR GvHCactus 24784
{
  Game Doom
  Radius 16
  Height 64
  +SOLID
  States
  {
  Spawn:
    GCAC A -1
    Stop
  }
}

ACTOR GvHCactusStump 24785
{
  Game Doom
  Radius 16
  Height 32
  +SOLID
  States
  {
  Spawn:
    GCAC B -1
    Stop
  }
}

ACTOR GvHRadioactiveBarrel 24786
{
  Game Doom
  Radius 16
  Height 48
  +SOLID
  States
  {
  Spawn:
    GDBR A -1
    Stop
  }
}

Actor HexenBarrel 18005
{
	Radius 8
	Height 32
	+SOLID
	
	States
	{
		Spawn:
			HBRL A -1
		Stop
	}
}

ACTOR SmallBush1 10702
{
  Radius 16
  Height 24
  +SOLID
  States
  {
  Spawn:
    BUSN A -1
    Stop
  }
}

ACTOR SmallBush2 10703
{
  Radius 16
  Height 40
  +SOLID
  States
  {
  Spawn:
    BUSN B -1
    Stop
  }
}

Actor HereticPillar 10708
{
	Radius 24
	Height 96
	+SOLID
	
	States
	{
		Spawn:
			BRPL A -1
		Stop
	}
}

Actor HereticFloorTorch 10709
{
	radius 16
	Height 64
	+SOLID
	
	States
	{
		Spawn:
			SRTC ABC 4 Bright
		Loop
	}
}

Actor HereticCeilingTorch 10710
{
	radius 24
	height 64
	-SOLID
	+NOGRAVITY
	
	States
	{
		Spawn:
			CHDL ABC 4 Bright
		Loop
	}
}

actor Alien_Green
{
  obituary "%o forgot to kill that little Lizard Trooper."
  health 40
  radius 20
  height 56
  scale 0.666
  speed 10
  painchance 192
  mass 2400
  seesound "alien/sight"
  painsound "alien/pain"
  deathsound "alien/death"
  activesound "alien/active"
  MONSTER
  +FLOORCLIP
  -COUNTKILL
  +QUICKTORETALIATE
  +NOINFIGHTING
  +NODAMAGETHRUST
  +NEVERRESPAWN
  -CANBLAST
  -NOTARGET
  states
  {
  Spawn:
	F06W A 0
	F06W A 10 A_Wander
    F06W B 10 A_Look
    goto See
  See:
  	F06W A 0 A_JumpIfTargetInLOS(2,140)
	F06W A 0 A_Jump(4,"Giveup")
    F06W AABB 4 A_Chase
	F06W CCDD 4 A_Chase
    loop
  Giveup:
  	F06W A 0 A_ClearTarget
	goto See
  Missile:
    F06M A 0 A_Jump(150, "Missile2")
    F06M A 6 A_FaceTarget
    F06M A 0 A_PlayWeaponSound("alien/attack")
    F06M B 6 bright A_CustomMissile("AlienBullet",32,0,random(-3,3))
    F06M A 6
    goto See
  Missile2:
    F06N A 6 A_FaceTarget
    F06N A 0 A_PlayWeaponSound("alien/attack")
    F06N B 6 bright A_CustomMissile("AlienBullet",32,0,random(-3,3))
    F06N B 6
    goto See	
  Pain:
    F06W A 4 A_Pain
    goto See
  Death:
  	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	F06D A 0 A_Jump(128, "Death2")
    F06D A 5 A_Scream
    F06D B 6
    F06D C 6 A_NoBlocking
    F06D D 6
    F06D E -1
    stop
  Death2:
    F06D A 5 A_Scream
    F06D B 6
    F06D C 6 A_NoBlocking
    F06D D 6
    F06D EF 6
	F06D A 0 A_PlaysoundEx("alien/choke", CHAN_BODY)
	F06D GHGHGHGHGHGH 8
	F06D F 6
	F06D F 0 A_PlaySoundEx("alien/death", CHAN_BODY)
	F06D E -1
    stop
  }
}

actor AlienBullet
{
  Game Doom
  Radius 4
  Height 4
  Speed 35
  Damage (random(4, 6))
  Projectile
  +BLOODSPLATTER
  decal bulletchip
  Renderstyle add
  scale 0.5
  States
  {
  Spawn:
    EN1X A 0 bright A_SpawnItemEx("AlienBulletTrail",-30,0,0,0,0,0,0,128,0)
    EN1X A 0 bright A_SpawnItemEx("AlienBulletTrail",-25,0,0,0,0,0,0,128,0)
    EN1X A 0 bright A_SpawnItemEx("AlienBulletTrail",-20,0,0,0,0,0,0,128,0)
    EN1X A 0 bright A_SpawnItemEx("AlienBulletTrail",-15,0,0,0,0,0,0,128,0)
    EN1X A 0 bright A_SpawnItemEx("AlienBulletTrail",-10,0,0,0,0,0,0,128,0)
    EN1X A 1 bright A_SpawnItemEx("AlienBulletTrail",-5,0,0,0,0,0,0,128,0)
    loop
  Death:
    TNT1 A 1
    stop
  }
}

actor AlienBulletTrail
{
  Game Doom
  Radius 0
  Height 0
  Speed 0
  Damage 0
  Projectile
  +CLIENTSIDEONLY
  Renderstyle Add
  scale 0.5
  States
  {
  Spawn:
    EN1X A 2 bright
    stop
  }
}

actor LizardGunner 
{
  obituary "%o was forced to die by an Enforcer"
  health 80
  radius 24
  height 64
  scale 0.75
  mass 3200
  speed 10
  painchance 128
  seesound "lizard/sight"
  painsound "lizard/pain"
  deathsound "lizard/death"
  activesound "lizard/active"
  MONSTER
  +FLOORCLIP
  +QUICKTORETALIATE
  +MISSILEMORE
  +NOINFIGHTING
  -COUNTKILL
  +NODAMAGETHRUST
  +NEVERRESPAWN
  -CANBLAST
  -NOTARGET
  decal bulletchip
  states
  {
  Spawn:
	F09W A 0
	F09W A 10 A_Wander
    F09W B 10 A_Look
  See:
  	F09W A 0 A_JumpIfTargetInLOS(2,180)
	F09W A 0 A_Jump(4,"Giveup")
    F09W AABB 2 A_Chase
    F09W CCDD 2 A_Chase
    loop
  Giveup:
  	F09W A 0 A_ClearTarget
	goto See
  Missile:
	F09M A 5 A_FaceTarget
	F09M A 0 A_Jump(248, 2)
	F09M A 0 A_JumpIfCloser(360, "Missile2")
	F09M A 0 A_PlaySound("chaingun/shoot")
    F09M A 2 bright A_FaceTarget
    F09M B 1 bright A_CustomMissile("LizardBullet",32,0,random(-10,10))
    F09M A 2 A_CPosRefire
    goto Missile+1
  Missile2:
    F09C A 12 A_FaceTarget
	F09C B 1 A_FaceTarget
	F09C B 0 A_PlaySoundEx("LIZSPIT","voice",0)	
	F09C B 3 A_CustomMissile("LizardSpit",32,0,0,2,random(10,15))
	F09C B 3 A_CustomMissile("LizardSpit",32,0,0,2,random(10,15))
	F09C B 3 A_CustomMissile("LizardSpit",32,0,0,2,random(10,14))
	F09C B 3 A_CustomMissile("LizardSpit",32,0,0,2,random(10,14))
	F09C B 3 A_CustomMissile("LizardSpit",32,0,0,2,random(10,14))
	F09C B 3 A_CustomMissile("LizardSpit",32,0,0,2,random(10,12))
	goto See
  Pain:
    F09W A 4 A_Pain
    goto See
  Death:
  	TNT1 A 0 A_GiveToTarget("HitBeep",1)
    F09D A 0 A_QueueCorpse
    F09D A 5 A_Scream
    F09D B 5
    F09D C 5 A_NoBlocking
    F09D DE 5
    F09D F -1
    stop
  }
}

actor LizardSpit
{
  Radius 8
  Height 8
  Speed 20
  Damage (random(4,6))
  seesound "lizard/spit"
  DeathSound ""
  scale 0.5
  gravity 0.5
  PROJECTILE
  obituary "%o was dissolved by an Enforcer's acid spit."
  -NOGRAVITY
  +BRIGHT
  +SKYEXPLODE
  +DONTREFLECT
  States
  {
  Spawn:
    SLIM A 1
    loop
  Death:
    SLIM A 1
	stop
  }
}

actor LizardBullet : FastProjectile
{
	radius 1
	height 1
    speed 250
	damage (random(3,6))
	damagetype "suppression2"
	obituary "%o was forced to die by %k's Enforcer."
	+BLOODSPLATTER
	states
	{
		Spawn:
			TNT1 A 1
			loop
		Death:
			TNT1 A 1 A_SpawnItem("bulletpuff")
			stop
	}
}

actor AlienCommander 
 {
  obituary "%o sucked down an Alien Commander's rocket."
  hitobituary "%o got his head sliced off by an Alien Commander."
  health 275
  radius 32
  height 64
  mass 3600
  speed 8
  painchance 96
  scale 0.92
  //meleethreshold 128
  meleerange 64
  seesound "comm/sight"
  painsound "comm/pain"
  deathsound "comm/death"
  activesound "comm/active"
  damagefactor "commanderexplosion", 0
  MONSTER
  +FLOORCLIP
  +FLOAT
  +NOGRAVITY
  +QUICKTORETALIATE
  -COUNTKILL
  +DONTHURTSPECIES
  +NOINFIGHTING
  +NODAMAGETHRUST
  +NEVERRESPAWN
  -CANBLAST
  states
  {
  Spawn:
	F12W A 0
    F12W A 4 A_Look
	F12W B 4 A_Wander
	Goto See
  Idle:
	F12W AB 4 A_Look
	F12W BA 4 A_Wander
	Goto See
  See:
    F12W A 0 A_JumpIfTargetInLOS(2,270)
	F12W A 0 A_Jump(2,"Giveup")
    F12W AABBAABBAABBAABB 3 A_Chase
    loop
  Giveup:
  	F12W A 0 A_ClearTarget
	goto See
  Missile:
    F12N L 0 A_PlayWeaponSound("comm/attack")
    F12N AAAAAA 2 A_FaceTarget
	F12N B 4 A_CustomMissile("AlienCommanderAttack",24,0,0)
    goto See
  Melee:
    F12M A 4 A_FaceTarget
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,-90)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,180)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,90)
	F12M B 4 A_CustomMissile("CommanderMelee",32,0,0)
	F12M B 0 A_PlaySound("comm/melee",0,300)	
	F12M C 4 A_FaceTarget
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,-90)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,180)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,90)
	F12M D 4 A_CustomMissile("CommanderMelee",32,0,0)
	F12M C 0 A_PlaySound("comm/melee",0,300)
	F12M E 4 A_FaceTarget
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,-90)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,180)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,90)
	F12M F 4 A_CustomMissile("CommanderMelee",32,0,0)
	F12M H 0 A_PlaySound("comm/melee",0,300)
	F12M G 4 A_FaceTarget
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,-90)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,180)
	F12M C 0 A_CustomMissile("CommanderMelee",32,0,90)
	F12M H 4 A_CustomMissile("CommanderMelee",32,0,0)
	F12M H 0 A_PlaySound("comm/melee",0,300)
	goto See
  Pain:
    F12P A 6 A_Pain
    goto See
  Death:
  	TNT1 A 0 A_GiveToTarget("HitBeep",1)
    F12D A 6 A_Scream
    F12D BCDE 6
	F12D F 6 A_Fall
	F12D G 6
    F12D H -1
	stop
 }	
}

actor AlienCommanderAttack
{
  Radius 18
  Height 18
  Speed 26
  damage (random(25,60))
  PROJECTILE
  +ROCKETTRAIL
  +BRIGHT
  scale 0.75
  DeathSound "rpg/blowup"
  obituary "%o sucked down a commander's rocket."
  States
  {
  Spawn:
    RPGX A 8 bright A_SeekerMissile(7,7)
    loop
  Death:
    RPGX B 2 Bright A_SpawnItemEx("CommanderExplosion", 1)
	stop
  }
}

actor CommanderExplosion
{
  Radius 12
  Height 12
  Speed 28
  PROJECTILE
  +BRIGHT
  -SOLID
  damagetype "kaboom"
  scale 0.75
  DeathSound "rpg/blowup"
  obituary "%o sucked down a commander's rocket."
  States
  {
  Spawn:
    NKXP A 0
    goto death
  Death:
    NKXP B 2 Bright A_SetTranslucent (1, 1)
	NKXP C 2 Bright A_Explode(36, 228, 0)
	NKXP DEFGHIJKLMNOPQRSTUV 2 Bright
	stop
  }
}

actor CommanderMelee
{
	speed 32
	radius 4
	height 8
	hitobituary "%o got his head sliced off by a Commander."
	damage (random(5,12))
	PROJECTILE
	+DONTREFLECT
	states
	{
		Spawn:
			TNT1 A 2
		Death:
			TNT1 A 1
			stop
	}
}

actor BattleLord 
{
  hitobituary "%o got stomped by a Battlelord."
  health 1000
  radius 40
  height 110
  mass 4000
  speed 12
  seesound ""
  painsound "battlelord/pain"
  deathsound "battlelord/death"
  activesound "battlelord/active"
  PainChance 4
  MONSTER
  +FLOORCLIP
  +NORADIUSDMG
  +QUICKTORETALIATE
  +NOICEDEATH
  +NODROPOFF
  +DONTRIP
  -PUSHABLE
  +MISSILEMORE
  +MISSILEEVENMORE
  -COUNTKILL
  +NOINFIGHTING
  +NODAMAGETHRUST
  +NEVERRESPAWN
  -CANBLAST
  +BOSS
  states
  {
  Spawn:
    F03W A 0
    F03W A 10 A_Look
	F03W B 10 A_Wander
	Goto See
	/*
  Idle:
	BLOR AB 10 A_Look
	Goto See
	*/
  See:
  	F03W A 0 A_JumpIfTargetInLOS(2,240)
//	F03W A 0 A_Jump(25,"Giveup")
    F03W AABB 4 A_Chase
    F03W CCDD 4 A_Chase
    loop
//  Giveup:
//  	F03W A 0 A_ClearTarget
//	goto See
  Missile:
  	F03W E 0 A_Jump(85,"Shoot")
  	F03W E 0 A_JumpIfCloser(512,"Shoot")
	F03W E 0 A_JumpIfCloser(2048,"Grenade")
	goto Shoot
  Shoot:
    F03M A 4 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_FaceTarget
	F03M A 2 A_PlaySound("chaingun/shoot")
    F03M BB 1 bright A_CustomMissile("BattleLordBullet",40,0,random(-11,11))
	F03M A 0 A_CposRefire
    goto Shoot+1
  Grenade:
    F03N AAA 5 A_FaceTarget
    F03N B 15 bright A_CustomMissile("BattleLordAttack",32,16,0,2,random(30,34))
    F03N AAA 5 A_FaceTarget
    F03N B 15 bright A_CustomMissile("BattleLordAttack",32,16,0,2,random(30,34))
    F03N AAA 5 A_FaceTarget
    F03N B 15 bright A_CustomMissile("BattleLordAttack",32,16,0,2,random(30,34))
    F03N AAA 5 A_FaceTarget
    goto See
  Pain:
    F03P A 6 A_Pain
    goto See	
  Death:
  	TNT1 A 0 A_GiveToTarget("HitBeep",1)
    F03D A 15 A_Scream
	F03D B 15
	F03D C 15 A_NoBlocking
	TNT1 A 0 ACS_ExecuteAlways(6, 0)
	F03D DE 15
    F03D F -1
    stop
  }
}

actor BattleLordBullet : FastProjectile
{
	radius 1
	height 1
	speed 250
	//seesound "chaingun/shoot"
	obituary "%o was obliterated by a BattleLord."
	damage (random(7,12))
	DamageType "BattlelordBullet"
	+DONTREFLECT
	+BLOODSPLATTER
	states
	{
		Spawn:
			TNT1 A 1
			loop
		Death:
			TNT1 A 1 A_SpawnItem("bulletpuff")
			stop
	}
}

actor BattleLordAttack
{
  Radius 8
  Height 8
  Speed 20
  Damage (random(35,70))
  seesound "rpg/shoot"
  Damagetype "BattlelordBomb" 
  DeathSound "rpg/blowup"
  scale 0.5
  reactiontime 50
  decal Scorch
  gravity 0.5
  PROJECTILE
  obituary "%o was split into over 9000 pieces by a Battlelord."
  -NOGRAVITY
  +HEXENBOUNCE
  +BRIGHT
  +SKYEXPLODE
  +DONTREFLECT
  //+FORCERADIUSDMG
  States
  {
  Spawn:
    BS2X A 1 bright A_SpawnItemEx("BattleLordAttackTrail1",0,0,0,0,0,0,0,128,0)
    BS2X B 1 bright A_SpawnItemEx("BattleLordAttackTrail2",0,0,0,0,0,0,0,128,0)
    BS2X C 1 bright A_SpawnItemEx("BattleLordAttackTrail3",0,0,0,0,0,0,0,128,0)
    BS2X D 1 bright A_SpawnItemEx("BattleLordAttackTrail4",0,0,0,0,0,0,0,128,0)
	BS2X A 0 A_Countdown
    loop
  Death:
    RPGX B 2 Bright A_SetTranslucent (1, 1)
	RPGX C 2 Bright A_Explode(84,84,0)
	RPGX DEFGHIJKLMNOPQRSTUV 2 Bright
	stop
  }
}

actor BattleLordAttackTrail1
{
  Game Doom
  Radius 0
  Height 0
  Speed 0
  Damage 0
  PROJECTILE
  +CLIENTSIDEONLY
  scale 0.5
  RenderStyle Translucent
  States
  {
  Spawn:
    BS2X A 2 bright A_FadeOut(0.1)
    loop
  }
}

actor BattleLordAttackTrail2 : BattleLordAttackTrail1
{
  States
  {
  Spawn:
    BS2X B 2 bright A_FadeOut(0.1)
    loop
  }
}
actor BattleLordAttackTrail3 : BattleLordAttackTrail1
{
  States
  {
  Spawn:
    BS2X C 2 bright A_FadeOut(0.1)
    loop
  }
}
actor BattleLordAttackTrail4 : BattleLordAttackTrail1
{
  States
  {
  Spawn:
    BS2X D 2 bright A_FadeOut(0.1)
    loop
  }
}

actor BattleLordPuff : BulletPuff
{
}

actor SamaraGhoul
{
	Health 999999
	+NOCLIP
	+DONTSPLASH
	- SHOOTABLE
	- SOLID
	- COUNTKILL
	Radius 18
	Height 50
	Scale 0.3
	renderstyle translucent
	Alpha 0.0
	States
	{
	Spawn:
		SAMA ABC 5 bright A_FadeIn(0.20)
		SAMA D 0 bright A_ChangeFlag("SHOOTABLE", 1)
		SAMA D 5 bright A_FadeIn(0.20)
		SAMA E 5 bright A_FadeOut(0.25)
		SAMA F 0 bright A_ChangeFlag("SHOOTABLE", 0)
		SAMA FGHI 5 bright A_FadeOut(0.25)
	Stop
	Death:
		TNT1 A 90
	Stop
	}
}

actor Bloodshotcreate
{
	- SOLID
	+NOCLIP
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile("Bloodshot",0,0,random(0,360),2,random(-20,90))
	Stop
	}
}

actor Bloodshotcreate2
{
	- SOLID
	+NOCLIP
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AAAA 0 A_CustomMissile("Bloodshot",0,0,random(0,360),2,random(-20,90))
	Stop
	}
}

actor Bloodshot
{
	PROJECTILE
	Damage 0
	Height 2
	radius 2
	- NOGRAVITY
	Speed 30
	States
	{
	Spawn:
		BLUD CCCCCCCCCCCCCCCBBBBBBBBAAAAAA 1 A_SpawnItem("BloodFade")
	Stop
	Death:
		BLUD A 1
	Stop
	}
}

actor BloodFade
{
	Renderstyle Translucent
	- SOLID
	+NOGRAVITY
	Height 1
	alpha 0.6
	Radius 1
	States
	{
	Spawn:
		BLUD CBA 5
	Stop
	}
}

ACTOR SamaraTargetchecker
{
	-SOLID
	+NOCLIP
	+NOBLOCKMAP
	+LOOKALLAROUND
	MONSTER
	- COUNTKILL
	Speed 0
	- SHOOTABLE
	States
	{
	Spawn:
		TNT1 A 0 ACS_ExecuteAlways(6, 0)
		TNT1 A 4 A_Look
		TNT1 A 31
	Loop
	See:
		TNT1 A 1 
		TNT1 A 1 A_GiveToTarget("SamaraTarget", 1)
		TNT1 A 2
	Stop
	}
}

actor SamaraTarget : CustomInventory
{
  inventory.pickupmessage ""
  inventory.pickupsound ""
  inventory.amount 1
  inventory.maxamount 1
  +AUTOACTIVATE
  +ALWAYSPICKUP
  states
  {
  Spawn:
    TNT1 A -1
    stop
  Pickup:
    TNT1 A 0 ACS_ExecuteAlways(1, 0)
    stop
  }
}

// DECORATIONS \\

ACTOR winter1 31000
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 90
	+SOLID
	States
	{
	Spawn:
	  TRWN B -1
	  Stop
	}
}

ACTOR winter2 31001
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 90
	+SOLID
	States
	{
	Spawn:
	  TRWN A -1
	  Stop
	}
}

ACTOR winterG 31008
{
  //$Category GVH:NS Map Decoration
  Radius 25
  Height 120
  +SOLID
  States
  {
  Spawn:
    WINT G -1
    Stop
  }
}

ACTOR FlowerPot1 31009
{
	//$Category GVH:NS Map Decoration
	Radius 18
	Height 35
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  POT1 A -1
	  Stop
	}
}

ACTOR FlowerPot2 31010
{
	//$Category GVH:NS Map Decoration
	Radius 18
	Height 35
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  POT2 A -1
	  Stop
	}
}

ACTOR Guts1 31011
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 20
	Scale 0.75
	States
	{
	Spawn:
	  GUT1 A -1
	  Stop
	}
}

ACTOR Guts2 31012
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 20
	Scale 0.75
	States
	{
	Spawn:
	  GUT2 A -1
	  Stop
	}
}

ACTOR Guts3 31013
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 20
	Scale 0.75
	States
	{
	Spawn:
	  GUT3 A -1
	  Stop
	}
}

ACTOR Guts4 31014
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 20
	Scale 0.75
	States
	{
	Spawn:
	  GUT4 A -1
	  Stop
	}
}

ACTOR Statue1 31015
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 90	
	+SOLID
	States
	{
	Spawn:
	  STT1 A -1
	  Stop
	}
}

ACTOR Statue2 31016
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 90	
	+SOLID
	States
	{
	Spawn:
	  STT2 A -1
	  Stop
	}
}

ACTOR Lamp1 31017
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 50	
	States
	{
	Spawn:
	  LAMP A -1
	  Stop
	}
}

ACTOR Lamp2 31018
{
	//$Category GVH:NS Map Decoration
	Radius 20
	Height 90	
	+SOLID
	States
	{
	Spawn:
	  LMP2 A -1
	  Stop
	}
}

ACTOR Cup 31019
{
	//$Category GVH:NS Map Decoration
	Radius 10
	Height 20
	Scale 0.75
	States
	{
	Spawn:
	  CUP1 A -1
	  Stop
	}
}

ACTOR Candelabra1 31020
{
	//$Category GVH:NS Map Decoration
	Radius 10
	Height 40
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  CND1 ABCD 4
	  Loop
	}
}

ACTOR Candles1 31021
{
	//$Category GVH:NS Map Decoration
	Radius 10
	Height 40
	Scale 0.75
	States
	{
	Spawn:
	  CND2 ABCD 4
	  Loop
	}
}

ACTOR CeilingCandle 31022
{
	//$Category GVH:NS Map Decoration
	Radius 10
	Height 40
	Scale 1.0
	+NOGRAVITY
	States
	{
	Spawn:
	  CND3 ABC 4
	  Loop
	}
}

ACTOR SkullCandle 31023
{
	//$Category GVH:NS Map Decoration
	Radius 10
	Height 40
	Scale 0.55
	States
	{
	Spawn:
	  SKLC ABC 4
	  Loop
	}
}

//////////////
// GVHNS 03 //
//////////////
ACTOR OfficeLamp 31024
{
	Game Doom
	Radius 20
	Height 40
	Scale 0.75
	States
	{
	Spawn:
	  DECL A -1
	  Stop
	}
}

ACTOR SamuraiDecor 31025
{
	Game Doom
	Radius 20
	Height 40
	Scale 0.75
	States
	{
	Spawn:
	  DECM A -1
	  Stop
	}
}

ACTOR BuddhaStatue 31026
{
	Game Doom
	Radius 35
	Height 60
	Scale 0.65
	+SOLID
	States
	{
	Spawn:
	  BUDD A -1
	  Stop
	}
}

ACTOR WoodenDecor 31027
{
	Game Doom
	Radius 10
	Height 40
	Scale 0.75
	+NOGRAVITY
	States
	{
	Spawn:
	  DECW ABCB 6
	  Loop
	}
}

ACTOR BrickLamp 31028
{
	Game Doom
	Radius 25	
	Height 40
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  BLMM ABCD 5
	  Loop
	}
}

ACTOR CeilingBowlFire 31029
{
	Game Doom
	Radius 25	
	Height 40
	Scale 0.75
	+NOGRAVITY
	States
	{
	Spawn:
	  FFDD ABCD 5
	  Loop
	}
}

/////////////
// GVHNS05 //
/////////////
Actor ZCorpseUpsideDown2 31035
{
	Radius 20
	Height 60
	+NOGRAVITY
	States
	{
	Spawn:
		UPSC B 140 A_SpawnItemEx("CorpseBloodDrip", 0, 0, 24, 0, 0, 0, 0, SXF_CLIENTSIDE, 192)
		Loop
	}
}

Actor ZCorpseUpsideDown4 31036
{
	Radius 20
	Height 60
	+NOGRAVITY
	States
	{
	Spawn:
		UPSC D -1
		Stop
	}
}

actor HangedBloodySkeleton 31030
{
    Radius 20
    Height 60
    +SPAWNCEILING
    +NOGRAVITY
    +SOLID
    States
    {
    Spawn:
       HSKL A 0 A_Jump(60,"DropBlood")
       HSKL A 50
       Loop
    DropBlood:
       HSKL A 1 A_SpawnItem("SkeletonBloodDrip")
       Goto Spawn
    }
}

actor SkeletonBloodDrip
{
    Radius 1
    Height 1
    Scale 0.75
    -NOGRAVITY
    States
    {
    Spawn:
       BDRP A 1 A_CheckFloor("Disappear")
       Loop
    Disappear:
       TNT1 A 1
       Stop
    }
}

Actor ZCorpseImpaled2 31031
{
	+SOLID
	Radius 8
	Height 100

	States
	{
	Spawn:
		CPSI B -1
		Stop
	}
}

Actor ZCorpseImpaled4 31032
{
	+SOLID
	Radius 8
	Height 100

	States
	{
	Spawn:
		CPSI D -1
		Stop
	}
}

Actor ZCorpseImpaled5 31033
{
	+SOLID
	Radius 8
	Height 100

	States
	{
	Spawn:
		CPSI E -1
		Stop
	}
}

ACTOR BonePile 31034
{
  Radius 24
  Height 24
  +SOLID
  States
  {
  Spawn:
    SBON A -1
    Stop
  }
}

/////////////
// GVHNS07 //
/////////////
ACTOR RoTTBrazier 31070
{
	Game Doom
	Radius 15
	Height 64
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  ABRA ABCDEFGHIJKLMNO 4
	  Loop
	}
}

ACTOR RoTTBasin 31071
{
	Game Doom
	Radius 32
	Height 42
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  BASI ABC 4
	  Loop
	}
}

ACTOR RoTTPlant 31072
{
	Game Doom
	Radius 24
	Height 32
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  PLRN A -1
	  Stop
	}
}

ACTOR RoTTTree 31073
{
	Game Doom
	Radius 28
	Height 48
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  RTRE A -1
	  Stop
	}
}

ACTOR RoTTUrn 31074
{
	Game Doom
	Radius 28
	Height 36
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  RURN A -1
	  Stop
	}
}

///////////
// GVH21 //
///////////
Actor FloatingSkullAir : FloatingSkull 16500
{
	+NOGRAVITY
}

// GVH 01
ACTOR Logfire 9900
{
	//$Category GVH:NS Map Decoration
	Decal		BarrelScorch
	Radius		4
	Height		6
	+NOBLOCKMAP
	+NOINTERACTION
	States
	{
	Spawn:
	TNT1 A 0
	Goto Active
	Active:
		TNT1 A 2 A_SpawnItemEx("SmokeLarge2",0,0,18,0,0,2,0,160|SXF_NOCHECKPOSITION|SXF_CLIENTSIDE)
		TNT1 AAAAAAA 1 A_SpawnItemEx("Firey2",0,0,8,0,0,1,0,160|SXF_NOCHECKPOSITION|SXF_CLIENTSIDE)
		LOOP
	}
}

ACTOR SmokeLarge2 : BulletPuff
{
	Health		1
	RenderStyle Translucent
	Alpha		0
	Scale		.5
	+NOINTERACTION
	+NOBLOCKMAP
	States
	{
	Spawn:
		TNT1 A 0
		Goto See
	See:
		TNT1 A 0 A_Jump(192,1)
		Goto See+7
		TNT1 A 0
		TNT1 A 0 A_Jump(128,1)
		Goto See+11
		TNT1 A 0
		TNT1 A 0 A_Jump(64,1)
		Goto See+15
		TNT1 A 0
		TNT1 A 0
		Goto See+19
		//-----------------------
		SMOK A 12 A_SetTranslucent(.15,0)
		SMOK A 12 A_SetTranslucent(.35,0)
		SMOK A 12 A_SetTranslucent(.5,0)
		SMOK A 1 A_Fadeout(.02)
		Wait
		SMOK B 12 A_SetTranslucent(.15,0)
		SMOK B 12 A_SetTranslucent(.35,0)
		SMOK B 12 A_SetTranslucent(.5,0)
		SMOK B 1 A_Fadeout(.025)
		Wait
		SMOK C 12 A_SetTranslucent(.15,0)
		SMOK C 12 A_SetTranslucent(.35,0)
		SMOK C 12 A_SetTranslucent(.5,0)
		SMOK C 1 A_Fadeout(.03)
		Wait
		SMOK D 12 A_SetTranslucent(.15,0)
		SMOK D 12 A_SetTranslucent(.35,0)
		SMOK D 12 A_SetTranslucent(.5,0)
		SMOK D 1 A_Fadeout(.035)
		Wait
	}
}

ACTOR Firey2 : BulletPuff
{
	Health		1
	RenderStyle Add
	Alpha		0
	Scale		.3
	Obituary "%o burned to death"
	+NOINTERACTION
	+NOBLOCKMAP
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 
		Goto See
	See:
		TNT1 A 0 A_Jump(170,1)
		Goto See+7
		TNT1 A 0
		TNT1 A 0 A_Jump(85,1)
		Goto See+11
		TNT1 A 0
		TNT1 A 0
		Goto See+15
		//-----------------------
		BFIR B 5 Bright //A_PlaySound("Barrel/Fire")
		BFIR A 5 Bright A_SetTranslucent(.4,1)
		BFIR A 5 Bright A_SetTranslucent(.8,1)
		BFIR A 1 Bright A_Fadeout(.06)
		Wait
		BFIR B 5 Bright //A_PlaySound("Barrel/Fire")
		BFIR B 5 Bright A_SetTranslucent(.4,1)
		BFIR B 5 Bright A_SetTranslucent(.8,1)
		BFIR B 1 Bright A_Fadeout(.08)
		Wait
		BFIR B 5 Bright //A_PlaySound("Barrel/Fire")
		BFIR C 5 Bright A_SetTranslucent(.4,1)
		BFIR C 5 Bright A_SetTranslucent(.8,1)
		BFIR C 1 Bright A_Fadeout(.10)
		Wait
	}
}

// GVH 05
// A snow flake
ACTOR SnowFlake 24600
{
	//$Category GVH:NS Map Decoration
	Radius 8
	Height 1
	Mass 5
	RenderStyle TRANSLUCENT
	Alpha 0.8
	Scale 0.3
	+NOGRAVITY // Greater fall speed control
	+NOBLOCKMAP
	+NOTELEPORT
	+INVULNERABLE
	+NONSHOOTABLE
	+DONTSPLASH
	+CORPSE
	States
	{
		Spawn:
			SNOW A 1
		WaggleChance:
			SNOW A 8 A_Jump(164,"Waggle")
			Loop
		Waggle:          
			SNOW A 8 A_CStaffMissileSlither
			Goto WaggleChance
		Crash:
			SNOW A 16
			Stop
	}
}


// Snow dropper 128x128
ACTOR SquareSnow 24602
{
	//$Category GVH:NS Map Decoration
	Radius 16
	Height 6
	RenderStyle NONE
	+ALLOWCLIENTSPAWN
	+NOGRAVITY
	+NOBLOCKMAP
	+NOLIFTDROP
	+NOTELEPORT
	+SPAWNCEILING
	+NOCLIP
	States
	{
		Spawn:
			TNT1 A 10 A_SpawnItemEx("SnowFlake",
				               random(0,128),
				               0,0,0,0,-0.7,random(0,360),
					       128) // client-side spawning flag
			Loop
	}
}

ACTOR SquareSnowBig : SquareSnow 24603
{
	//$Category GVH:NS Map Decoration
	States
	{
		Spawn:
			TNT1 A 8 A_SpawnItemEx("SnowFlake",
						random(0,256),
						0,0,0,0,-0.7,random(0,360),
						128)
			Loop
	}
}

ACTOR SquareSnowVeryBig : SquareSnow 24604
{
	//$Category GVH:NS Map Decoration
	States
	{
		Spawn:
			TNT1 A 6 A_SpawnItemEx("SnowFlake",
						random(0,324),
						random(0,324),
						0,0,0,-0.7,random(0,360),
						128)
			Loop
	}
}

// Snow dropper extremely big for skybox
ACTOR SquareSnowGigantic : SquareSnow 24605
{
	//$Category GVH:NS Map Decoration
	States
	{
		Spawn:
			TNT1 A 16 A_SpawnItemEx("SnowFlake",
						random(256,512),
						random(128,256),
						0,0,0,-0.7,random(0,360),
						128)
			Loop
	}
}

// GVH 08
actor VolumetricFogSprite 28641
{
	//$Category GVH:NS Map Decoration
	yscale 0.15
	renderstyle Add
	alpha 1.0
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+ALLOWCLIENTSPAWN
	+NOINTERACTION
	+NOTONAUTOMAP
	states
	{
	Spawn:
	FOG2 A -1
	stop
	}
}

// GVH 11
actor TREE 10242
{
	//$Category GVH:NS Map Decoration
  height 210
  radius 10
  +SOLID
  states
  {
  Spawn:
    PALM A -1
    Stop
  }
}

ACTOR FireHydrant 10243
{
	//$Category GVH:NS Map Decoration
  Height 40
  Radius 16
  +SOLID
  States
  {
  Spawn:
    FRHD A -1
    Stop
  }
}

ACTOR TrashCan 10244
{
	//$Category GVH:NS Map Decoration
  Height 40
  Radius 16
  +SOLID
  States
  {
  Spawn:
    TRCN A -1
    Stop
  }
}

actor DukeShip
{
Height 5
PROJECTILE
spawnid 181
radius 5
+RIPPER
damage 200
Speed 50
scale 3.0
renderstyle translucent
alpha 1.0
States
{
Spawn:
DSHI A 4 A_SpawnItemEx("GrenadeExplosion",0,0,0,0,0,0,0,128,0)
loop
Death:
NKXP BCDEFGHIJKLMNOPQRSTUV 3 bright A_FadeOut(0.04)
Stop
}
}

actor DukeExplode
{
-SOLID
renderstyle translucent
alpha 1.0
+NOGRAVITY
-SOLID
+NOBLOCKMAP
obituary "%o is going to make those alien bastards pay for shooting up duke's ride."
radius 1
height 1
States
{
Spawn:
NKXP A 0
NKXP A 0 A_PlaySound("weapons/grenadeexplode")
NKXP A 0 A_Explode(8000, 128,0)
NKXP BCDEFGHIJKLMNOPQRSTUV 2 bright A_FadeOut(0.04)
Stop
}
}

// GVH 12 [New by Ivan]
ACTOR BarTable 31075
{
	Game Doom
	Radius 8
	Height 32
	XScale 0.75
	YScale 0.45
	+SOLID
	States
	{
	Spawn:
	  BTBL A -1
	  Stop
	}
}

actor Lantern 31097
{
  height 50
  radius 10
  +SPAWNCEILING
  +NOGRAVITY
  states
  {
  Spawn:
    LANT A 12 bright
    LANT B 9 bright
    LANT C 5 bright
    loop
  }
}

actor Torch 31098
{
  height 40
  radius 10
  +SOLID
  states
  {
  Spawn:
    TORC A 5 bright
    TORC B 5 bright
    TORC C 5 bright
    TORC D 5 bright
    loop
  }
}

actor DCandle 31099
{
  height 10
  radius 5
  states
  {
  Spawn:
    CNDL A 5 bright
    CNDL B 4 bright
    CNDL C 3 bright
    CNDL D 5 bright
    loop
  }
}

actor TallTree9 31101
{
  height 90
  radius 14
  +SOLID
  states
  {
  Spawn:
    TTRE A 5
    loop
  }
}

actor VineTree 31102
{
  height 50
  radius 15
  +SOLID
  states
  {
  Spawn:
    VTR1 A 5
    loop
  }
}

actor Bush 31103
{
  height 42
  radius 15
  +SOLID
  states
  {
  Spawn:
    BUS1 A 5
    loop
  }
}

actor MyDeadTree 31104
{
  height 45
  radius 15
  +SOLID
  states
  {
  Spawn:
    DTR3 A 5
    loop
  }
}

actor DPlant 31105
{
  height 10
  radius 5
  states
  {
  Spawn:
    PLAN A 5
    loop
  }
}

actor DCrap 31106
{
  height 10
  radius 5
  states
  {
  Spawn:
    CRAP A 5
    loop
  }
}

actor DaggerBarrel 31107
{
  height 32
  radius 13
  +SOLID
  states
  {
  Spawn:
    DBAR A 5
    loop
  }
}

actor ZombieCorpse 31108
{
  height 15
  radius 10
  states
  {
  Spawn:
    ZCOR A 5
    loop
  }
}

ACTOR Toilet 31080
{
	Game Doom
	Radius 20
	Height 36
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  TOIL A -1
	  Stop
	}
}

ACTOR DirectorChair 31081
{
	Game Doom
	Radius 28
	Height 40
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  DCHA A -1
	  Stop
	}
}

ACTOR SpotLight 31082
{
	Game Doom
	Radius 20
	Height 72
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  SPOT A -1
	  Stop
	}
}

ACTOR MovieCamera 31083
{
	Game Doom
	Radius 20
	Height 64
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  CAME A -1
	  Stop
	}
}

ACTOR Microphone 31084
{
	Game Doom
	Radius 16
	Height 24
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  MIC3 A -1
	  Stop
	}
}

ACTOR SushiPlate1 31085
{
	Game Doom
	Radius 12
	Height 16
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  SUSH A -1
	  Stop
	}
}

ACTOR SushiPlate2 31086
{
	Game Doom
	Radius 12
	Height 16
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  SLEG A -1
	  Stop
	}
}

ACTOR RandomBox 31087
{
	Game Doom
	Radius 12
	Height 12
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  RBOX A -1
	  Stop
	}
}

ACTOR JunkBottle1 31088
{
	Game Doom
	Radius 12
	Height 12
	+SOLID
	States
	{
	Spawn:
	  JNK1 A -1
	  Stop
	}
}

ACTOR JunkBottle2 31089
{
	Game Doom
	Radius 8
	Height 18
	+SOLID
	States
	{
	Spawn:
	  JNK2 A -1
	  Stop
	}
}

ACTOR VodkaGlass 31090
{
	Game Doom
	Radius 16
	Height 16
	+SOLID
	States
	{
	Spawn:
	  VODK A -1
	  Stop
	}
}

ACTOR CeilingLampDuke 31091
{
	Game Doom
	Radius 24
	Height 32
	Scale 0.75
	+NOGRAVITY
	-SOLID
	+NOINTERACTION
	+SPAWNCEILING
	States
	{
	Spawn:
	  CLAP A -1
	  Stop
	}
}

ACTOR MyDukeHydrant 31092
{
	Game Doom
	Radius 12
	Height 12
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  MYHD A -1
	  Stop
	}
}

ACTOR Tires 31093
{
	Game Doom
	Radius 16
	Height 18
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  TIRE A -1
	  Stop
	}
}

ACTOR PlantInGlass 31094
{
	Game Doom
	Radius 24
	Height 56
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  GTRE A -1
	  Stop
	}
}

ACTOR Donuts 31095
{
	Game Doom
	Radius 8
	Height 8
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  DONU A -1
	  Stop
	}
}

ACTOR LotsofBooze 31096
{
	Game Doom
	Radius 22
	Height 28
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  LDRI A -1
	  Stop
	}
}

ACTOR DukeCorpse 31109
{
	Game Doom
	Radius 16
	Height 16
	States
	{
	Spawn:
	  TNT1 A -1
	  Stop
	}
}

actor sbook 12035
{
  states
  {
  Spawn:
    BUCH A -1
	stop
  }
}

actor schalk 12038
{
  states
  {
  Spawn:
    KRDE A -1
	stop
  }
}

actor sductape 12036
{
  states
  {
  Spawn:
    DUCT A -1
	stop
  }
}

actor steller 12041
{
  scale 0.05
  radius 5
  height 1
  mass 9999999
  +SOLID
  +NOGRAVITY
  states
  {
  Spawn:
    TELL A -1
	stop
  }
}

actor stopf 12042
{
  scale 0.07
  radius 5
  height 1
  mass 9999999
  +SOLID
  +NOGRAVITY
  states
  {
  Spawn:
    TOPF A -1
	stop
  }
}

actor tablezz1 12043
{
  radius 4
  height 30
  mass 999999999
  +SOLID
  +NOGRAVITY
  +SHOOTABLE
  +NOBLOOD
  States
  {
	  Spawn:
		TNT1 A -1
		stop
  }
}

actor tablezz2 12044
{
  radius 5
  height 6
  mass 999999999
  +SOLID
  +NOGRAVITY
  +SHOOTABLE
  +NOBLOOD
  States
  {
	  Spawn:
		TNT1 A -1
		stop
  }
}

actor HTLD2 : HangTLookingDown 12045
{
  -SOLID
}

actor BT2 : BloodyTwitch 12046
{
  -SOLID
}

actor Meat32 : Meat3 12047
{
  -SOLID
}

actor Meat52 : Meat5 12048
{
  -SOLID
}

actor tg1 12049
{
  radius 1
  height 40
  mass 999999999
  +SOLID
  States
  {
	  Spawn:
		TNT1 A -1
		stop
  } 
}

actor slipbob 12050
{
  States
  {
  Spawn:
    SLIP A -1
	stop
  }
}

actor sbecher 12051
{
  scale 0.27
  states
  {
  Spawn:
    BECH A -1
	stop
  }
}

actor spopcorn 12052
{
  states
  {
  Spawn:
    PPCO A -1
	stop
  }
}

Actor ShowBoobs : Inventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
}

Actor Stripper1 31076
{
	Radius 16
	Height 56
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
		STRP AAAABBBBCCCCDDDDEEEEDDDDCCCCBBBB 1 A_JumpIfInventory("Showboobs", 1, "ShowEm")
		Loop
	ShowEm:
		STRP A 1 A_PlaySound("KinkyLaugh", CHAN_VOICE)
		STRP FGHGHGHF 3 // Animation here
		STRP A 0 A_TakeInventory("ShowBoobs", 1)
		Goto Spawn
	}
}

ACTOR Stripper2 31077
{
	Game Doom
	Radius 16
	Height 56
	Scale 0.75
	+SOLID
	States
	{
	Spawn:
	  STR2 ABCDCB 4
	  Loop
	}
}

// GVH 13
//Blood Rain effects for Map01, borrowed NashGore base.

actor BloodRainSpawner 15050 	//Rain Object
{
	//$Category GVH:NS Map Decoration
   Radius 1
   Height 1
   Speed 0
   Damage 0
   Mass 1
   PROJECTILE
   +INVULNERABLE
   +NOGRAVITY
   +CLIENTSIDEONLY
   +NOCLIP
   +NOTONAUTOMAP
   States
   {
	Spawn:
      TNT1 A 8 A_Jump(128, 1)
      TNT1 A 8 A_SpawnItemEx("BloodRain",random(32, -32),random(32, -32),0,8,0,0,0,0,0)
      Loop
   }
}

actor BloodRain 15051
{
	//$Category GVH:NS Map Decoration
 scale 0.55
 health 1
 radius 8
 height 1
 mass 1
 renderstyle translucent
 alpha 1.0
 +CORPSE
 +NOTELEPORT
 +NOBLOCKMAP
 +CLIENTSIDEONLY
 +NOTONAUTOMAP
 states
 {
 Spawn:
  FBLD A 1 A_JumpIf(waterlevel > 1, "Remove")
  loop
 Crash:
  TNT1 A 1 A_SpawnItem("BloodRainSpot",0,0,0,1)
  stop
   Remove: // Anti-Lag - Removes blood in water.
      TNT1 A 0 
        stop
 }
}

actor BloodRainSpawner2 15052 	//Rain Object 2
{
	//$Category GVH:NS Map Decoration
   Radius 1
   Height 1
   Speed 0
   Damage 0
   Mass 1
   PROJECTILE
   +INVULNERABLE
   +NOGRAVITY
   +NOCLIP
   +CLIENTSIDEONLY
   +NOTONAUTOMAP
   States
   {
	Spawn:
      TNT1 A 16 A_Jump(128, 1)
	  TNT1 A 16 A_Jump(64, 1)
      TNT1 A 32 A_SpawnItemEx("BloodRain2",random(32, -32),random(32, -32),0,0,0,0,0,0,0)
      Loop
   }
}

actor BloodRain2 15053
{
	//$Category GVH:NS Map Decoration
 scale 0.55
 health 1
 radius 8
 height 1
 mass 1
 renderstyle translucent
 alpha 1.0
 +CORPSE
 +NOTELEPORT
 +NOBLOCKMAP
 +CLIENTSIDEONLY
 +NOTONAUTOMAP
 states
 {
 Spawn:
  FBLD A 1 A_JumpIf(waterlevel > 1, "Remove")
  loop
 Crash:
  TNT1 A 1 A_SpawnItem("BloodRainSpot2",0,0,0,1)
  stop
   Remove: // Anti-Lag - Removes blood in water.
      TNT1 A 0 
        stop
 }
}

actor BloodRainSpot
{
 radius 12
 height 2
 mass 1
  renderstyle translucent
 alpha 1.0
 +NOTELEPORT
 -NOBLOCKMAP
 +CLIENTSIDEONLY
 +NOTONAUTOMAP
 states
 {
 Spawn:
  BSPT A 50 A_JumpIf(waterlevel > 1, "Remove")
  stop
   Remove: // Anti-Lag - Removes blood in water.
      TNT1 A 0 
        stop
 }
}

actor BloodRainSpot2
{
 radius 12
 height 2
 mass 1
  renderstyle translucent
 alpha 1.0
 +NOTELEPORT
 -NOBLOCKMAP
 +CLIENTSIDEONLY
 +NOTONAUTOMAP
 states
 {
 Spawn:
  BSPT AAAAAAAA 50 A_JumpIf(waterlevel > 1, "Remove")
  BSPT AAAAAAAAAAAAAAAAAAAA 1 A_FadeOut(0.05)
  stop
   Remove: // Anti-Lag - Removes blood in water.
      TNT1 A 0 
        stop
 }
}

// GVH 16
ACTOR secondtree 28643
{
	//$Category GVH:NS Map Decoration
  Radius 16
  Height 56
  States
  {
  Spawn:
    GREN A -1
    loop
  }
}

ACTOR thirdtree 28644
{
	//$Category GVH:NS Map Decoration
  Radius 16
  Height 56
  States
  {
  Spawn:
    GREN B -1
    loop
  }
}

ACTOR Shtbagstree4 28642
{
	//$Category GVH:NS Map Decoration
  Radius 16
  Height 56
  States
  {
  Spawn:
    GREN C -1
    loop
  }
}

// GVH 19
//Aztec Map Lights and Fog
actor EerieRedLight 21000 //Special Glow for Aztec Eyes
{
	//$Category GVH:NS Map Decoration
   Radius 1
   Height 1
   Speed 0
   Damage 0
   Mass 1
   PROJECTILE
   +INVULNERABLE
   +NOCLIP
   +NOBLOCKMAP
   +CLIENTSIDEONLY
   States
   {
	Spawn:
      TNT1 A 1
      loop
   }
}

actor EerieRedLight2 21001 //Special Glow for Aztec Eyes
{
	//$Category GVH:NS Map Decoration
   Radius 1
   Height 1
   Speed 0
   Damage 0
   Mass 1
   PROJECTILE
   +INVULNERABLE
   +NOCLIP
   +NOBLOCKMAP
   +CLIENTSIDEONLY
   States
   {
	Spawn:
      TNT1 A 1
      loop
   }
}

// GVH 20
actor TallTree 10250
{
	//$Category GVH:NS Map Decoration
  height 144
  radius 32
  +SOLID
  states
  {
  Spawn:
    TREK A 5
    loop
  }
}

ACTOR RainSpawner 10251
{
	//$Category GVH:NS Map Decoration
	+Missile
	+NoClip
	+NoGravity
	+NoBlockMap
        +SPAWNCEILING
	+CLIENTSIDEONLY
	+NOTONAUTOMAP
	+NONETID
 	states
 	{
 	Spawn:
		TNT1 A 3 A_JumpIf(z >= ceilingz,1)
		TNT1 A 3 A_SpawnItemEx ("RainDrop", random(0,-128), random(0,-128), 0, random(0,1), random(0,1), -random(1,5), random(0,255), 0) 
 		goto Spawn
	}

}

ACTOR HRainSpawner 10253
{
	//$Category GVH:NS Map Decoration
	+Missile
	+NoClip
	+NoGravity
	+NoBlockMap
    +SPAWNCEILING
	+NOTONAUTOMAP
 	states
 	{
 	Spawn:
		TNT1 A 3 A_JumpIf(z >= ceilingz,1)
		TNT1 A 3 A_SpawnItemEx ("RainDrop", random(0,-32), random(0,-32), 0, random(0,1), random(0,1), -random(1,5), random(0,255), 0) 
 		goto Spawn
	}

}

//Simple rain drop
ACTOR RainDrop 10252
{

	+NOBLOCKMAP 
	+DROPOFF 
	+MISSILE 
	+CLIENTSIDEONLY
	+NOTELEPORT
        +SPAWNCEILING
	+DontSplash
	+NOTONAUTOMAP
	xscale 0.25
	states
	{
	Spawn:
		RAIN A 1 A_JumpIf(waterlevel >= 1, "Death")
		Loop
	Death:
		TNT1 A 1
		Stop
	}

}

//Simple rain drop with sound
ACTOR RainDropS 10254
{

	+NOBLOCKMAP 
	+DROPOFF 
	+MISSILE 
	+CLIENTSIDEONLY
	+NOTELEPORT
        +SPAWNCEILING
	+DontSplash
	+NOTONAUTOMAP
	xscale 0.25
	states
	{
	Spawn:
		RAIN A 1 A_JumpIf(waterlevel >= 1, "Death")
		Loop
	Death:
		TNT1 A 1
		Stop
	}

}

// GVH 22
actor DeadTree 10249
{
	//$Category GVH:NS Map Decoration
  height 45
  radius 15
  +SOLID
  states
  {
  Spawn:
    DTR3 A 5
    loop
  }
}

actor FATASSTree 10245
{
	//$Category GVH:NS Map Decoration
  height 80
  radius 20
  +SOLID
  states
  {
  Spawn:
    BTR2 A 5
    loop
  }
}

//====Spawners

Actor WhiteSparkSpawner : SwitchableDecoration 10021
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_W1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_W2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_W3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_W4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_W5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_W6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_W1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_W16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_W1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_W16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_W1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_W16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor RedSparkSpawner : SwitchableDecoration 10022
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_R1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_R2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_R3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_R4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_R5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_R6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_R1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_R16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_R1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_R16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_R1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_R16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor OrangeSparkSpawner : SwitchableDecoration 6666
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_O1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_O1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_O1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor OrangeSparkSpawner2 : SwitchableDecoration 10032
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_O6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_O1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_O16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_O1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_O16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_O1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_O16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor YellowSparkSpawner : SwitchableDecoration 10024
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_Y1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_Y2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_Y3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_Y4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_Y5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_Y6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_Y1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_Y16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_Y1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_Y16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_Y1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_Y16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor GreenSparkSpawner : SwitchableDecoration 10025
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_G1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_G2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_G3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_G4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_G5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_G6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_G1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_G16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_G1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_G16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_G1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_G16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor BlueSparkSpawner : SwitchableDecoration 10026
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_B1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_B2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_B3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_B4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_B5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_B6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_B1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_B16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_B1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_B16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_B1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_B16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor PurpleSparkSpawner : SwitchableDecoration 10027
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("SparkFlare_P1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_P2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_P3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_P4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_P5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("SparkFlare_P6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("Spark_P1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("Spark_P16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("Spark_P1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("Spark_P16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("Spark_P1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("Spark_P16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

//Flares

Actor SparkFlare_W1
{
  Height 0
  Radius 0
  Mass 0
  +Missile
  +NoBlockMap
  +NoClip
  +NoGravity
  +NoInteraction
  +CLIENTSIDEONLY
  RenderStyle Add
  Scale 0.25
  States
  {
  Spawn:
    SPKW A 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor SparkFlare_W2 : SparkFlare_W1 { States { Spawn: SPKW B 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_W3 : SparkFlare_W1 { States { Spawn: SPKW C 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_W4 : SparkFlare_W1 { States { Spawn: SPKW D 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_W5 : SparkFlare_W1 { States { Spawn: SPKW E 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_W6 : SparkFlare_W1 { States { Spawn: SPKW F 1 Bright A_FadeOut(0.1) Loop } }

Actor SparkFlare_R1 : SparkFlare_W1 { States { Spawn: SPKR A 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_R2 : SparkFlare_W1 { States { Spawn: SPKR B 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_R3 : SparkFlare_W1 { States { Spawn: SPKR C 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_R4 : SparkFlare_W1 { States { Spawn: SPKR D 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_R5 : SparkFlare_W1 { States { Spawn: SPKR E 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_R6 : SparkFlare_W1 { States { Spawn: SPKR F 1 Bright A_FadeOut (0.1) Loop } }

Actor SparkFlare_O1 : SparkFlare_W1 { States { Spawn: SPKO A 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_O2 : SparkFlare_W1 { States { Spawn: SPKO B 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_O3 : SparkFlare_W1 { States { Spawn: SPKO C 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_O4 : SparkFlare_W1 { States { Spawn: SPKO D 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_O5 : SparkFlare_W1 { States { Spawn: SPKO E 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_O6 : SparkFlare_W1 { States { Spawn: SPKO F 1 Bright A_FadeOut (0.1) Loop } }

Actor SparkFlare_Y1 : SparkFlare_W1 { States { Spawn: SPKY A 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_Y2 : SparkFlare_W1 { States { Spawn: SPKY B 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_Y3 : SparkFlare_W1 { States { Spawn: SPKY C 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_Y4 : SparkFlare_W1 { States { Spawn: SPKY D 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_Y5 : SparkFlare_W1 { States { Spawn: SPKY E 1 Bright A_FadeOut (0.1) Loop } }
Actor SparkFlare_Y6 : SparkFlare_W1 { States { Spawn: SPKY F 1 Bright A_FadeOut (0.1) Loop } }

Actor SparkFlare_G1 : SparkFlare_W1 { States { Spawn: SPKG A 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_G2 : SparkFlare_W1 { States { Spawn: SPKG B 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_G3 : SparkFlare_W1 { States { Spawn: SPKG C 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_G4 : SparkFlare_W1 { States { Spawn: SPKG D 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_G5 : SparkFlare_W1 { States { Spawn: SPKG E 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_G6 : SparkFlare_W1 { States { Spawn: SPKG F 1 Bright A_FadeOut(0.1) Loop } }

Actor SparkFlare_B1 : SparkFlare_W1 { States { Spawn: SPKB A 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_B2 : SparkFlare_W1 { States { Spawn: SPKB B 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_B3 : SparkFlare_W1 { States { Spawn: SPKB C 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_B4 : SparkFlare_W1 { States { Spawn: SPKB D 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_B5 : SparkFlare_W1 { States { Spawn: SPKB E 1 Bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_B6 : SparkFlare_W1 { States { Spawn: SPKB F 1 Bright A_FadeOut(0.1) Loop } }

Actor SparkFlare_P1 : SparkFlare_W1 { States { Spawn: SPKP A 1 bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_P2 : SparkFlare_W1 { States { Spawn: SPKP B 1 bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_P3 : SparkFlare_W1 { States { Spawn: SPKP C 1 bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_P4 : SparkFlare_W1 { States { Spawn: SPKP D 1 bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_P5 : SparkFlare_W1 { States { Spawn: SPKP E 1 bright A_FadeOut(0.1) Loop } }
Actor SparkFlare_P6 : SparkFlare_W1 { States { Spawn: SPKP F 1 bright A_FadeOut(0.1) Loop } }

//Sparks

Actor Spark_W1
{
  Height 1
  Radius 2
  Mass 0
  Speed 0.25
  +Missile
  +NoBlockMap
  +LowGravity
  +CLIENTSIDEONLY
  RenderStyle Add
  Scale 0.025
  States
  {
  Spawn:
    SPKW E 1 Bright
    Loop
  Death:
    SPKW E 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor Spark_W2 : Spark_W1  { Speed 0.5  }
Actor Spark_W3 : Spark_W1  { Speed 0.75 }
Actor Spark_W4 : Spark_W1  { Speed 1.0  }
Actor Spark_W5 : Spark_W1  { Speed 1.25 }
Actor Spark_W6 : Spark_W1  { Speed 1.5  }
Actor Spark_W7 : Spark_W1  { Speed 1.75 }
Actor Spark_W8 : Spark_W1  { Speed 2.0  }
Actor Spark_W9 : Spark_W1  { Speed 2.25 }
Actor Spark_W10 : Spark_W1 { Speed 2.5  }
Actor Spark_W11 : Spark_W1 { Speed 2.75 }
Actor Spark_W12 : Spark_W1 { Speed 3.0  }
Actor Spark_W13 : Spark_W1 { Speed 3.25 }
Actor Spark_W14 : Spark_W1 { Speed 3.5  }
Actor Spark_W15 : Spark_W1 { Speed 3.75 }
Actor Spark_W16 : Spark_W1 { Speed 4.0  }

Actor Spark_R1 : Spark_W1
{
  States
  {
  Spawn:
    SPKR E 1 bright
    Loop
  Death:
    SPKR E 1 bright A_FadeOut (0.1)
    Loop
  }
}

Actor Spark_R2 : Spark_R1  { Speed 0.5  }
Actor Spark_R3 : Spark_R1  { Speed 0.75 }
Actor Spark_R4 : Spark_R1  { Speed 1.0  }
Actor Spark_R5 : Spark_R1  { Speed 1.25 }
Actor Spark_R6 : Spark_R1  { Speed 1.5  }
Actor Spark_R7 : Spark_R1  { Speed 1.75 }
Actor Spark_R8 : Spark_R1  { Speed 2.0  }
Actor Spark_R9 : Spark_R1  { Speed 2.25 }
Actor Spark_R10 : Spark_R1 { Speed 2.5  }
Actor Spark_R11 : Spark_R1 { Speed 2.75 }
Actor Spark_R12 : Spark_R1 { Speed 3.0  }
Actor Spark_R13 : Spark_R1 { Speed 3.25 }
Actor Spark_R14 : Spark_R1 { Speed 3.5  }
Actor Spark_R15 : Spark_R1 { Speed 3.75 }
Actor Spark_R16 : Spark_R1 { Speed 4.0  }

Actor Spark_O1 : Spark_W1
{
  States
  {
  Spawn:
    SPKO E 1 bright
    Loop
  Death:
    SPKO E 1 bright A_FadeOut(0.1)
    Loop
  }
}

Actor Spark_O2 : Spark_O1  { Speed 0.5  }
Actor Spark_O3 : Spark_O1  { Speed 0.75 }
Actor Spark_O4 : Spark_O1  { Speed 1.0  }
Actor Spark_O5 : Spark_O1  { Speed 1.25 }
Actor Spark_O6 : Spark_O1  { Speed 1.5  }
Actor Spark_O7 : Spark_O1  { Speed 1.75 }
Actor Spark_O8 : Spark_O1  { Speed 2.0  }
Actor Spark_O9 : Spark_O1  { Speed 2.25 }
Actor Spark_O10 : Spark_O1 { Speed 2.5  }
Actor Spark_O11 : Spark_O1 { Speed 2.75 }
Actor Spark_O12 : Spark_O1 { Speed 3.0  }
Actor Spark_O13 : Spark_O1 { Speed 3.25 }
Actor Spark_O14 : Spark_O1 { Speed 3.5  }
Actor Spark_O15 : Spark_O1 { Speed 3.75 }
Actor Spark_O16 : Spark_O1 { Speed 4.0  }

Actor Spark_Y1 : Spark_W1
{
  States
  {
  Spawn:
    SPKY E 1 bright
    Loop
  Death:
    SPKY E 1 bright A_FadeOut (0.1)
    Loop
  }
}

Actor Spark_Y2 : Spark_Y1  { Speed 0.5  }
Actor Spark_Y3 : Spark_Y1  { Speed 0.75 }
Actor Spark_Y4 : Spark_Y1  { Speed 1.0  }
Actor Spark_Y5 : Spark_Y1  { Speed 1.25 }
Actor Spark_Y6 : Spark_Y1  { Speed 1.5  }
Actor Spark_Y7 : Spark_Y1  { Speed 1.75 }
Actor Spark_Y8 : Spark_Y1  { Speed 2.0  }
Actor Spark_Y9 : Spark_Y1  { Speed 2.25 }
Actor Spark_Y10 : Spark_Y1 { Speed 2.5  }
Actor Spark_Y11 : Spark_Y1 { Speed 2.75 }
Actor Spark_Y12 : Spark_Y1 { Speed 3.0  }
Actor Spark_Y13 : Spark_Y1 { Speed 3.25 }
Actor Spark_Y14 : Spark_Y1 { Speed 3.5  }
Actor Spark_Y15 : Spark_Y1 { Speed 3.75 }
Actor Spark_Y16 : Spark_Y1 { Speed 4.0  }

Actor Spark_G1 : Spark_W1
{
  States
  {
  Spawn:
    SPKG E 1 Bright
    Loop
  Death:
    SPKG E 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor Spark_G2 : Spark_G1  { Speed 0.5  }
Actor Spark_G3 : Spark_G1  { Speed 0.75 }
Actor Spark_G4 : Spark_G1  { Speed 1.0  }
Actor Spark_G5 : Spark_G1  { Speed 1.25 }
Actor Spark_G6 : Spark_G1  { Speed 1.5  }
Actor Spark_G7 : Spark_G1  { Speed 1.75 }
Actor Spark_G8 : Spark_G1  { Speed 2.0  }
Actor Spark_G9 : Spark_G1  { Speed 2.25 }
Actor Spark_G10 : Spark_G1 { Speed 2.5  }
Actor Spark_G11 : Spark_G1 { Speed 2.75 }
Actor Spark_G12 : Spark_G1 { Speed 3.0  }
Actor Spark_G13 : Spark_G1 { Speed 3.25 }
Actor Spark_G14 : Spark_G1 { Speed 3.5  }
Actor Spark_G15 : Spark_G1 { Speed 3.75 }
Actor Spark_G16 : Spark_G1 { Speed 4.0  }

Actor Spark_B1 : Spark_W1   
{ 
  States 
  { 
  Spawn: 
    SPKB E 1 Bright 
    Loop 
  Death: 
    SPKB E 1 Bright A_FadeOut(0.1) 
    Loop 
  } 
}

Actor Spark_B2 : Spark_B1  { Speed 0.5  }
Actor Spark_B3 : Spark_B1  { Speed 0.75 }
Actor Spark_B4 : Spark_B1  { Speed 1.0  }
Actor Spark_B5 : Spark_B1  { Speed 1.25 }
Actor Spark_B6 : Spark_B1  { Speed 1.5  }
Actor Spark_B7 : Spark_B1  { Speed 1.75 }
Actor Spark_B8 : Spark_B1  { Speed 2.0  }
Actor Spark_B9 : Spark_B1  { Speed 2.25 }
Actor Spark_B10 : Spark_B1 { Speed 2.5  }
Actor Spark_B11 : Spark_B1 { Speed 2.75 }
Actor Spark_B12 : Spark_B1 { Speed 3.0  }
Actor Spark_B13 : Spark_B1 { Speed 3.25 }
Actor Spark_B14 : Spark_B1 { Speed 3.5  }
Actor Spark_B15 : Spark_B1 { Speed 3.75 }
Actor Spark_B16 : Spark_B1 { Speed 4.0  }

Actor Spark_P1 : Spark_W1
{
  states
  {
  Spawn:
    SPKP E 1 Bright
    Loop
  Death:
    SPKP E 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor Spark_P2 : Spark_P1  { Speed 0.5  }
Actor Spark_P3 : Spark_P1  { Speed 0.75 }
Actor Spark_P4 : Spark_P1  { Speed 1.0  }
Actor Spark_P5 : Spark_P1  { Speed 1.25 }
Actor Spark_P6 : Spark_P1  { Speed 1.5  }
Actor Spark_P7 : Spark_P1  { Speed 1.75 }
Actor Spark_P8 : Spark_P1  { Speed 2.0  }
Actor Spark_P9 : Spark_P1  { Speed 2.25 }
Actor Spark_P10 : Spark_P1 { Speed 2.5  }
Actor Spark_P11 : Spark_P1 { Speed 2.75 }
Actor Spark_P12 : Spark_P1 { Speed 3.0  }
Actor Spark_P13 : Spark_P1 { Speed 3.25 }
Actor Spark_P14 : Spark_P1 { Speed 3.5  }
Actor Spark_P15 : Spark_P1 { Speed 3.75 }
Actor Spark_P16 : Spark_P1 { Speed 4.0  }

// GVH 26
ACTOR SoundWater 256
{
	//$Category GVH:NS Map Decoration
  +NOBLOCKMAP
  +NOSECTOR
  +DONTSPLASH
  States
  {
  Spawn:
    TNT1 A 35 A_PlaySoundEx("Sounds/Waterfall", "SoundSlot6")
    Loop
  }
}

// GVH 28
Actor SteamSpawner : SwitchableDecoration 10000 //DoomEdNum Here
{
  Height 2
  Radius 1
  Mass 0
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  States
  {
  Spawn:
  Active:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[0] == 1, "Down")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "Forward")
    TNT1 A 0 A_JumpIf(Args[1] > 0, "UpBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", 7, 0.5, 1, ATTN_NORM)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Down:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "DownBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", 7, 0.5, 1, ATTN_NORM)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Forward:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "ForwardBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", 7, 0.5, 1, ATTN_NORM)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  UpBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  DownBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  ForwardBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  Inactive:
    TNT1 A 1 A_StopSoundEx("SoundSlot7")
    TNT1 A 1
    Goto Inactive+1
  }
}

/*
Actor SteamParticle
{
  Height 1
  Radius 1
  +Missile
  +NoGravity
  +NoBlockMap
  RenderStyle Add
  Scale 0.4
  Alpha 0.65
  States
  {
  Spawn:
    STEM A 2 A_SetTranslucent(0.6, 1)
    STEM B 2 A_SetTranslucent(0.55, 1)
    STEM C 2 A_SetTranslucent(0.5, 1)
    STEM D 2 A_SetTranslucent(0.45, 1)
    STEM E 2 A_SetTranslucent(0.4, 1)
    STEM F 2 A_SetTranslucent(0.35, 1)
    STEM G 2 A_SetTranslucent(0.3, 1)
    STEM H 2 A_SetTranslucent(0.25, 1)
    STEM I 2 A_SetTranslucent(0.2, 1)
    STEM J 2 A_SetTranslucent(0.15, 1)
    STEM K 2 A_SetTranslucent(0.1, 1)
    STEM L 2 A_SetTranslucent(0.05, 1)
    Stop
  }
}
*/

ACTOR IceyStub 20001
{
	//$Category GVH:NS Map Decoration
	+SOLID
	Radius 20
	Height 26
	States
	{
		Spawn:
			ICS1 A -1
		Stop
	}
}

ACTOR IceyTree 20002
{
	//$Category GVH:NS Map Decoration
	Radius 32
	Height 96
	+SOLID
	States
	{
		Spawn:
			ICT1 A -1
		Stop
	}
}

// GVH 30
Actor ThanatosReaperStatueSmall 3202
{
	//$Category GVH:NS Map Decoration
	+SOLID
	Scale 0.6
	Alpha 0.74
	states
	{
	Spawn:
		THAN A -1
		Stop
	}
}

Actor HeresiarchStatue 3203
{
	//$Category GVH:NS Map Decoration
	+SOLID
	scale 0.9
	Translation "250:254=203:207", "160:167=176:183", "176:191=112:127", "13:15=253:254", "32:47=120:127", "224:231=176:183"
	states
	{
	Spawn:
		SORC F -1
		Stop
	}
}

Actor KoraxStatue 3204
{
	//$Category GVH:NS Map Decoration
	+SOLID
	scale 0.8
	Translation "0:12=242:247", "95:111=240:241", "32:47=162:167", "176:191=160:165"
	states
	{
	Spawn:
		KORX G -1
		Stop
	}
}


Actor Bushez 3205
{
	//$Category GVH:NS Map Decoration
	+NOINTERACTION
	-SOLID
	+CLIENTSIDEONLY
	Scale 1.0
	States
	{
	Spawn:
		LEAF A -1
		Stop
	}
}

Actor Bushez2 3206
{
	//$Category GVH:NS Map Decoration
	+NOINTERACTION
	-SOLID
	+CLIENTSIDEONLY
	Scale 0.25
	States
	{
	Spawn:
		LEAF B -1
		Stop
	}
}

// GVH 31
//Edit: Lots of steam ranting removed. :P

//Edit: found a workaround for this problem in TLMS!

//Modified - silent steam!
//Its named differently from the one used in GVHGB.
//Actors have been given slightly different names to not bug other things so much possibily.

Actor NonloudSteamSpawner : SwitchableDecoration 10030 //DoomEdNum Here
{
  Height 2
  Radius 1
  Mass 0
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  States
  {
  Spawn:
  Active:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[0] == 1, "Down")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "Forward")
    TNT1 A 0 A_JumpIf(Args[1] > 0, "UpBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Down:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "DownBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Forward:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "ForwardBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  UpBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  DownBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  ForwardBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  Inactive:
    //TNT1 A 1 A_StopSoundEx("SoundSlot7")
	TNT1 A 1 A_StopSound (CHAN_AUTO)
    TNT1 A 1
    Goto Inactive+1
  }
}

Actor 31SteamParticle
{
  Height 1
  Radius 1
  +Missile
  +NoGravity
  +NoBlockMap
  RenderStyle Add
  Scale 0.4
  Alpha 0.65
  States
  {
  Spawn:
    STEM A 2 A_SetTranslucent(0.6, 1)
    STEM B 2 A_SetTranslucent(0.55, 1)
    STEM C 2 A_SetTranslucent(0.5, 1)
    STEM D 2 A_SetTranslucent(0.45, 1)
    STEM E 2 A_SetTranslucent(0.4, 1)
    STEM F 2 A_SetTranslucent(0.35, 1)
    STEM G 2 A_SetTranslucent(0.3, 1)
    STEM H 2 A_SetTranslucent(0.25, 1)
    STEM I 2 A_SetTranslucent(0.2, 1)
    STEM J 2 A_SetTranslucent(0.15, 1)
    STEM K 2 A_SetTranslucent(0.1, 1)
    STEM L 2 A_SetTranslucent(0.05, 1)
    Stop
  }
}

//Original steam.
Actor 31SteamSpawner : SwitchableDecoration 13532 //DoomEdNum Here
{
	//$Category GVH:NS Map Decoration
  Height 2
  Radius 1
  Mass 0
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  States
  {
  Spawn:
  Active:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[0] == 1, "Down")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "Forward")
    TNT1 A 0 A_JumpIf(Args[1] > 0, "UpBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", CHAN_AUTO, 0.6, 1, 1)
    TNT1 A 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Down:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "DownBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", CHAN_AUTO, 0.6, 1, 1)
    TNT1 A 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Forward:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "ForwardBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", CHAN_AUTO, 0.6, 1, 1)
    TNT1 A 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  UpBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("Steam/Fire", CHAN_AUTO, 0.6, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  DownBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("Steam/Fire", CHAN_AUTO, 0.6, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  ForwardBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("Steam/Fire", CHAN_AUTO, 0.6, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("31SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  Inactive:
    //TNT1 A 1 A_StopSoundEx("SoundSlot7")
	TNT1 A 1 A_StopSound (CHAN_AUTO)
    TNT1 A 1
    Goto Inactive+1
  }
}

// GVH 36
Actor YellowLamp 13241
{
	//$Category GVH:NS Map Decoration
  +Solid
  Radius 8
  Height 52
  States
  {
  Spawn:
    YLMP A -1 Bright
    Loop
  }
}

Actor GreyLamp 13214
{
	//$Category GVH:NS Map Decoration
  +Solid
  Radius 8
  Height 52
  States
  {
  Spawn:
    GLMP A -1 Bright
    Loop
  }
}

Actor Chair 14354
{
	//$Category GVH:NS Map Decoration
  +FloorClip
  +Solid
  Height 30
  Radius 15
  States
  {
  Spawn:
    CHAI A -1
    Stop
  }
}

actor TrapAmmoDecoration 19102
{
	//$Category GVH:NS Map Decoration
  Mass 99999999
  +TELESTOMP
  states
  {
  Spawn:
    GBTD A -1
    stop
  }
}

actor SjasDecoration 19990
{
//$Category GVH:NS Map Decoration
	Mass 99999999
	scale 0.8
	gravity 0.0
	+NOINTERACTION
	+NOGRAVITY
	+FLOAT
	+SOLID
	states
	{
	Spawn:
	SJSD A 1 A_SetTranslucent (0.5, 0)
	loop
	}
}

actor CreeperDecoration 19991
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	height 18
	radius 13
	scale 0.4
	+SHADOW
	+NOINTERACTION
	+SOLID
	+FORCEXYBILLBOARD
	states
	{
	Spawn:
	CRED A 1
	loop
	}
}

actor CreeperunderwaterDecoration 19103
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	height 18
	radius 13
	scale 0.4
	+NOGRAVITY
	+FLOAT
	floatspeed 25
	+FLOATBOB
	+SHADOW
	//+NOINTERACTION
	//+SOLID
	+FORCEXYBILLBOARD
	states
	{
	Spawn:
	CRED A 25
	loop
	}
}

actor JitterskullDecoration 19992
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	scale 0.24
	+NOINTERACTION
	+FLOORHUGGER
	+SOLID
	states
	{
	Spawn:
	JSKD A 1
	loop
	}
}

actor ChokeDecoration 19993
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	scale 0.8
	+NOINTERACTION
	+SOLID
	states
	{
	Spawn:
	CHOD A 1
	Loop
	}
}

actor ChokeDecoration2 19995
{	
	//$Category GVH:NS Map Decoration
	Mass 99999999
	scale 0.8
	+NOINTERACTION
	+SOLID
	states
	{
	Spawn:
	CHDB A 1
	Loop
	}
}

actor FrostbiteDecoration 19994
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	scale 0.19//Originally 0.24
	+NOINTERACTION
	+SOLID
	states
	{
	Spawn:
	FROD A 1
	Loop
	}
}
//////////////////////////////////////

//And some decorative actors that look like Doom's items (they dont work though).
actor SuitDecoration 19996
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	Height 46
	+SOLID
	states
	{
	Spawn:
	SUIT A -1
	stop
	}
}

actor MedikitDecoration 19998
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	+SOLID
	states
	{
	Spawn:
	MEDI A -1
	stop
	}
}

actor BerserkthingyDecoration 19999
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	+SOLID
	states
	{
	Spawn:
	PSTR A -1
	stop
	}
}

actor AllmapDecoration 19100
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	+SOLID
	states
	{
	Spawn:
	PMAP ABCDCB 6
	Loop
	}
}

actor InfraredDecoration 19101
{
	//$Category GVH:NS Map Decoration
	Mass 99999999
	+SOLID
	states
	{
	Spawn:
	PVIS A 6
	PVIS B 6
	Loop
	}
}

//Steam and sparks (see credits in readme if you're curious here its from).
//Minor recent change: As was in GVHLM, it might be noisy in TLMS in here.
//Changed rather as an precaution, really.
//EDIT: IT DOESNT WORK. DECORATE SEEMS TO BE AS PERSISTENT AS AN DONKEY IN FAILING.
//It keeps resetting in TLMS. Blame skulltag while watching out for creepers if it does make noise.
//I cant fix it, if you can, go ahead!
//final edit: i've made a non-noisy version of the steam.

//It also has been slightly modified at the steam part and has been given Doombuilder numbers.
/*
Actor SilentSteamSpawner : SwitchableDecoration 10030 //DoomEdNum Here
{
  Height 2
  Radius 1
  Mass 0
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  States
  {
  Spawn:
  Active:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[0] == 1, "Down")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "Forward")
    TNT1 A 0 A_JumpIf(Args[1] > 0, "UpBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Down:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "DownBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Forward:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "ForwardBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  UpBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  DownBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  ForwardBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  Inactive:
    //TNT1 A 1 A_StopSoundEx("SoundSlot7")
	TNT1 A 1 A_StopSound (CHAN_AUTO)
    TNT1 A 1
    Goto Inactive+1
  }
}
*/
/*
Actor SteamParticletwo
{
  Height 1
  Radius 1
  +Missile
  +NoGravity
  +NoBlockMap
  RenderStyle Add
  Scale 0.4
  Alpha 0.65
  States
  {
  Spawn:
    STEM A 2 A_SetTranslucent(0.6, 1)
    STEM B 2 A_SetTranslucent(0.55, 1)
    STEM C 2 A_SetTranslucent(0.5, 1)
    STEM D 2 A_SetTranslucent(0.45, 1)
    STEM E 2 A_SetTranslucent(0.4, 1)
    STEM F 2 A_SetTranslucent(0.35, 1)
    STEM G 2 A_SetTranslucent(0.3, 1)
    STEM H 2 A_SetTranslucent(0.25, 1)
    STEM I 2 A_SetTranslucent(0.2, 1)
    STEM J 2 A_SetTranslucent(0.15, 1)
    STEM K 2 A_SetTranslucent(0.1, 1)
    STEM L 2 A_SetTranslucent(0.05, 1)
    Stop
  }
}
*/
////////////////Original steam////////////////////

Actor GvH38SteamSpawner : SwitchableDecoration 10031 //DoomEdNum Here
{
	//$Category GVH:NS Map Decoration
  Height 2
  Radius 1
  Mass 0
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  States
  {
  Spawn:
  Active:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[0] == 1, "Down")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "Forward")
    TNT1 A 0 A_JumpIf(Args[1] > 0, "UpBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Down:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "DownBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Forward:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "ForwardBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", CHAN_AUTO, 0.5, 1, 1)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  UpBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("Steam/Fire", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  DownBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("Steam/Fire", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  ForwardBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
	TNT1 A 0 A_PlaySound ("Steam/Fire", CHAN_AUTO, 0.5, 1, 1)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  Inactive:
    //TNT1 A 1 A_StopSoundEx("SoundSlot7")
	TNT1 A 1 A_StopSound (CHAN_AUTO)
    TNT1 A 1
    Goto Inactive+1
  }
}

Actor SteamParticletwo
{
  Height 1
  Radius 1
  +Missile
  +NoGravity
  +NoBlockMap
  RenderStyle Add
  Scale 0.4
  Alpha 0.65
  States
  {
  Spawn:
    STEM A 2 A_SetTranslucent(0.6, 1)
    STEM B 2 A_SetTranslucent(0.55, 1)
    STEM C 2 A_SetTranslucent(0.5, 1)
    STEM D 2 A_SetTranslucent(0.45, 1)
    STEM E 2 A_SetTranslucent(0.4, 1)
    STEM F 2 A_SetTranslucent(0.35, 1)
    STEM G 2 A_SetTranslucent(0.3, 1)
    STEM H 2 A_SetTranslucent(0.25, 1)
    STEM I 2 A_SetTranslucent(0.2, 1)
    STEM J 2 A_SetTranslucent(0.15, 1)
    STEM K 2 A_SetTranslucent(0.1, 1)
    STEM L 2 A_SetTranslucent(0.05, 1)
    Stop
  }
}

ACTOR DoomStatue1 31200
{
	height 118
	radius 19
	+SOLID
	states
	{
	spawn:
		DSTT A -1
		Stop
	}
}

ACTOR Nothing : BulletPuff 2102 { }

Actor Doom64CagedHeart 120
{
Game Doom
Radius 16
Height 91
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A001 A -1
	Stop
}
}

Actor Doom64HangingCorpse1 121
{
Game Doom
Radius 16
Height 83
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A003 A -1
	Stop
}
}
Actor Doom64HangingCorpse2 122
{
Game Doom
Radius 16
Height 64
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A004 A -1
	Stop
}
}

Actor Doom64HangingHead 123
{
Game Doom
Radius 8
Height 60
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A005 A -1
	Stop
}
}

Actor Doom64Corpse1 124
{
Game Doom
Radius 16
Height 80
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A006 A -1
	Stop
}
}

Actor Doom64Corpse2 125
{
Game Doom
Radius 24
Height 19
-SOLID
States
{
Spawn:
	A007 A -1
	Stop
}
}

Actor Doom64Corpse3 126
{
Game Doom
Radius 16
Height 37
+SOLID
States
{
Spawn:
	A008 A -1
	Stop
}
}

Actor Doom64HangingArm 127
{
Game Doom
Radius 16
Height 58
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A010 A -1
	Stop
}
}

Actor Doom64HangingBloodyClaw 128
{
Game Doom
Radius 24
Height 101
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A012 A -1
	Stop
}
}

Actor Doom64BloodySpike 129
{
Game Doom
Radius 16
Height 93
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A013 A -1
	Stop
}
}

Actor Doom64AnimatedCorpse 130
{
Game Doom
Radius 24
Height 19
-SOLID
States
{
Spawn:
	A014 AB 8
	Loop
}
}

Actor Doom64BloodyHook 131
{
Game Doom
Radius 8
Height 95
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A015 A -1
	Stop
}
}

Actor Doom64Blood 132
{
Game Doom
Radius 24
Height 7
-SOLID
States
{
Spawn:
	A016 A -1
	Stop
}
}

Actor Doom64BloodGVH21 1322
{
Game Doom
Radius 24
Height 7
-SOLID
+NOTONAUTOMAP
States
{
Spawn:
	A016 A -1
	Stop
}
}

Actor Doom64HeadSpike1 133
{
Game Doom
Radius 16
Height 61
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A017 A -1
	Stop
}
}

Actor Doom64HangingBallBloody 134
{
Game Doom
Radius 16
Height 80
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A018 A -1
	Stop
}
}

Actor Doom64HangingBall 135
{
Game Doom
Radius 16
Height 56
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A019 A -1
	Stop
}
}

Actor Doom64Corpse4 136
{
Game Doom
Radius 24
Height 20
-SOLID
States
{
Spawn:
	A020 A -1
	Stop
}
}

Actor Doom64HangingCorpse3 137
{
Game Doom
Radius 16
Height 95
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A021 A -1
	Stop
}
}

Actor Doom64CorpseSpike 138
{
Game Doom
Radius 16
Height 79
+SOLID
States
{
Spawn:
	A022 A -1
	Stop
}
}

Actor Doom64HangingCorpse4 139
{
Game Doom
Radius 16
Height 98
+SPAWNCEILING
+NOGRAVITY
-SOLID
States
{
Spawn:
	A023 A -1
	Stop
}
}

Actor Doom64HeadSpike2 140
{
Game Doom
Radius 16
Height 69
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A026 A -1
	Stop
}
}

Actor Doom64BloodyPile 141
{
Game Doom
Radius 32
Height 15
-SOLID
States
{
Spawn:
	A027 A -1
	Stop
}
}

Actor Doom64Gargoyle1 142
{
Game Doom
Radius 56
Height 24
ProjectilePassHeight -8
+SOLID
States
{
Spawn:
	A028 A -1
	Stop
}
}

Actor Doom64Gargoyle2 143
{
Game Doom
Radius 56
Height 24
+SOLID
ProjectilePassHeight -8
States
{
Spawn:
	A029 A -1
	Stop
}
}

Actor Doom64YellowTorch 144
{
Game Doom
Radius 4
Height 40
+NOGRAVITY
+NOBLOCKMAP
-MOVEWITHSECTOR
-SOLID
States
{
Spawn:
	A030 ABCDE 4 Bright
	Loop
}
}

Actor Doom64BlueTorch 145
{
Game Doom
Radius 4
Height 40
+NOGRAVITY
+NOBLOCKMAP
-MOVEWITHSECTOR
-SOLID
States
{
Spawn:
	A031 ABCDE 4 Bright
	Loop
}
}

Actor Doom64RedTorch 146
{
Game Doom
Radius 4
Height 40
+NOGRAVITY
+NOBLOCKMAP
-MOVEWITHSECTOR
-SOLID
States
{
Spawn:
	A032 ABCDE 4 Bright
	Loop
}
}

Actor Doom64Totem1 147
{
Game Doom
Radius 15
Height 73
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A033 A -1
	Stop
}
}

Actor Doom64Totem2 148
{
Game Doom
Radius 14
Height 58
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A034 A -1
	Stop
}
}

Actor Doom64Lamp1 149
{
Game Doom
Radius 8
Height 80
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A035 A -1 Bright
	Stop
}
}

Actor Doom64Lamp2 150
{
Game Doom
Radius 8
Height 60
ProjectilePassHeight 1
+SOLID
States
{
Spawn:
	A036 A -1
	Stop
}
}

Actor Doom64Tree1 151
{
Game Doom
Radius 16
Height 64
ProjectilePassHeight -8
+SOLID
States
{
Spawn:
	XRE6 A -1
	Stop
}
}

Actor Doom64Tree2 152
{
Game Doom
Radius 16
Height 64
ProjectilePassHeight -8
+SOLID
States
{
Spawn:
	XRE7 A -1
	Stop
}
}

Actor Doom64Tree3 153
{
Game Doom
Radius 16
Height 32
ProjectilePassHeight -8
+SOLID
States
{
Spawn:
	XRE8 A -1
	Stop
}
}

Actor Doom64BlueFlame 154
{
Game Doom
+NOGRAVITY
-SOLID
States
{
Spawn:
	BFLM ABCDE 4 Bright
	Loop
}
}

Actor Doom64BlueFlameGVH21 1544
{
Game Doom
+NOGRAVITY
-SOLID
+NOTONAUTOMAP
States
{
Spawn:
	BFLM ABCDE 4 Bright
	Loop
}
}

Actor Doom64RedFlame 155
{
Game Doom
+NOGRAVITY
-SOLID
States
{
Spawn:
	RFLM ABCDE 4
	Loop
}
}

Actor Doom64YellowFlame 156
{
Game Doom
+NOGRAVITY
-SOLID
States
{
Spawn:
	YFLM ABCDE 4
	Loop
}
}

Actor Doom64HangingLamp1 157
{
Game Doom
Radius 56
Height 16
+SPAWNCEILING
+NOGRAVITY
+NOBLOCKMAP
-MOVEWITHSECTOR
-SOLID
States
{
Spawn:
	LMP1 A -1 Bright
	Stop
}
}

Actor Doom64HangingLamp2 158
{
Game Doom
Radius 12
Height 8
+SPAWNCEILING
+NOGRAVITY
+NOBLOCKMAP
-MOVEWITHSECTOR
-SOLID
States
{
Spawn:
	LMP2 A -1 Bright
	Stop
}
}

Actor Doom64Candle 159
{
Game Doom
Radius 4
Height 30
-SOLID
States
{
Spawn:
	XAND AB 3 Bright
	Loop
}
}

Actor Doom64CandleGVH21 1599
{
Game Doom
Radius 4
Height 30
-SOLID
+NOTONAUTOMAP
States
{
Spawn:
	XAND AB 3 Bright
	Loop
}
}

Actor Doom64Fire 160
{
Game Doom
Radius 8
Height 6
RenderStyle Translucent
Alpha 0.75
+NOGRAVITY
-SOLID
States
{
Spawn:
	XIRE ABCDE 3 Bright
	Loop
}
}

Actor Doom64BloodRainSpawner : RainSpawner 161
{
	Game Doom
 States
 	{
 	Spawn:
		TNT1 A 3 A_JumpIf(z >= ceilingz,1)
		TNT1 A 3 A_SpawnItemEx ("Doom64BloodRainDrop", random(0,-128), random(0,-128), 0, random(0,1), random(0,1), -random(1,5), random(0,255), 0) 
 		goto Spawn
	}
}

Actor Doom64BloodRainDrop : RainDrop
{
	Game Doom
 States
	{
	Spawn:
		64BZ A 1 A_JumpIf(waterlevel >= 1, "Death")
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

Actor Doom64RedOrb 162
{
Game Doom
Radius 16
Height 79
ProjectilePassHeight -8
+SOLID
States
{
Spawn:
	ORBR A -1
	Stop
}
}

ACTOR BloodSplash64
{
  Radius 2
  Height 4
  +NOBLOCKMAP
  +MISSILE
  +DROPOFF
  +NOTELEPORT
  +LOWGRAVITY
  +CANNOTPUSH
  +DONTSPLASH
  +DONTBLAST
  States
  {
  Spawn:
    ZPSH ABC 8
    ZPSH D 16
    Stop
  Death:
    ZPSH D 10
    Stop
  }
}

ACTOR BloodSplashBase64
{
  +NOBLOCKMAP
  +NOCLIP
  +NOGRAVITY
  +DONTSPLASH
  +DONTBLAST
  States
  {
  Spawn:
    ZPSH EFGHIJK 5
    Stop
  }
}

Actor SinistarDecoration 163
{
Game Doom
Scale 1.5
-SOLID
States
{
Spawn:
	SINI ABCDEFGHIJKLMNOPQRSTUVWXYZ 4
	SINE A 4
	Loop
}
}

// The Boiling[color name] actors and the Boiling[Color Name]dropper actors are done by hnsolo77
// The Spawners are modified from the EmperSpawner made by Tormentor667.
// The Sprites are actually taken from Super Mario Bros. 3, specifically they were lava tiles and not sprites... 
// yeah that did not stop me from finding parts i liked and modifing them somewhat to 'heavily', in quotes due
// to the fact that all the sprites are small so the 'heavy' is in fact, rather simplistic. like very.
// the sounds are from ZPack, AMB04 and 06 respectively since i cant remember who the credit goes too ATM...


actor BoilingOrangeSpawner 10770 // Lava Boiling without the bright sprites, for normal Non GLdefs Glowing flats.
{
//$Category SpecialEffects
+NoBlockMap +NOBLOCKMAP +NoInteraction +NoClip -Solid +CLIENTSIDEONLY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_LAVA", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingOrangeDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingOrangeDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingOrangeDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingOrangeDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_LAVA", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingOrangeDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingOrangeDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingOrangeDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingOrangeDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingOrangeDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingOrange1")
Goto onlikedonkeykong
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingOrange2")
Goto onlikedonkeykong
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingOrange3")
Goto onlikedonkeykong
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingOrange4")
Goto onlikedonkeykong
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingOrange5")
Goto onlikedonkeykong
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingOrange6")
Goto onlikedonkeykong
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingOrange7")
Goto onlikedonkeykong
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingOrange8")
Goto onlikedonkeykong
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingOrange9")
Goto onlikedonkeykong
onlikedonkeykong:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingOrange1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOIL A 4
BOIL B 4
BOIL C 4
BOIL D 4
BOIL E 4
BOIL F 4
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingOrange2 : BoilingOrange1
{
Scale 0.9
}
actor BoilingOrange3 : BoilingOrange1
{
Scale 0.8
}
actor BoilingOrange4 : BoilingOrange1
{
Scale 0.7
}
actor BoilingOrange5 : BoilingOrange1
{
Scale 0.6
}
actor BoilingOrange6 : BoilingOrange1
{
Scale 1.1
}
actor BoilingOrange7 : BoilingOrange1
{
Scale 1.2
}
actor BoilingOrange8 : BoilingOrange1
{
Scale 1.3
}
actor BoilingOrange9 : BoilingOrange1
{
Scale 1.4
}
actor TransparentBoilingOrangeDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange1")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange2")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange3")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange4")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange5")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange6")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange7")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange8")
Goto FUCKFUCKITYFUCKFUCKFUCK
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingOrange9")
Goto FUCKFUCKITYFUCKFUCKFUCK
FUCKFUCKITYFUCKFUCKFUCK:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingOrange1
{
Renderstyle Translucent
alpha .5
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOIL A 4
BOIL B 4
BOIL C 4
BOIL D 4
BOIL E 4
BOIL F 4
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingOrange2 : TransparentBoilingOrange1
{
Scale 0.9
}
actor TransparentBoilingOrange3 : TransparentBoilingOrange1
{
Scale 0.8
}
actor TransparentBoilingOrange4 : TransparentBoilingOrange1
{
Scale 0.7
}
actor TransparentBoilingOrange5 : TransparentBoilingOrange1
{
Scale 0.6
}
actor TransparentBoilingOrange6 : TransparentBoilingOrange1
{
Scale 1.1
}
actor TransparentBoilingOrange7 : TransparentBoilingOrange1
{
Scale 1.2
}
actor TransparentBoilingOrange8 : TransparentBoilingOrange1
{
Scale 1.3
}
actor TransparentBoilingOrange9 : TransparentBoilingOrange1
{
Scale 1.4
}
actor BoilingBlueSpawner 10771
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_JumpIf(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlueDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlueDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlueDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlueDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingBlueDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingBlueDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingBlueDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingBlueDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingBlueDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingBlue1")
Goto SuperNintendo
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingBlue2")
Goto SuperNintendo
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingBlue3")
Goto SuperNintendo
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingBlue4")
Goto SuperNintendo
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingBlue5")
Goto SuperNintendo
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingBlue6")
Goto SuperNintendo
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingBlue7")
Goto SuperNintendo
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingBlue8")
Goto SuperNintendo
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingBlue9")
Goto SuperNintendo
SuperNintendo:
TNT1 A 1 A_FadeOut(1)
}
}
Actor BoilingBlue1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI2 a 2
BOI2 b 2
BOI2 c 2
BOI2 d 2
BOI2 e 2
BOI2 f 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingBlue2 : BoilingBlue1
{
Scale 0.9
}
actor BoilingBlue3 : BoilingBlue1
{
Scale 0.8
}
actor BoilingBlue4 : BoilingBlue1
{
Scale 0.7
}
actor BoilingBlue5 : BoilingBlue1
{
Scale 0.6
}
actor BoilingBlue6 : BoilingBlue1
{
Scale 1.1
}
actor BoilingBlue7 : BoilingBlue1
{
Scale 1.2
}
actor BoilingBlue8 : BoilingBlue1
{
Scale 1.3
}
actor BoilingBlue9 : BoilingBlue1
{
Scale 1.4
}
actor TransparentBoilingBlueDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue1")
Goto SegaSucksAss
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue2")
Goto SegaSucksAss
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue3")
Goto SegaSucksAss
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue4")
Goto SegaSucksAss
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue5")
Goto SegaSucksAss
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue6")
Goto SegaSucksAss
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue7")
Goto SegaSucksAss
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue8")
Goto SegaSucksAss
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlue9")
Goto SegaSucksAss
SegaSucksAss:
TNT1 A 1 A_FadeOut(1)
stop
}
}
Actor TransparentBoilingBlue1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
Renderstyle Translucent
alpha .5
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI2 a 2
BOI2 b 2
BOI2 c 2
BOI2 d 2
BOI2 e 2
BOI2 f 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingBlue2 : TransparentBoilingBlue1
{
Scale 0.9
}
actor TransparentBoilingBlue3 : TransparentBoilingBlue1
{
Scale 0.8
}
actor TransparentBoilingBlue4 : TransparentBoilingBlue1
{
Scale 0.7
}
actor TransparentBoilingBlue5 : TransparentBoilingBlue1
{
Scale 0.6
}
actor TransparentBoilingBlue6 : TransparentBoilingBlue1
{
Scale 1.1
}
actor TransparentBoilingBlue7 : TransparentBoilingBlue1
{
Scale 1.2
}
actor TransparentBoilingBlue8 : TransparentBoilingBlue1
{
Scale 1.3
}
actor TransparentBoilingBlue9 : TransparentBoilingBlue1
{
Scale 1.4
}

actor BoilingGreySpawner 10772
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreyDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreyDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreyDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreyDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingGreyDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingGreyDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingGreyDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingGreyDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingGreyDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingGrey1")
Goto OMGTheyKilledKennyYouBastards
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingGrey2")
Goto OMGTheyKilledKennyYouBastards
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingGrey3")
Goto OMGTheyKilledKennyYouBastards
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingGrey4")
Goto OMGTheyKilledKennyYouBastards
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingGrey5")
Goto OMGTheyKilledKennyYouBastards
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingGrey6")
Goto OMGTheyKilledKennyYouBastards
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingGrey7")
Goto OMGTheyKilledKennyYouBastards
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingGrey8")
Goto OMGTheyKilledKennyYouBastards
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingGrey9")
Goto OMGTheyKilledKennyYouBastards
OMGTheyKilledKennyYouBastards:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingGrey1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI3 A 2
BOI3 B 2
BOI3 C 2
BOI3 D 2
BOI3 E 2
BOI3 F 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingGrey2 : BoilingGrey1
{
Scale 0.9
}
actor BoilingGrey3 : BoilingGrey1
{
Scale 0.8
}
actor BoilingGrey4 : BoilingGrey1
{
Scale 0.7
}
actor BoilingGrey5 : BoilingGrey1
{
Scale 0.6
}
actor BoilingGrey6 : BoilingGrey1
{
Scale 1.1
}
actor BoilingGrey7 : BoilingGrey1
{
Scale 1.2
}
actor BoilingGrey8 : BoilingGrey1
{
Scale 1.3
}
actor BoilingGrey9 : BoilingGrey1
{
Scale 1.4
}
actor TransparentBoilingGreyDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey1")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey2")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey3")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey4")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey5")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey6")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey7")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey8")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGrey9")
Goto IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA
IAMONECANSHORTOFASIXPACKWAHAHAHAHAHA:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingGrey1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
Renderstyle Translucent
alpha .5
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI3 A 2
BOI3 B 2
BOI3 C 2
BOI3 D 2
BOI3 E 2
BOI3 F 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingGrey2 : TransparentBoilingGrey1
{
Scale 0.9
}
actor TransparentBoilingGrey3 : TransparentBoilingGrey1
{
Scale 0.8
}
actor TransparentBoilingGrey4 : TransparentBoilingGrey1
{
Scale 0.7
}
actor TransparentBoilingGrey5 : TransparentBoilingGrey1
{
Scale 0.6
}
actor TransparentBoilingGrey6 : TransparentBoilingGrey1
{
Scale 1.1
}
actor TransparentBoilingGrey7 : TransparentBoilingGrey1
{
Scale 1.2
}
actor TransparentBoilingGrey8 : TransparentBoilingGrey1
{
Scale 1.3
}
actor TransparentBoilingGrey9 : TransparentBoilingGrey1
{
Scale 1.4
}

actor BoilingBrownSpawner 10773
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBrownDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBrownDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBrownDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBrownDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingBrownDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingBrownDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingBrownDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingBrownDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingBrownDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingBrown1")
Goto VanHalenRules
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingBrown2")
Goto VanHalenRules
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingBrown3")
Goto VanHalenRules
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingBrown4")
Goto VanHalenRules
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingBrown5")
Goto VanHalenRules
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingBrown6")
Goto VanHalenRules
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingBrown7")
Goto VanHalenRules
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingBrown8")
Goto VanHalenRules
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingBrown9")
Goto VanHalenRules
VanHalenRules:
TNT1 A 1 A_FadeOut(1)
stop
}
}
Actor BoilingBrown1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI4 a 2
BOI4 b 2
BOI4 c 2
BOI4 d 2
BOI4 e 2
BOI4 f 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingBrown2 : BoilingBrown1
{
Scale 0.9
}
actor BoilingBrown3 : BoilingBrown1
{
Scale 0.8
}
actor BoilingBrown4 : BoilingBrown1
{
Scale 0.7
}
actor BoilingBrown5 : BoilingBrown1
{
Scale 0.6
}
actor BoilingBrown6 : BoilingBrown1
{
Scale 1.1
}
actor BoilingBrown7 : BoilingBrown1
{
Scale 1.2
}
actor BoilingBrown8 : BoilingBrown1
{
Scale 1.3
}
actor BoilingBrown9 : BoilingBrown1
{
Scale 1.4
}
actor TransparentBoilingBrownDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown1")
Goto TheOzzManRules
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown2")
Goto TheOzzManRules
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown3")
Goto TheOzzManRules
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown4")
Goto TheOzzManRules
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown5")
Goto TheOzzManRules
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown6")
Goto TheOzzManRules
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown7")
Goto TheOzzManRules
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown8")
Goto TheOzzManRules
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBrown9")
Goto TheOzzManRules
TheOzzManRules:
TNT1 A 1 A_FadeOut(1)
Stop
}
}
Actor TransparentBoilingBrown1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
Renderstyle Translucent
alpha .5
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI4 a 2
BOI4 b 2
BOI4 c 2
BOI4 d 2
BOI4 e 2
BOI4 f 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingBrown2 : TransparentBoilingBrown1
{
Scale 0.9
}
actor TransparentBoilingBrown3 : TransparentBoilingBrown1
{
Scale 0.8
}
actor TransparentBoilingBrown4 : TransparentBoilingBrown1
{
Scale 0.7
}
actor TransparentBoilingBrown5 : TransparentBoilingBrown1
{
Scale 0.6
}
actor TransparentBoilingBrown6 : TransparentBoilingBrown1
{
Scale 1.1
}
actor TransparentBoilingBrown7 : TransparentBoilingBrown1
{
Scale 1.2
}
actor TransparentBoilingBrown8 : TransparentBoilingBrown1
{
Scale 1.3
}
actor TransparentBoilingBrown9 : TransparentBoilingBrown1
{
Scale 1.4
}

actor BoilingBlackSpawner 10774
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TMTT A 0 A_Jumpif(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlackDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlackDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlackDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingBlackDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingBlackDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingBlackDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingBlackDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingBlackDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingBlackDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingBlack1")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingBlack2")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingBlack3")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingBlack4")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingBlack5")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingBlack6")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingBlack7")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingBlack8")
Goto SIRBELFINMAKEMEANOMMLETTE
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingBlack9")
Goto SIRBELFINMAKEMEANOMMLETTE
SIRBELFINMAKEMEANOMMLETTE:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingBlack1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI5 a 2
BOI5 b 2
BOI5 C 2
BOI5 D 2
BOI5 E 2
BOI5 F 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingBlack2 : BoilingBlack1
{
Scale 0.9
}
actor BoilingBlack3 : BoilingBlack1
{
Scale 0.8
}
actor BoilingBlack4 : BoilingBlack1
{
Scale 0.7
}
actor BoilingBlack5 : BoilingBlack1
{
Scale 0.6
}
actor BoilingBlack6 : BoilingBlack1
{
Scale 1.1
}
actor BoilingBlack7 : BoilingBlack1
{
Scale 1.2
}
actor BoilingBlack8 : BoilingBlack1
{
Scale 1.3
}
actor BoilingBlack9 : BoilingBlack1
{
Scale 1.4
}
actor TransparentBoilingBlackDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack1")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack2")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack3")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack4")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack5")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack6")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack7")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack8")
Goto OhNoThereGoesTokyoGoGoGodzilla
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingBlack9")
Goto OhNoThereGoesTokyoGoGoGodzilla
OhNoThereGoesTokyoGoGoGodzilla:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingBlack1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
Renderstyle Translucent
alpha .5
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI5 a 2
BOI5 b 2
BOI5 C 2
BOI5 D 2
BOI5 E 2
BOI5 F 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingBlack2 : TransparentBoilingBlack1
{
Scale 0.9
}
actor TransparentBoilingBlack3 : TransparentBoilingBlack1
{
Scale 0.8
}
actor TransparentBoilingBlack4 : TransparentBoilingBlack1
{
Scale 0.7
}
actor TransparentBoilingBlack5 : TransparentBoilingBlack1
{
Scale 0.6
}
actor TransparentBoilingBlack6 : TransparentBoilingBlack1
{
Scale 1.1
}
actor TransparentBoilingBlack7 : TransparentBoilingBlack1
{
Scale 1.2
}
actor TransparentBoilingBlack8 : TransparentBoilingBlack1
{
Scale 1.3
}
actor TransparentBoilingBlack9 : TransparentBoilingBlack1
{
Scale 1.4
}

actor BoilingRedSpawner 10775
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_JUMPIF(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingRedDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingRedDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingRedDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingRedDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingRedDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingRedDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingRedDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingRedDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingRedDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingRed1")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingRed2")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingRed3")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingRed4")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingRed5")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingRed6")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingRed7")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingRed8")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingRed9")
Goto ouerthvgjhquhcghurehqiucvvbiuevbojhboia
ouerthvgjhquhcghurehqiucvvbiuevbojhboia:
TNT1 A 1 A_FadeOut(1)
stop
}
}
Actor BoilingRed1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI6 a 2
BOI6 b 2
BOI6 c 2
BOI6 d 2
BOI6 e 2
BOI6 f 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingRed2 : BoilingRed1
{
Scale 0.9
}
actor BoilingRed3 : BoilingRed1
{
Scale 0.8
}
actor BoilingRed4 : BoilingRed1
{
Scale 0.7
}
actor BoilingRed5 : BoilingRed1
{
Scale 0.6
}
actor BoilingRed6 : BoilingRed1
{
Scale 1.1
}
actor BoilingRed7 : BoilingRed1
{
Scale 1.2
}
actor BoilingRed8 : BoilingRed1
{
Scale 1.3
}
actor BoilingRed9 : BoilingRed1
{
Scale 1.4
}
actor TransparentBoilingRedDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed1")
Goto insertwittystatenamehere
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed2")
Goto insertwittystatenamehere
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed3")
Goto insertwittystatenamehere
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed4")
Goto insertwittystatenamehere
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed5")
Goto insertwittystatenamehere
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed6")
Goto insertwittystatenamehere
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed7")
Goto insertwittystatenamehere
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed8")
Goto insertwittystatenamehere
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingRed9")
Goto insertwittystatenamehere
insertwittystatenamehere:
TNT1 A 1 A_FadeOut(1)
stop
}
}
Actor TransparentBoilingRed1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
Renderstyle Translucent
alpha .5
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI6 a 2
BOI6 b 2
BOI6 c 2
BOI6 d 2
BOI6 e 2
BOI6 f 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingRed2 : TransparentBoilingRed1
{
Scale 0.9
}
actor TransparentBoilingRed3 : TransparentBoilingRed1
{
Scale 0.8
}
actor TransparentBoilingRed4 : TransparentBoilingRed1
{
Scale 0.7
}
actor TransparentBoilingRed5 : TransparentBoilingRed1
{
Scale 0.6
}
actor TransparentBoilingRed6 : TransparentBoilingRed1
{
Scale 1.1
}
actor TransparentBoilingRed7 : TransparentBoilingRed1
{
Scale 1.2
}
actor TransparentBoilingRed8 : TransparentBoilingRed1
{
Scale 1.3
}
actor TransparentBoilingRed9 : TransparentBoilingRed1
{
Scale 1.4
}

actor BoilingGreenSpawner 10776
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[4], "NonTransparent")
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreenDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreenDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreenDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("TransparentBoilingGreenDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparent:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NonTransparentNoSound")
TNT1 A 0 A_PlaySoundEx("SND_BOIL", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingGreenDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingGreenDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NonTransparentNoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NonTransparentNoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingGreenDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NonTransparentNoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingGreenDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingGreenDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingGreen1")
Goto andyetanotherpointlessstatename
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingGreen2")
Goto andyetanotherpointlessstatename
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingGreen3")
Goto andyetanotherpointlessstatename
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingGreen4")
Goto andyetanotherpointlessstatename
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingGreen5")
Goto andyetanotherpointlessstatename
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingGreen6")
Goto andyetanotherpointlessstatename
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingGreen7")
Goto andyetanotherpointlessstatename
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingGreen8")
Goto andyetanotherpointlessstatename
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingGreen9")
Goto andyetanotherpointlessstatename
andyetanotherpointlessstatename:
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingGreen1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI7 A 2
BOI7 B 2
BOI7 C 2
BOI7 D 2
BOI7 E 2
BOI7 F 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingGreen2 : BoilingGreen1
{
Scale 0.9
}
actor BoilingGreen3 : BoilingGreen1
{
Scale 0.8
}
actor BoilingGreen4 : BoilingGreen1
{
Scale 0.7
}
actor BoilingGreen5 : BoilingGreen1
{
Scale 0.6
}
actor BoilingGreen6 : BoilingGreen1
{
Scale 1.1
}
actor BoilingGreen7 : BoilingGreen1
{
Scale 1.2
}
actor BoilingGreen8 : BoilingGreen1
{
Scale 1.3
}
actor BoilingGreen9 : BoilingGreen1
{
Scale 1.4
}
actor TransparentBoilingGreenDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen1")
Goto RelaxitsCranTime
Drop2:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen2")
Goto RelaxitsCranTime
Drop3:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen3")
Goto RelaxitsCranTime
Drop4:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen4")
Goto RelaxitsCranTime
Drop5:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen5")
Goto RelaxitsCranTime
Drop6:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen6")
Goto RelaxitsCranTime
Drop7:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen7")
Goto RelaxitsCranTime
Drop8:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen8")
Goto RelaxitsCranTime
Drop9:
TNT1 A 0 A_SpawnItemEx("TransparentBoilingGreen9")
Goto RelaxitsCranTime
RelaxitsCranTime:
TNT1 A 1 A_FadeOut(1)
Stop
}
}
actor TransparentBoilingGreen1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
Renderstyle Translucent
alpha .5
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOI7 A 2
BOI7 B 2
BOI7 C 2
BOI7 D 2
BOI7 E 2
BOI7 F 2
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor TransparentBoilingGreen2 : TransparentBoilingGreen1
{
Scale 0.9
}
actor TransparentBoilingGreen3 : TransparentBoilingGreen1
{
Scale 0.8
}
actor TransparentBoilingGreen4 : TransparentBoilingGreen1
{
Scale 0.7
}
actor TransparentBoilingGreen5 : TransparentBoilingGreen1
{
Scale 0.6
}
actor TransparentBoilingGreen6 : TransparentBoilingGreen1
{
Scale 1.1
}
actor TransparentBoilingGreen7 : TransparentBoilingGreen1
{
Scale 1.2
}
actor TransparentBoilingGreen8 : TransparentBoilingGreen1
{
Scale 1.3
}
actor TransparentBoilingGreen9 : TransparentBoilingGreen1
{
Scale 1.4
}

// Bonus! Bright Spawner for orange lava! for use with orange lava textures set to Glow with GLDEFS.
actor BoilingLavaSpawner 10777
{
//$Category SpecialEffects
+NoBlockMap +NoSector +NoInteraction +NoClip -Solid +CLIENTSIDEONLY +NOGRAVITY
states
{
Spawn:
Active:
TNT1 A 0
TNT1 A 0 A_Jumpif(args[3], "NoSound")
TNT1 A 0 A_PlaySoundEx("SND_LAVA", "SoundSlot7", 1)
TNT1 A 0 A_JumpIf(Args[1], "Circle")
TNT1 A 2 A_SpawnItemEx ("BoilingLavaDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
Circle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingLavaDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
NoSound:
TNT1 A 0
TNT1 A 0 A_JumpIf(Args[1], "NoSoundCircle")
TNT1 A 2 A_SpawnItemEx ("BoilingLavaDropper", random(-Args[0], Args[0]), random(-Args[0], Args[0]), 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), random(0,360), 129, Args[2]) 
Loop
NoSoundCircle:
TNT1 A 0
TNT1 A 2 A_SpawnItemEx ("BoilingLavaDropper", random(-Args[0], Args[0]), 0, 0, (0.1)*Random(1, 3), 0, (0.1)*Random(1, 10), Random(0, 360), 129, Args[2]) 
Loop
Inactive:
TNT1 A 1
Loop
}
}
actor BoilingLavaDropper
{
+NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NoBlockMap +NOCLIP
states
{
Spawn:
TNT1 A 0 A_Jump(256,"Drop1", "Drop2", "Drop3", "Drop4", "Drop5", "Drop6", "Drop7", "Drop8", "Drop9")
Drop1:
TNT1 A 0 A_SpawnItemEx("BoilingLava1")
Goto MeGrimlockBadass // if you have no idea who grimlock is, you fail.
Drop2:
TNT1 A 0 A_SpawnItemEx("BoilingLava2")
Goto MeGrimlockBadass
Drop3:
TNT1 A 0 A_SpawnItemEx("BoilingLava3")
Goto MeGrimlockBadass
Drop4:
TNT1 A 0 A_SpawnItemEx("BoilingLava4")
Goto MeGrimlockBadass
Drop5:
TNT1 A 0 A_SpawnItemEx("BoilingLava5")
Goto MeGrimlockBadass
Drop6:
TNT1 A 0 A_SpawnItemEx("BoilingLava6")
Goto MeGrimlockBadass
Drop7:
TNT1 A 0 A_SpawnItemEx("BoilingLava7")
Goto MeGrimlockBadass
Drop8:
TNT1 A 0 A_SpawnItemEx("BoilingLava8")
Goto MeGrimlockBadass
Drop9:
TNT1 A 0 A_SpawnItemEx("BoilingLava9")
Goto MeGrimlockBadass
MeGrimlockBadass:
TNT1 A 1 A_FadeOut(1)
Stop
}
}
actor BoilingLava1
{
+NoBlockmap +NoInteraction -Solid +CLIENTSIDEONLY +NOGRAVITY +NOCLIP
states
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Waterlevel == 0, "Bubble")
    TNT1 A 0 A_JumpIf(Waterlevel > 0, "LiftState")
    Loop
  LiftState:
    TNT1 A 1 ThrustThingZ(0, 4, 0, 0)
    Goto Spawn
Bubble:
BOIL A 4 BRIGHT
BOIL B 4 BRIGHT
BOIL C 4 BRIGHT
BOIL D 4 BRIGHT
BOIL E 4 BRIGHT
BOIL F 4 BRIGHT
TNT1 A 1 A_FadeOut(1)
stop
}
}
actor BoilingLava2 : BoilingLava1
{
Scale 0.9
}
actor BoilingLava3 : BoilingLava1
{
Scale 0.8
}
actor BoilingLava4 : BoilingLava1
{
Scale 0.7
}
actor BoilingLava5 : BoilingLava1
{
Scale 0.6
}
actor BoilingLava6 : BoilingLava1
{
Scale 1.1
}
actor BoilingLava7 : BoilingLava1
{
Scale 1.2
}
actor BoilingLava8 : BoilingLava1
{
Scale 1.3
}
actor BoilingLava9 : BoilingLava1
{
Scale 1.4
}

//=======WINTER THINGS===================

ACTOR winterC 30004
{
  Game Doom
  Radius 20
  Height 140
  +SOLID
  States
  {
  Spawn:
    WINT C -1
    Stop
  }
}

ACTOR winterF 30007
{
  Game Doom
  Radius 10
  Height 110
  +SOLID
  States
  {
  Spawn:
    WINT F -1
    Stop
  }
}

ACTOR D64TallWhiteTorchSilverStand 30008
{
  Game Doom
  Radius 16
  Height 68
  +SOLID
  States
  {
  Spawn:
    WTST ABCD 4 Bright
    Loop
  }
}

ACTOR EasterEggNewClass 30011
{
Game Doom
Radius 16
Height 3
+SOLID
States
{
Spawn:
  SPPP A -1
  Stop
  }
}

//////////////////////
// SNOW SPAWNERS    //
// by Tormentor667  //
// improved by Ceeb //
//////////////////////

Actor SnowParticle
{
	Radius 1
	Height 1
	Damage 0
	Projectile
	RenderStyle Translucent
	Alpha 0
	Scale 0.6

	+MISSILE 
	+NOBLOCKMAP

	States
	{
	Spawn:
		TNT1 A 0
		SNOW AAAAAAAAA 2 A_FadeIn(0.1)
		SNOW A 3
		goto Spawn+9
		Death:
		SNOW A 1 A_FadeOut(0.05)
		Loop
	}
}

Actor SnowSpawner 30015
{
	Radius 1
	Height 1

	+NOBLOCKMAP
	+NOGRAVITY
	+NOSECTOR
	+NOINTERACTION
	+NOCLIP
	-SOLID
	+SPAWNCEILING

	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_CheckSight("Unsighted")
		TNT1 A 0 A_JumpIf(Args[2] > 0, "Circle")
		TNT1 A 8 A_SpawnItemEx ("SnowParticle", Random(1500, -1500), Random(-Args[0], -Args[0]), 0, random(-1.0, 1.0), random(-1.0, 1.0), random(-1.0, -3.0), 0, 128, Args[1])
		Loop
	Circle:
		TNT1 A 8 A_SpawnItemEx ("SnowParticle", Random(1500, -1500), 0, 0, random(-1.0, 1.0), random(-1.0, 1.0), random(-1.0, -3.0), Random(0, 360), 128, Args[1])
		Loop
	Unsighted:
		TNT1 A 1
		Goto Spawn
	}
}

///////////////////////////
//			 //
//     Spectators        //
//			 //
///////////////////////////

actor WaveMarine 10001
{
  Game Doom
  radius 20
  height 56
  +SOLID
  states
  {
  Spawn:
    MRNW AB 10
    loop
  }
}

actor HeadBangMarine 10002
{
  Game Doom
  radius 20
  height 56
  +SOLID
  states
  {
  Spawn:
    MRNH ABCB 7
    loop
  }
}

actor FistMarine 10003
{
  Game Doom
  radius 20
  height 56
  +SOLID
  states
  {
  Spawn:
    MRNC AB 8
    loop
  }
}

ACTOR BoundPlayerShootable1 30030
{
  Radius 16
  Height 40
  Health 1
  Mass 9001
  DeathSound "bound/death"
  +SOLID
  +SHOOTABLE
  States
  {
  Spawn:
    BDOM A 6
    Loop
  Death:
    BDOM B 6 A_Scream
    BDOM CD 6
	BDOM E -1
	Stop
  }
}

ACTOR BoundPlayerShootable2 30031
{
  Radius 16
  Height 40
  Health 1
  Mass 9001
  DeathSound "bound/death"
  +SOLID
  +SHOOTABLE
  States
  {
  Spawn:
    BDOM F 6
    Loop
  Death:
    BDOM G 6 A_Scream
    BDOM HI 6
	BDOM J -1
	Stop
  }
}

ACTOR BoundPlayer1 : BoundPlayerShootable1 30032
{
  -SHOOTABLE
}

ACTOR BoundPlayer2 : BoundPlayerShootable2 30033
{
  -SHOOTABLE
}

Actor PSXBloodyChain 30034
{
	Radius 16
	Height 88
	+NOGRAVITY
	+SPAWNCEILING
	States
	{
	Spawn:
		BLCH A -1
		Stop
	}
}

Actor DeadMaleScientist 30035
{
  Radius 32
  Height 16
  States
  {
  Spawn:
    MSCI N -1
    Loop
  }
}

Actor DeadFemaleScientist 30036
{
  Radius 32
  Height 16
  States
  {
  Spawn:
    FSCI N -1
    Loop
  }
}

ACTOR Meat6 30037
{
  Game Doom
  Radius 16
  Height 52
  +SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    GOR6 A -1
    Stop
  }
}

ACTOR Meat7 30038
{
  Game Doom
  Radius 16
  Height 52
  +SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    GOR7 A -1
    Stop
  }
}

ACTOR Meat8 30039
{
  Game Doom
  Radius 16
  Height 52
  +SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    GOR8 A -1
    Stop
  }
}

ACTOR CTHangPlayer1 30040
{
  Radius 16
  Height 88
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    HANP A -1
    Stop
  }
}

ACTOR CTHangPlayer2 30041
{
  Radius 16
  Height 88
  +SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    HANP B -1
    Stop
  }
}

ACTOR ImpaledScientist 30042
{
  Radius 20
  Height 40
  +SOLID
  States
  {
  Spawn:
    POLS A -1
    Stop
  }
}

ACTOR ImpaledFScientist 30043
{
  Radius 16
  Height 40
  +SOLID
  States
  {
  Spawn:
    POFS A -1
    Stop
  }
}

ACTOR CrowWander3L 30009
{
  Mass 99999
  Health 999
  Radius 3
  Height 3
  Scale 0.7
  Monster
  Alpha 1
  -ISMONSTER
  -COUNTKILL
  +THRUACTORS
  +NOTARGET
  +NODAMAGETHRUST
  +FLOORHUGGER
  +FLOORCLIP
  -CANUSEWALLS
  -NOGRAVITY
  +NOBLOOD
  +NODAMAGE
  PainChance 255
  States
  {
  Spawn: 
     TNT1 A 0
	 TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_Stop
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
	 TNT1 A 0 A_StopSound(5)
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",0)
     CRW1 A 25
	 TNT1 A 0 A_Jump(60,"LookDown","Peck","ForwardLook")
	 TNT1 A 0 A_Jump(15,"Caw")
	 TNT1 A 0 A_Jump(10,"WanderFly")
	 Loop
  See:
     TNT1 A 0 A_StopSound(5)
	 TNT1 A 0 A_FaceTarget
	 TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",0)
     CRW1 A 25
	 TNT1 A 0 A_Jump(60,"LookDown","Peck","ForwardLook")
	 TNT1 A 0 A_Jump(15,"Caw")
	 TNT1 A 0 A_Jump(10,"WanderFly")
	 Goto Spawn	 
  LookDown:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
     CRW1 C 5
	 TNT1 A 0 A_Jump(60,"Spawn","Peck")
	 Loop	
  Peck:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
     CRW1 C 5
	 CRW1 EC 2
	 TNT1 A 0 A_Jump(60,"Spawn","LookDown")
	 Loop
  Caw:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
	 TNT1 A 0 A_Jump(60,4) //To play one caw on occasion.
	 TNT1 A 0 A_PlaySound("CRWCAW1",6,0.3,0)
     CRW1 A 12
	 CRW1 M 6
	 Goto Spawn
	 TNT1 A 0 A_PlaySound("CRWCAW3",6,0.3,0)
	 CRW1 A 12
	 Goto Spawn
  ForwardLook:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
     CRW1 G 16
	 TNT1 A 0 A_Jump(120,"Spawn")
	 Loop	 
  WanderFly:
     TNT1 A 0
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",0)
	 TNT1 A 0 ThrustThing(random(0,360), random(4,8), 0, 0)
	 CRW1 IK 2
	 TNT1 A 0 ThrustThingZ(0,random(4,8),0,1)
	 TNT1 A 0 A_Jump(20,"Flight")
	 Goto WanderFly+4
  Flight:
     TNT1 A 0
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 ThrustThing(random(0,360), random(3,6), 0, 0)
	 CRW1 IK 2
	 TNT1 A 0 A_Jump(35,"FlyDown")
	 Goto Flight+2
  FlyDown:	 
	 TNT1 A 0 A_Stop
	 CRW1 IK 2
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 ThrustThing(random(0,360), random(3,6), 0, 0)
	 TNT1 A 0 ThrustThingZ(0,-2,0,1)
	 TNT1 A 0 A_CheckFloor("Spawn")
	 Goto FlyDown+1
  Pain:
     TNT1 A 0
	 TNT1 A 0 A_Jump(25,2)
	 TNT1 A 0 A_PlaySound("CRWCAW2",6,0.4,0)
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",0)
	 TNT1 A 0 ThrustThing(random(0,360), random(6,12), 0, 0)
	 CRW1 IK 2
	 TNT1 A 0 ThrustThingZ(0,random(12,20),0,1)
	 TNT1 A 0 A_FadeOut(0.1)
	 Goto Pain+6
  }
}

ACTOR CrowWander3R 30010
{
  Mass 99999
  Health 999
  Radius 3
  Height 3
  Scale 0.7
  Monster
  Alpha 1
  -ISMONSTER
  -COUNTKILL
  +THRUACTORS
  +NOTARGET
  +NODAMAGETHRUST
  +FLOORHUGGER
  +FLOORCLIP
  -CANUSEWALLS
  -NOGRAVITY
  +NOBLOOD
  +NODAMAGE
  PainChance 255
  States
  {
  Spawn: 
     TNT1 A 0
	 TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_Stop
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
	 TNT1 A 0 A_StopSound(5)
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",0)
     CRW1 B 25
	 TNT1 A 0 A_Jump(60,"LookDown","Peck","ForwardLook")
	 TNT1 A 0 A_Jump(15,"Caw")
	 TNT1 A 0 A_Jump(10,"WanderFly")
	 Loop
  See:
     TNT1 A 0 A_StopSound(5)
	 TNT1 A 0 A_FaceTarget
	 TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",0)
     CRW1 B 25
	 TNT1 A 0 A_Jump(60,"LookDown","Peck","ForwardLook")
	 TNT1 A 0 A_Jump(15,"Caw")
	 TNT1 A 0 A_Jump(10,"WanderFly")
	 Goto Spawn		 
  LookDown:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
     CRW1 F 5
	 TNT1 A 0 A_Jump(60,"Spawn","Peck")
	 Loop	
  Peck:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
     CRW1 D 5
	 CRW1 FD 2
	 TNT1 A 0 A_Jump(60,"Spawn","LookDown")
	 Loop
  Caw:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
	 TNT1 A 0 A_Jump(60,4) //To play one caw on occasion.
	 TNT1 A 0 A_PlaySound("CRWCAW1",6,0.3,0)
     CRW1 B 12
	 CRW1 N 6
	 Goto Spawn
	 TNT1 A 0 A_PlaySound("CRWCAW3",6,0.3,0)
	 CRW1 B 12
	 TNT1 A 0
	 Goto Spawn
  ForwardLook:
     TNT1 A 0 A_JumpIfInventory("CrowGroupFlee",1,"Pain")
	 TNT1 A 0 A_LookEx(LOF_NOSIGHTCHECK ,0,310,800,0,"Pain")
     CRW1 H 16
	 TNT1 A 0 A_Jump(120,"Spawn")
	 Loop	 
  WanderFly:
     TNT1 A 0
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",0)
	 TNT1 A 0 ThrustThing(random(0,360), random(4,8), 0, 0)
	 CRW1 JL 2
	 TNT1 A 0 ThrustThingZ(0,random(4,8),0,1)
	 TNT1 A 0 A_Jump(20,"Flight")
	 Goto WanderFly+4
  Flight:
     TNT1 A 0
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 ThrustThing(random(0,360), random(3,6), 0, 0)
	 CRW1 JL 2
	 TNT1 A 0 A_Jump(35,"FlyDown")
	 Goto Flight+2
  FlyDown:	 
	 TNT1 A 0 A_Stop
	 CRW1 JL 2
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 ThrustThing(random(0,360), random(3,6), 0, 0)
	 TNT1 A 0 ThrustThingZ(0,-2,0,1)
	 TNT1 A 0 A_CheckFloor("Spawn")
	 Goto FlyDown+1
  Pain:
     TNT1 A 0
	 TNT1 A 0 A_Jump(25,2)
	 TNT1 A 0 A_PlaySound("CRWCAW2",6,0.4,0)
	 TNT1 A 0 A_PlaySound("CRWFLP",5,0.3,1)
	 TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
	 TNT1 A 0 A_ChangeFlag("FLOORHUGGER",0)
	 TNT1 A 0 ThrustThing(random(0,360), random(6,12), 0, 0)
	 CRW1 JL 2
	 TNT1 A 0 ThrustThingZ(0,random(12,20),0,1)
	 TNT1 A 0 A_FadeOut(0.1)
	 Goto Pain+6
  }
}

Actor CrowGroupFlee : Inventory 
{ 
Inventory.MaxAmount 1 
}

actor CaveStalagmiteFloor 30046
{
	//$Category Decoration
Radius 24
Height 52
+SOLID
States
{
Spawn:
CAV3 A -1
Loop
}
}

actor CaveStalagmiteCeiling1 30047
{
	//$Category Decoration
Radius 24
Height 52
-SOLID
+SPAWNCEILING
+NOGRAVITY
States
{
Spawn:
CAV1 A -1
Loop
}
}

actor CaveStalagmiteCeiling2 30048
{
	//$Category Decoration
Radius 24
Height 52
+SOLID
+SPAWNCEILING
+NOGRAVITY
States
{
Spawn:
CAV2 A -1
Loop
}
}

ACTOR IceStalagmiteLarge 10430
{
  Radius 24
  Height 128
  +SOLID
  States
  {
  Spawn:
    ICES A -1
    Stop
  }
}

ACTOR IceStalagmiteSmall1 10431
{
  Radius 16
  Height 32
  +SOLID
  States
  {
  Spawn:
    ICES B -1
    Stop
  }
}

ACTOR IceStalagmiteSmall2 10432
{
  Radius 16
  Height 32
  +SOLID
  States
  {
  Spawn:
    ICES C -1
    Stop
  }
}

ACTOR TLamp1 12850
{
  Radius 16
  Height 80
  +SOLID
  States
  {
  Spawn:
    LAMT A -1 Bright
    Stop
  }
}

ACTOR TLamp2 12851
{
  Radius 16
  Height 60
  +SOLID
  States
  {
  Spawn:
    LAMT B -1 Bright
    Stop
  }
}

ACTOR TLamp3 12852
{
  Radius 16
  Height 70
  +SOLID
  States
  {
  Spawn:
    LAMT C -1 Bright
    Stop
  }
}

// -------------------
// --Trisk's Section--
// -------------------

//test
// -------------------
// ----Decorations----
// -------------------

// Plant
ACTOR ATNiceplant 10512
{
    height 32
    radius 1
    +SOLID
    scale 0.45
    states
    {
    Spawn:
      PLMT A -1
      Stop
    }
}

// Pail
ACTOR ATPail 10514
{
    height 22
    radius 20
    +SOLID
    scale 0.13
    states
    {
    Spawn:
      PAIL A -1
      Stop
    }
}

// Broom
ACTOR ATBroom 10513
{
    height 54
    radius 1
    +SOLID
    scale 0.2
    states
    {
    Spawn:
       BROM A -1
       Stop
    }
}

// Gunk for filtration system
ACTOR ATGunkpiece 10515
{
    height 1
    radius 1
    +SOLID
    states
    {
    Spawn:
       GNKA A -1
       Stop
    }
}

// Gunk for filtration system
ACTOR ATGunkchunk 10516
{
    height 1
    radius 1
    +SOLID
    states
    {
    Spawn:
       GNKB A -1
       Stop
    }
}

// Gunk for filtration system
ACTOR ATGunkbits 10517
{
    height 1
    radius 1
    +SOLID
    states
    {
    Spawn:
       GNKC A -1
       Stop
    }
}

//Microscope sprite for decoration in the analysis lab
ACTOR ATmicroscope 10518
{
    height 12
    radius 4
    scale 0.08
    +SOLID
    states
    {
    Spawn:
       MICR A -1
       Stop
    }
}

//Beaker sprite for decoration in the analysis lab
ACTOR ATBeaker 10519
{
    height 1
    radius 1
    +SOLID
    scale .08
    states
    {
    Spawn:
       BEAK A -1
       Stop
    }
}

//Beaker sprite for decoration in the analysis lab
ACTOR ATBeakerset 10520
{
    height 1
    radius 1
    +SOLID
    scale .08
    states
    {
    Spawn:
       BEAC A -1
       Stop
    }
}

//Beaker sprite for decoration in the analysis lab
ACTOR ATBeakersetwhite 10521
{
    height 1
    radius 1
    +SOLID
    scale .065
    states
    {
    Spawn:
       BEK2 A -1
       Stop
    }
}

//Lab equipment
ACTOR ATLabEquipment 10522
{
	height 32
	radius 12
	+SOLID
	scale .2
	states
	{
	Spawn:
	   LABS A -1
	   Stop
	}
}

//Desk lamp for lab area
ACTOR ATDeskLamp 10523
{
	height 1
	radius 1
	+SOLID
	scale 0.15
	states
	{
	Spawn:
	   DLMP A -1
	   Stop
	}
}

//Skull on serated spear. My first attempt at an ANIMATED sprite. Stupid Zdoom wiki is so
//danged VAGUE (Doesn't define RANGES of any of the various tags and functions, and gives few 
//examples of how to use a line of code.
//That is the SUCKIEST wiki I've ever seen...I'm having to guess at the spawn syntax meanings,
//where to stick various bits of code...and a whole lot more.)
//Let's see if I'm right, and I'll define it at the end.

ACTOR ATSpearSkull 10524
{
	height 64
	radius 11
	health 50
	mass 5000
	gravity 2.0
	deathheight 32
	deathsound SkullCrack
	+SOLID
	+SHOOTABLE
	states
	{
	Spawn:
	   SKSP A 105
	   SKSP BCDEFGHIJKLM 2
	   SKSP NO 5
	   loop
	Death:
	   SKSP P 5 A_Scream
	   SKSP QRSTU 5
	   SKSP V 4
	   SKSP W -1
	   stop
	}
}

//OK! That worked well, so I'll describe what this is doing.
//Height and radius numbers are what give the decoration its size for shooting at it as a 
//target. They are both in the same units that Doom uses.

//Health is, I BELIEVE (but am not sure) measured in the same units as your health bar.
//So this item has a health of 50. That means one good shotgun blast should break apart the skull.

//Mass is TOTALLY rediculous in the wiki. The wiki states that "default mass is 100."
//Thats great...so what is the minimum? What is the maximum? Is this affected by the
//Gravity arguement? Hey wiki makers! YOU SUCK! I set it to 5000, and it seems to keep the
//SpearSkull from moving around when it is shot.

//Gravity is set to double here in hopes that it will help affect the mass to make the decoration
//less moveable. It SURE WOULD BE NICE IF THE CRAPPY WIKI EXPLAINED IF THESE TWO INTERACTED,
//don't you think?

//Deathheight describes in units how high the spear is after its "death" animation. e.g. The
//top of it breaking off, so it realistically blocks you and now can be jumped over.

//Deathsound defines what sound to play. The sound must be named and pointed in SNDINFO or you
//won't get a sound. You can't just give the name of a .wav file here. Go look at the SNDINFO
//to see what I mean.

//+SOLID makes it so you can't walk through the decoration.

//+SHOOTABLE makes it so the decoration bleeds and "dies." Without this bullets will pass
//right through it.

//states defines what sprites to display for each action the decoration can take.
//Since this IS just a simple decoration that is destroyable, there are only two states:
//1 is it just sitting there decorating, and 2 is when you shoot it and it breaks up.
//The "Spawn" commands are state number 1. SKSP is the FIRST FOUR letters of the sprite frame.
//THAT IS IMPORTANT! Sprite frame filenames MUST only use FOUR LETTERS for their identification!
//The rest of the sprite name is data that tells the engine how to display the frames!
//In my case, the sprites are named "SKSPA0" thru "SKSPW0."
//So the first four letters, "SKSP" names the sprite. The next letter which is "A" thru "W" is
//basically alpha for the frame numbers. A is the first frame and W is the last in my little
//animation. the "0" at the end of the sprite name is the direction. You change this for multi-
//sided sprites, e.g. the monsters. Since I have no art tallent, this sprite has only one
//direction, and that is always facing you. Hence, it is 0. If you want help with sprites that
//have directions, I'm not the one to ask. ALL my sprites will end in 0.

//OK, so now that I've explained that, the first line under the Spawn: command is,
//SKSP A 105. This tells it to display Sprite SKSP, frame A, for 105 time ticks. (35 = 1 second)

//Line two is SKSP BCDEFGHIJKLM 2. This tells the engine to display Sprite SKSP frames B thru M,
//waiting 2 ticks in between each frame. This is the blood drop oozing off the skull.
//The third line is SKSP NO 5. This displays frames N and O for 5 ticks.

//Final line, "loop," causes Doom to restart this little code at the beginning, so the blood
//periodically drips off the skull. Neat, huh?

//OK, the next section of code is the "Death:" section. This runs just like the first code, with
//the exception of the first and last two lines. Let's look at those.

//OK, line one is SKSP P 5 A_Scream. OK, the first part makes sense...display sprite SKSP
//frame P for 5 ticks...but what is A_Scream? Well, Doom can play sounds during any frame
//of a decorations animation. This tells the engine to play the monster's death sound
//effect, which we declared earlier in this code. Easy, huh? The Wiki has a list of the
//sound calls you can make...but I assume you could call any sound you want without using one of
//these specific calls that id programmed in. I haven't tested that though, so try at your
//own risk.

//The second to the last line, SKSP W -1 is a little different in that it has a -1 instead of
//number of ticks. This simply tells the engine to display this frame indefinitely. I have no
//idea what would happen if you didn't do this...the sprite would dissappear, perhaps?

//Anyway, the last line of code is "stop." This is pretty easy to understand, it stops running
//code on this decoration. You've blown it apart, now there just isn't anything else you can
//Do with it.

//OK, that was verbose, but hopefully it will help any Doom newbies out there to be able to
//understand this a little faster than I did, since I had to dick around with it until I got
//it working due to the DOA wiki of moronitude. Here's to programmers who don't document their
//programs. (Looking at ZDoom's creators)

//If you want an example of an EXCELLENTLY documented program, take a look at AGS, the Adventure
//Game creation System. www.bigbluecup.com
//It puts Zdoom's lack of documentation and examples to shame. If you want people to be able to
//USE the program you made, you really aught to document how to use it, don't you think???
//End of rant.




//Mop for storage area
ACTOR ATMop 10525
{
	height 128
	radius 8
	+SOLID
	scale .2
	states
	{
	Spawn:
	   MOPS A -1
	   Stop
	}
}

//Mop Bucket for storage area
ACTOR ATMopBucket 10526
{
	height 32
	radius 16
	+SOLID
	scale 0.15
	states
	{
	Spawn:
	   MOPB A -1
	   Stop
	}
}


//Beer can. For where the losers are. I'm straight edge. :)
ACTOR ATBeercan 10527
{
	height 6
	radius 6
	+CANPASS
	scale 0.5
	states
	{
	Spawn:
	   BCAN A -1
	   Stop
	}
}

//Pipe wrench. decoration for places where stuff goes.
ACTOR ATPipeWrench 10528
{
	height 2
	radius 12
	+SOLID
	scale .75
	states
	{
	Spawn:
	   RNCH A -1
	   Stop
	}
}

//Standard White Lense Flair. Use to add some juicy GL goodness to the map

ACTOR ATWhiteflare 10529
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.25
	alpha 0.25
	states
	{
	Spawn:
		FLR1 A -1
		Stop
	}
}

ACTOR ATWhiteflareBIG 10530
{
	height 1
	Radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.4
	alpha 0.25
	states
	{
	Spawn:
		FLR1 A -1
		Stop
	}
}

ACTOR ATRedflare 10531
{
	height 1
	Radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.25
	alpha 0.25
	states
	{
	Spawn:
		FLR2 A -1
		Stop
	}
}

ACTOR ATWhiteflareSMALL 10532
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.1
	alpha 0.25
	states
	{
	Spawn:
		FLR1 A -1
		Stop
	}
}

ACTOR ATBlueflare 10533
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.25
	alpha 0.4
	states
	{
	Spawn:
		FLR3 A -1
		Stop
	}
}

ACTOR ATYellowflare 10534
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.06
	alpha 0.4
	states
	{
	Spawn:
		FLR4 A -1
		Stop
	}
}

ACTOR ATEvilCandle 10535
{
	height 1
	radius 1
	-CANPASS
	scale 0.3
	states
	{
	Spawn:
		CNDL ABADCD 5
		loop
	}
}

//bobbing blue flare for CPU room.
ACTOR ATBlueflareTINY 10536
{
	height 1
	radius 1
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+FLOATBOB
	renderstyle add
	scale 0.03
	alpha 1.0
	states
	{
	Spawn:
		FLR3 A -1
		Stop
	}
}

//Big fancy shaped ivy for centerpiece of Hydroponics
ACTOR ATBigIvyDecoration 10539
{
	height 72
	radius 16
	+SOLID
	scale 0.5
	states
	{
	Spawn:
		TRE3 A -1
		Stop
	}
}

//Glowing floating UAC hologram logo.
ACTOR ATUACfloatinglogo 10540
{
	height 64
	radius 32
	-SOLID
	renderstyle add
	alpha 1.0
	scale 0.3
	states
	{
	Spawn:
		UAC1 ABCDEFGHIJKLMNOPQRSTU 2
		UAC1 TSRQPONMLKJIHGFEDCBA 2
		loop
	}
}

//Hologram light distribution
ACTOR ATHologramLight 10541
{
	height 64
	radius 32
	-SOLID
	renderstyle add
	alpha 0.7
	scale 0.4
	states
	{
	Spawn:
		HOLO ABCB 1
		loop
	}
}

//Pretty bush for hydroponics
ACTOR ATBushyShrub 10542
{
	height 32
	radius 6
	+SOLID
	scale 0.4
	states
	{
	Spawn:
		TRE4 A -1
		Stop
	}
}

//Spindly grass for Hydroponics
ACTOR ATGrassstalks 10543
{
	height 1
	radius 1
	-SOLID
	scale 0.20
	states
	{
	Spawn:
		GRS1 A -1
		Stop
	}
}

//Cattails for Hydroponics
ACTOR ATcattails1 10544
{
	height 1
	radius 1
	-SOLID
	scale 0.25
	states
	{
	Spawn:
		CAT1 A -1
		Stop
	}
}

//bushy grass for Hydroponics
ACTOR ATGrasstuft 10545
{
	height 1
	radius 1
	-SOLID
	scale 0.35
	states
	{
	Spawn:
		GRS2 A -1
		Stop
	}
}

//Pretty bush for hydroponics MIRRORED
ACTOR ATBushyShrubMIRROR 10546
{
	height 32
	radius 6
	+SOLID
	scale 0.41
	states
	{
	Spawn:
		TRE4 B -1
		Stop
	}
}

//Broccoli looking thing
ACTOR ATBroccoli 10547
{
	height 16
	radius 8
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		TRE5 A -1
		Stop
	}
}

//Broccoli looking thing MIRRORED
ACTOR ATBroccoliMIRRORED 10548
{
	height 16
	radius 8
	+SOLID
	scale 0.27
	states
	{
	Spawn:
		TRE5 B -1
		Stop
	}
}

//Broccoli looking thing BABY
ACTOR ATBroccoliTINY 10549
{
	height 1
	radius 1
	+SOLID
	scale 0.1
	states
	{
	Spawn:
		TRE5 A -1
		Stop
	}
}

//Spice looking thing 1
ACTOR ATSpiceplant1 10550
{
	height 16
	radius 8
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		TRE6 A -1
		Stop
	}
}

//Spice looking thing 2
ACTOR ATSpiceplant2 10551
{
	height 16
	radius 8
	+SOLID
	scale 0.31
	states
	{
	Spawn:
		TRE6 B -1
		Stop
	}
}

//Viney Scrub 1
ACTOR ATScrubPlant1 10552
{
	height 16
	radius 8
	+SOLID
	scale 0.30
	states
	{
	Spawn:
		TRE7 A -1
		Stop
	}
}

//Viney Scrub 2
ACTOR ATScrubPlant2 10553
{
	height 16
	radius 8
	+SOLID
	scale 0.32
	states
	{
	Spawn:
		TRE7 B -1
		Stop
	}
}

//Cat Tail 2
ACTOR ATCattail2 10554
{
	height 16
	radius 8
	-SOLID
	scale 0.3
	states
	{
	Spawn:
		CAT2 A -1
		Stop
	}
}

//Cat Tail 2 MIRROR
ACTOR ATCattail2MIRROR 10555
{
	height 16
	radius 8
	-SOLID
	scale 0.2
	states
	{
	Spawn:
		CAT2 B -1
		Stop
	}
}

//Yummy Carot of goodness(tm)
ACTOR ATCarrot 10556
{
	height 8
	radius 1
	-SOLID
	scale 0.13
	states
	{
	Spawn:
		CAR1 A -1
		Stop
	}
}

//Yummy Carot of goodness(tm) THE SEQUEL
ACTOR ATCarrot2 10557
{
	height 8
	radius 1
	-SOLID
	scale 0.07
	states
	{
	Spawn:
		CAR1 B -1
		Stop
	}
}

//Crunchy fresh Celery. :9
ACTOR ATCelery 10558
{
	height 8
	radius 1
	-SOLID
	scale 0.20
	states
	{
	Spawn:
		CEL2 A -1
		Stop
	}
}

//Crunchy fresh Celery MIRRORED
ACTOR ATCeleryMIRROR 10559
{
	height 8
	radius 1
	-SOLID
	scale 0.22
	states
	{
	Spawn:
		CEL2 B -1
		Stop
	}
}

//Single stalk of yummy crisp Celery.
ACTOR ATCelerystalk 10560
{
	height 8
	radius 1
	-SOLID
	scale 0.20
	states
	{
	Spawn:
		CEL1 A -1
		Stop
	}
}

//Tomato plant
ACTOR ATTomato 10561
{
	height 8
	radius 1
	-SOLID
	scale 0.30
	states
	{
	Spawn:
		TOMA A -1
		Stop
	}
}

//Tomato plant MIRRORED
ACTOR ATTomatoMIRROR 10562
{
	height 8
	radius 1
	-SOLID
	scale 0.34
	states
	{
	Spawn:
		TOMA B -1
		Stop
	}
}

//Bunch o' Beets!
ACTOR ATBeets 10563
{
	height 8
	radius 1
	-SOLID
	scale 0.30
	states
	{
	Spawn:
		BEET A -1
		Stop
	}
}

//Bunch o' Beets! MIRRORED
ACTOR ATBeetsMIRROR 10564
{
	height 8
	radius 1
	-SOLID
	scale 0.34
	states
	{
	Spawn:
		BEET B -1
		Stop
	}
}

//Chemically bag of fetilizer 1
ACTOR ATFertilizer1 10565
{
	height 16
	radius 12
	+SOLID
	scale 0.24
	states
	{
	Spawn:
		FERT A -1
		Stop
	}
}

//Chemically bag of fetilizer 2
ACTOR ATFertilizer2 10566
{
	height 16
	radius 12
	+SOLID
	scale 0.22
	states
	{
	Spawn:
		FERT B -1
		Stop
	}
}

//Chemically bag of fetilizer 3
ACTOR ATFertilizer3 10567
{
	height 8
	radius 8
	+SOLID
	scale 0.34
	states
	{
	Spawn:
		FERT C -1
		Stop
	}
}

//Fancy topiary to show off the class of this facility
ACTOR ATTopiarySpiral 10569
{
	height 128
	radius 32
	+SOLID
	scale 0.2
	states
	{
	Spawn:
		TOPI A -1
		Stop
	}
}


//Another fancy Topiary to make it extra pretty.
ACTOR ATTopiaryCone 10570
{
	height 128
	radius 32
	+SOLID
	scale 0.2
	states
	{
	Spawn:
		TOPI B -1
		Stop
	}
}

//Light globe for making fancy lights in Hydroponics
ACTOR ATHYDROLightGlobe 10571
{
	Height 14
	radius 14
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	scale 0.4
	states
	{
	Spawn:
		LGT1 A -1
		Stop
	}
}

//Hazy white flair for Hydroponics' diffuse lights. can look weird due to a GZDoom glitch.
ACTOR ATWhiteHydroFlare 10572
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	-SPAWNCEILING
	-Shootable
	renderstyle add
	alpha 0.3
	scale .2
	states
	{
	Spawn:
		FLR5 A -1
		Stop
	}
}

//Tree for welcoming room
ACTOR ATMiniTree 10573
{
	height 64
	radius 44
	+SOLID
	scale .5
	states
	{
	Spawn:
		TRE8 A -1
		Stop
	}
}

//Bottle for on shelves in Hydroponics
ACTOR ATBlueBottle 10574
{
	height 8
	radius 4
	+SOLID
	scale .1
	states
	{
	Spawn:
		BOTL A -1
		Stop
	}
}

//Oil can for use in hydroponics
ACTOR ATOilCan 10575
{
	height 8
	radius 6
	+SOLID
	scale .1
	states
	{
	Spawn:
		OILC A -1
		Stop
	}
}

//Ceiling hanging chained cagelight. For use in sewery places.
ACTOR ATCeilingCageLight 10576
{
	height 40
	radius 1
	-SOLID
	+SPAWNCEILING
	+NOGRAVITY
	scale .33
	states
	{
	Spawn:
		CELI A -1
		Stop
	}
}

//Leaves for attempt at Oblivion style particle tree
ACTOR ATLeaves 10577
{
	height 8
	radius 8
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	scale 0.4
	states
	{
	Spawn:
		BRNC A -1
		Stop
	}
}

//Blue roses for Hydroponics Garden
ACTOR ATRoses 10578
{
	height 2
	radius 8
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ1 A -1
		Stop
	}
}

//Blue roses for Hydroponics Garden
ACTOR ATRosesLoaded 10579
{
	height 2
	radius 8
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ2 A -1
		Stop
	}
}

//Maroon flower bush for Hydroponics Garden
ACTOR ATMaroonFlowrBush 10580
{
	height 3
	radius 8
	+SOLID
	scale 0.25
	states
	{
	Spawn:
		ROZ3 A -1
		Stop
	}
}

//Pink flower bush for Hydroponics Garden
ACTOR ATPinkFlowrBush 10581
{
	height 3
	radius 8
	+SOLID
	scale 0.25
	states
	{
	Spawn:
		ROZ4 A -1
		Stop
	}
}

//Orange flowers for Garden
ACTOR ATOrangeFlowers1 10582
{
	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ5 A -1
		Stop
	}
}

//More orange flowers for the Garden
ACTOR ATOrangeFlowers2 10583
{
	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ6 A -1
		Stop
	}
}

//Yellow flowers for the Garden. You know the drill.
ACTOR ATYellowFlowers 10584
{
	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ7 A -1
		Stop
	}
}

//Pine needles for attempt at Oblivion style particle tree
ACTOR ATPineNeedles 10585
{
	height 8
	radius 8
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	scale 0.2
	states
	{
	Spawn:
		PINE B -1
		Stop
	}
}

//Christmas Lights for Park.
ACTOR ATChristmaslight 10586
{
	height 1
	radius 1
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	scale 0.05
	states
	{
	Spawn:
		XMAS A -1
		Stop
	}
}

//Hazy TINY white flair for Christmas tree lights
ACTOR ATWhiteChristmasFlare 10587
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	-SPAWNCEILING
	renderstyle add
	alpha 0.5
	scale .09
	states
	{
	Spawn:
		FLR5 A -1
		Stop
	}
}

//Streetlamps to go along the path in the park
ACTOR ATStreetlamp 10588
{
	height 80
	radius 2
	+SOLID
	scale 0.5
	states
	{
	Spawn:
		SLAM A -1
		Stop
	}
}

//Let's try adding some vague fog effects. It might add nice ambiance to a couple areas in Hydroponics.
//I'll do it the same way modern games do it, a forced XY billboard additive sprite. I can't animate it
//to smoothly roll like modern games do, though...the original wave effect would work perfectly if it ran
//a whole bunch slower than it does...I hope they'll someday add controlls so the mapper can set the speed
//of the texture/sprite deformation. Now that I think of it, can you even apply that to sprites? Prolly not.
//add that too, guys!
ACTOR ATFog1 10589
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+NOTONAUTOMAP
	renderstyle add
	alpha 0.4
	states
	{
	Spawn:
		FOG1 A -1
		Stop
	}
}

ACTOR ATFog2 10590
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+NOTONAUTOMAP
	renderstyle add
	alpha 0.5
	states
	{
	Spawn:
		FOG2 A -1
		Stop
	}
}

ACTOR ATFog3 10591
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+NOTONAUTOMAP
	renderstyle add
	alpha 0.5
	states
	{
	Spawn:
		FOG3 A -1
		Stop
	}
}

//Gross hanging rotting meat chunk
ACTOR ATHangingmeatyuck 10592
{
	height 48
	radius 1
	+SPAWNCEILING
	+NOGRAVITY
	-SOLID
	scale 0.35
	states
	{
	Spawn:
		MEAT A -1
		Stop
	}
}

//Gross vaguely leg-like hanging rotting meat chunk
ACTOR ATHangingmeatlegs 10593
{
	height 56
	radius 1
	+SPAWNCEILING
	+NOGRAVITY
	-SOLID
	scale 0.35
	states
	{
	Spawn:
		MEAT B -1
		Stop
	}
}

//Dead potted trees for radiation area.
ACTOR ATDeadtreeri 10594
{
	height 64
	radius 4
	+SOLID
	scale 0.25
	states
	{
	Spawn:
		DEDT A -1
		Stop
	}
}

//Dead potted trees for radiation area.
ACTOR ATDeadtreele 10595
{
	height 64
	radius 4
	+SOLID
	scale 0.25
	states
	{
	Spawn:
		DEDT B -1
		Stop
	}
}

//Dead leaves to scatter around the dead trees in the radiation area..
ACTOR ATDeadLeaf1 10596
{
	height 1
	radius 1
	-SOLID
	+FORCEXYBILLBOARD
	scale 0.14
	states
	{
	Spawn:
		LEAF A -1
		Stop
	}
}

//Dead leaves to scatter around the dead trees in the radiation area..
ACTOR ATDeadLeaf2 10597
{
	height 1
	radius 1
	-SOLID
	+FORCEXYBILLBOARD
	scale 0.16
	states
	{
	Spawn:
		LEAF B -1
		Stop
	}
}

//green fog for nukage
ACTOR ATFog4 10598
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+NOTONAUTOMAP
	renderstyle add
	alpha 0.25
	states
	{
	Spawn:
		FOG4 A -1
		Stop
	}
}

//Garbage yuckness for bathrooms
ACTOR ATGarbage1 10599
{
	height 1
	radius 1
	-CANPASS
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	scale 0.4
	states
	{
	Spawn:
		GARB A -1
		Stop
	}
}

//Garbage yuckness for bathrooms
ACTOR ATGarbage2 10600
{
	height 1
	radius 1
	-CANPASS
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	scale 0.4
	states
	{
	Spawn:
		GARB B -1
		Stop
	}
}

//Nuke green flair for isotopes in the labs in Hydroponics
ACTOR ATNukeFlair 10601
{
	height 1
	radius 1
	-CANPASS
	-SOLID
	+NOGRAVITY
	+FORCEXYBILLBOARD
	renderstyle add
	alpha 0.25
	scale 0.125
	states
	{
	Spawn:
		FLR6 A -1
		Stop
	}
}

//Adding in a few more flowers for the garden and a few other places. These flowers
//all come from Plant Tycoon by the company called Last Day of Work.
ACTOR ATBladeLeaf 10602
{

	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ8 A -1
		Stop
	}
}

//Adding in a few more flowers for the garden and a few other places.
ACTOR ATBlueWhisper 10603
{

	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZ9 A -1
		Stop
	}
}

//Adding in a few more flowers for the garden and a few other places.
ACTOR ATPinkGrass 10604
{

	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZA A -1
		Stop
	}
}

//Adding in a few more flowers for the garden and a few other places.
ACTOR ATPinkFlwrTower 10605
{

	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZB A -1
		Stop
	}
}

//Adding in a few more flowers for the garden and a few other places.
ACTOR ATNoxMultiflora 10607
{

	height 3
	radius 4
	+SOLID
	scale 0.3
	states
	{
	Spawn:
		ROZC A -1
		Stop
	}
}

ACTOR ATfrayedwires 10617
{
	height 1
	radius 1
	-SOLID
	scale .5
	states
	{
	Spawn:
		AWIR A -1
		Stop
	}
}

ACTOR ATfrayedwires2 10618
{
	height 1
	radius 1
	-SOLID
	scale .35
	states
	{
	Spawn:
		AWIR B -1
		Stop
	}
}

ACTOR ATfrayedwires3 10619
{
	height 1
	radius 1
	-SOLID
	scale .25
	states
	{
	Spawn:
		AWIR C -1
		Stop
	}
}

//higher res skull-on-a-red-pillar action!
ACTOR ATSkullColumn : SkullColumn replaces SkullColumn
{
	Game Doom
	Radius 16
	Height 40
	ProjectilePassHeight -16
	+SOLID
	scale .5
	States
	{
	Spawn:
		SCOL A -1
		Stop
	}
}


//Another interactive Decorate attempt. This time I'm trying to replace the health bonus beaker. I'm just cutting
//and pasting from the GZDoom Decorate information files in the GZDoom.pk3. I've made changes where appropriate.
ACTOR ATHealthBonus : HealthBonus replaces HealthBonus
{
	Game Doom
	SpawnID 152
	+COUNTITEM
	+INVENTORY.ALWAYSPICKUP
	Inventory.Amount 1
	Inventory.MaxAmount 200
	Inventory.PickupMessage "$GOTHTHBONUS"
	scale 0.05
	States
	{
	Spawn:
		BON1 ABCD 6
		Loop
	}
}

//And here's the accompanying armor helmet.
Actor ATArmorBonus : ArmorBonus replaces ArmorBonus
{
	Game Doom
	SpawnID 22
	Radius 20
	Height 16
	Inventory.Pickupmessage "$GOTARMBONUS"
	Inventory.Icon "BON2A0"
	Armor.Savepercent 33.33333
	Armor.Saveamount 1
	Armor.Maxsaveamount 200
	+COUNTITEM
	+INVENTORY.ALWAYSPICKUP
	Scale .11
	States
	{
	Spawn:
		BON2 ABCD 4
		BON2 E 10
		BON2 DCBA 5
		loop
	}
}

//I keep picking at these...keep adding in new versions of old Doom graphics. Whatever...increased resolution Stimpack.
ACTOR ATStimpack : Stimpack replaces Stimpack
{
	Game Doom
	SpawnID 23
	Inventory.Amount 10
	Inventory.PickupMessage "$GOTSTIM"
	Scale .5
	States
	{
	Spawn:
		BON3 A -1
		Stop
	}
}

ACTOR ATMedikit : Medikit replaces Medikit
{
	Game Doom
	SpawnID 24
	Inventory.Amount 25
	Inventory.PickupMessage "$GOTMEDIKIT"
	Health.LowMessage 25, "$GOTMEDINEED"
	Scale .5
	States
	{
	Spawn:
		BON4 A -1
		Stop
	}
}

// Green armor --------------------------------------------------------------

Actor ATGreenArmor : GreenArmor replaces GreenArmor
{
	Game Doom
	SpawnID 68
	Radius 20
	Height 16
	Inventory.Pickupmessage "$GOTARMOR"
	Inventory.Icon "ARM1A0"
	Armor.SavePercent 33.335
	Armor.SaveAmount 100
	scale .5
	States
	{
	Spawn:
		GARM B 6
		GARM A 7 bright
		loop
	}
}

// Blue armor ---------------------------------------------------------------

Actor ATBlueArmor : BlueArmor replaces BlueArmor
{
	Game Doom
	SpawnID 69
	Radius 20
	Height 16
	Inventory.Pickupmessage "$GOTMEGA"
	Inventory.Icon "ARM2A0"
	Armor.Savepercent 50
	Armor.Saveamount 200
	scale .5
	States
	{
	Spawn:
		BARM B 6
		BARM A 7 bright
		loop
	}
}

// Clip box ----------------------------------------------------------------

ACTOR ATClipBox : ClipBox replaces ClipBox
{
	Game Doom
	SpawnID 139
	Inventory.PickupMessage "$GOTCLIPBOX"
	Inventory.Amount 50
	scale .25
	States
	{
	Spawn:
		AAMO A -1
		Stop
	}
}

ACTOR ATRocketAmmo : RocketAmmo replaces RocketAmmo
{
	Game Doom
	SpawnID 140
	Inventory.PickupMessage "$GOTROCKET"
	Inventory.Amount 1
	Inventory.MaxAmount 50
	Ammo.BackpackAmount 1
	Ammo.BackpackMaxAmount 100
	Inventory.Icon "ROCKA0"
	scale .5
	States
	{
	Spawn:
		ARCK A -1
		Stop
	}
}

ACTOR ATShell : Shell replaces Shell
{
	Game Doom
	SpawnID 12
	Inventory.PickupMessage "$GOTSHELLS"
	Inventory.Amount 4
	Inventory.MaxAmount 50
	Ammo.BackpackAmount 4
	Ammo.BackpackMaxAmount 100
	Inventory.Icon "SHELA0"
	scale .25
	States
	{
	Spawn:
		ASHL A -1
		Stop
	}
}

// Cell --------------------------------------------------------------------

ACTOR ATCell : Cell replaces Cell
{
	Game Doom
	SpawnID 75
	Inventory.PickupMessage "$GOTCELL"
	Inventory.Amount 20
	Inventory.MaxAmount 300
	Ammo.BackpackAmount 20
	Ammo.BackpackMaxAmount 600
	Inventory.Icon "CELLA0"
	scale .4
	States
	{
	Spawn:
		ACLL A -1
		Stop
	}
}

ACTOR ATClip : Clip replaces Clip
{
	Game Doom
	SpawnID 11
	Inventory.PickupMessage "$GOTCLIP"
	Inventory.Amount 10
	Inventory.MaxAmount 200
	Ammo.BackpackAmount 10
	Ammo.BackpackMaxAmount 400
	Inventory.Icon "CLIPA0"
	scale .25
	States
	{
	Spawn:
		ACLP A -1
		Stop
	}
}

// Shell box ---------------------------------------------------------------

ACTOR ATShellBox : ShellBox replaces ShellBox
{
	Game Doom
	SpawnID 143
	Inventory.PickupMessage "$GOTSHELLBOX"
	Inventory.Amount 20
	scale .25
	States
	{
	Spawn:
		ASBX A -1
		Stop
	}
}

ACTOR ATBackpack : Backpack replaces Backpack
{
	Game Doom
	SpawnID 144
	Height 26
	Inventory.PickupMessage "$GOTBACKPACK"
	scale .5
	States
	{
	Spawn:
		ABPK A -1
		Stop
	}
}


//bobbing blue flare for CONFIG level spewers AGAIN MUST BE DUPLICATED BECAUSE @#%$ING GZDOOM DECIDES THAT THIS ONE WON'T WORK
ACTOR ATBlueSparks 10608
{
	height 1
	radius 1
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.15
	alpha 1.0
	states
	{
	Spawn:
		FLR3 A 210
		goto Death
	Death:
		FLR3 A 4 BRIGHT
		Stop
	}
}

//Steam V.2. Thanks to Enjay for the idea! Very much appreciated.
ACTOR ATSteamParticle 10609
{
	height 1
	radius 1
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.25
	alpha 0.125
	states
	{
	Spawn:
		STM1 A 27
		goto Death
	Death:
		STM1 A 1
		Stop
	}
}

//Sparks for any spark spewing fountains I create.
ACTOR ATYellowSparks 10610
{
	height 1
	radius 1
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.025
	alpha 1.0
	states
	{
	Spawn:
		FLR4 ABC 16
		goto Death
	Death:
		FLR4 D 8
		FLR4 D 8 BRIGHT
		Stop
	}
}

//Spark flash for making a quick strobe when the spark fountains fire.
ACTOR ATSparkFlash 10611
{
	height 1
	radius 1
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.25
	alpha 1.0
	states
	{
	Spawn:
		FLR4 A 4
		goto Death
	Death:
		FLR4 BCD 1
		Stop
	}
}

ACTOR ATGlassShardR 10612
{
	height 4
	radius 4
	+FORCEXYBILLBOARD
	+HEXENBOUNCE
	scale .04
	states
	{
	Spawn:
		SHRD ABCDEFGHABCDEFGHABCDEFGHABC 2
		Goto Death
	Death:
		SHRD D 3
		Stop
	}
}

ACTOR ATGlassShardL 10613
{
	height 4
	radius 4
	+FORCEXYBILLBOARD
	+HEXENBOUNCE
	scale .04
	states
	{
	Spawn:
		SHRD HGFEDCBAHGFEDCBAHGFEDCBAHGF 2
		goto Death
	Death:
		SHRD E 3
		Stop
	}
}

ACTOR Windowbreak 10614
{
	Radius 20
	Height 56
	Health 1
	+SHOOTABLE
	+NOGRAVITY
	+NOBLOOD
	+DONTSPLASH
	Mass 0x7fffffff
	States
	{
	Spawn:
		ATLI A 1
		Loop
	Death:
		ATLI A 1
		Stop
	}
}

ACTOR ImposterSoul : Health 10615
{
	Radius 12
	Height 12
	inventory.pickupmessage "Yeooowch!!! It burns!!!"
  	inventory.amount -10
  	inventory.maxamount 200
	inventory.pickupsound "ImposterLaugh"
  	-COUNTITEM
  	states
	{
	Spawn:
		SOUL ABCDCB 6
		Loop
  	}
}

ACTOR ATBlueSparks2 10616
{
	height 1
	radius 1
	+FORCEXYBILLBOARD
	renderstyle add
	scale 0.15
	alpha 1.0
	states
	{
	Spawn:
		FLR3 A 210
		goto Death
	Death:
		FLR3 A 4 BRIGHT
		Stop
	}
}

















































// -------------------
// ------Lights-------
// -------------------

//Medium Lightpool WHITE
ACTOR ATlightmed 10256
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}

//Small Lightpool WHITE
ACTOR ATlightsm 10257
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}

//Large Lightpool WHITE
ACTOR ATlightlg 10258
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}

//Tiny Lightpool WHITE
ACTOR ATlighttiny 10261
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}


//SUBTRACTIVE Lightpool BLACK
ACTOR ATlightbk 10255
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}


//TINY Lightpool RED
ACTOR ATlighttinyred 10259
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}

//SMALL Lightpool RED
ACTOR ATlightsmallred 10260
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}

//SMALL Lightpool BLUE
ACTOR ATlightsmallblue 10262
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
      ATLI A -1
      Stop
    }
}

//SMALL lightpool CANDLE YELLOW
ACTOR ATlightsmallyellow 10263
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
          ATLI A -1
          Stop
    }
}

//Lightpool for the Desklamps since just attaching a light to the friggin' thing doesn't work. NOW THIS DOESN"T WORK EITHER!!! Glitchy, glitchy program.
ACTOR ATLightDeskLamp 10264
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
         ATLI A -1
         Stop
    }
}

//Lightpool for circuit sector walls
ACTOR ATlightmediumblue 10265
{
	height 1
	radius 1
	+CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//tiny itty bitty blue-cast light for illuminating computer screens.
ACTOR ATlightSCREENS 10266
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//tiny light for illuminating Hologram.
ACTOR ATlightHOLO 10267
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//Hydro light for illuminating Hydroponics.
ACTOR ATlightHYDRO 10268
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//BIG Hydro light for illuminating Hydroponics.
ACTOR ATlightHYDROBIG 10269
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}


//Hydro half light for illuminating Hydroponics when multiple lights are needed for
//proper diffusion.
ACTOR ATlightHYDRODIM 10270
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//Light for sewage sector
ACTOR ATlightSEWERlargedim 10271
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//Light for Park
ACTOR ATlightpark 10272
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//Green goolight for that healthy Nukage glow. won't work so I had to copy it to another actor. Stupid.
ACTOR ATlightNukage 10273
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//Special light size for the restrooms.
ACTOR ATlightRestroom 10274
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}


//Special light size for the restrooms.
ACTOR ATlightRestroomDIM 10275
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//Why are the Nukage lights suddenly not working??? This makes NO FREAKING SENSE.
ACTOR ATlgtNuke 10276
{
	height 1
	radius 1
	-CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//duplicate desk lamp 'cause GZDoom doesn't "feel" like rendering the other one.
ACTOR ATLightDeskLamp2 10277
{
    height 1
    radius 1
    +CANPASS
    +NOGRAVITY
    states
    {
    Spawn:
         ATLI A -1
         Stop
    }
}

//Flashing light for CPU area. Add a little more "it" to the area.
ACTOR ATCPUStrobe 10278
{
	height 1
	radius 1
	+CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//lights for the fake floor shaft at the end that leads to the boss fight.
ACTOR ATYellowshaft 10279
{
	height 1
	radius 1
	+CANPASS
	+NOGRAVITY
	states
	{
	Spawn:
		ATLI A -1
		Stop
	}
}

//=======================================================================================================================
// items
//=======================================================================================================================

//===========================================================================
//
// super shield
//
//
//
//===========================================================================

Actor SuperShield : BasicArmorPickup 12040
{
    Inventory.PickupSound "misc/mpickup"
   //$Category Powerups
  Armor.SavePercent 100.0
  Armor.SaveAmount 300
  Inventory.PickupMessage "Picked up the super shield!"
  states
  {
  Spawn:
    ARMX AB 3 Bright
    Loop
  }
}

//===========================================================================
//
// large blue potion
//
//
//
//===========================================================================

Actor medikit3 : HealthPickup replaces stimpack
{
Inventory.PickupSound "misc/health"
Game Doom
Health 250
Inventory.UseSound "misc/use"
HealthPickup.AutoUse 3
Inventory.MaxAmount 10
Inventory.PickupMessage "$GOT large potion"
+FLOATBOB
  +COUNTITEM
  +INVENTORY.PICKUPFLASH
States
{
Spawn:
MED3 A -1
Stop
}
}

//===========================================================================
//
// healthbonus
//
//
//
//===========================================================================

ACTOR HealthBonus2 : Healthbonus replaces Healthbonus
{
  +FLOATBOB
  +COUNTITEM
  +INVENTORY.ALWAYSPICKUP
  Inventory.Amount 0
  Inventory.MaxAmount 999
  Inventory.PickupMessage "" 
  States
  {
  Spawn:
    TNT1 A 1 A_Jump (227, 2, 3)
    TNT1 A 0 A_SpawnItemEx ("SmallHealthVile", 0, 0, 8, 0, 0, 0, 0, 1)
    goto death
	TNT1 A 0 A_SpawnItemEx ("MediumHealthVile", 0, 0, 8, 0, 0, 0, 0, 1)
    goto death
    TNT1 A 0 A_SpawnItemEx ("LargeHealthVile", 0, 0, 8, 0, 0, 0, 0, 1)
    goto death
  death:
  TNT1 A 0
  Stop
  }
}

ACTOR SmallHealthVile : Health
{
Inventory.PickupSound "misc/health"     

  inventory.amount 10
  inventory.maxamount 999
  Inventory.PickupMessage "You have healed a scratch" 
  +FLOATBOB
  +COUNTITEM
  +INVENTORY.PICKUPFLASH
  states
  {
  Spawn:
    HPP2 A 800
	TNT1 A 1
	HPP2 A 15
	TNT1 A 1
	HPP2 A 15
	TNT1 A 1
	HPP2 A 15
	TNT1 A 1
	HPP2 A 15
	TNT1 A 1
	HPP2 A 15
	TNT1 A 1
	HPP2 A 5
	TNT1 A 1
	HPP2 A 5
	TNT1 A 1
	HPP2 A 5
	TNT1 A 1
	HPP2 A 5
	TNT1 A 1
	HPP2 A 5
	TNT1 A 1
	HPP2 A 5
	TNT1 A 1
	HPP2 A 5
    stop
  }
}

ACTOR MediumHealthVile : Health
{
Inventory.PickupSound "misc/health"     
  inventory.amount 17
  inventory.maxamount 999
  Inventory.PickupMessage "You have healed a cut" 
  +FLOATBOB
  +COUNTITEM
  +INVENTORY.PICKUPFLASH

  states
  {
  Spawn:
    MRP2 A 800
	TNT1 A 1
	MRP2 A 15
	TNT1 A 1
	MRP2 A 15
	TNT1 A 1
	MRP2 A 15
	TNT1 A 1
	MRP2 A 15
	TNT1 A 1
	MRP2 A 15
	TNT1 A 1
	MRP2 A 5
	TNT1 A 1
	MRP2 A 5
	TNT1 A 1
	MRP2 A 5
	TNT1 A 1
	MRP2 A 5
	TNT1 A 1
	MRP2 A 5
	TNT1 A 1
	MRP2 A 5
	TNT1 A 1
	MRP2 A 5
    stop
  }
}

ACTOR LargeHealthVile : Health
{
Inventory.PickupSound "misc/health"     
  inventory.amount 25
  inventory.maxamount 999
  Inventory.PickupMessage "You have healed a Wound" 
  +FLOATBOB
  +COUNTITEM
  +INVENTORY.PICKUPFLASH

  states
  {
  Spawn:
    RGP2 A 800
	TNT1 A 1
	RGP2 A 15
	TNT1 A 1
	RGP2 A 15
	TNT1 A 1
	RGP2 A 15
	TNT1 A 1
	RGP2 A 15
	TNT1 A 1
	RGP2 A 15
	TNT1 A 1
	RGP2 A 5
	TNT1 A 1
	RGP2 A 5
	TNT1 A 1
	RGP2 A 5
	TNT1 A 1
	RGP2 A 5
	TNT1 A 1
	RGP2 A 5
	TNT1 A 1
	RGP2 A 5
	TNT1 A 1
	RGP2 A 5
    stop
  }
}

//===========================================================================
//
// small blue health vile
//
//
//
//===========================================================================

Actor medikit4 : HealthPickup replaces medikit
{
Inventory.PickupSound "misc/health"
Game Doom
Health 100
HealthPickup.AutoUse 3
Inventory.UseSound "misc/use"
Inventory.MaxAmount 20
Inventory.PickupMessage "$GOT Small potion"
+FLOATBOB
  +COUNTITEM
  +INVENTORY.PICKUPFLASH

States
{
Spawn:
MED5 A -1
Stop
}
}

//===========================================================================
//
// Purple Health vile
//
//
//
//===========================================================================

ACTOR ArtiHealingRadius1 : ArtiHealingRadius replaces ArtiHealingRadius 12039
{
Inventory.PickupSound "misc/mpickup"
   //$Category Powerups
  Health 450
  Inventory.UseSound "misc/use"
  Inventory.PickupMessage "$Mega potion, heals you and your buddies"
  States
  {
  Spawn:
    SPHL A 350
    Loop
  }
}

//===========================================================================
//
// Armor level 2
//
//
//
//===========================================================================

Actor armor4 : BasicArmorpickup replaces bluearmor
{
Inventory.PickupSound "misc/armor"
Game Doom
  armor.saveamount 500
  armor.savepercent 75
Inventory.PickupMessage "$GOTSUPERARMOR"
+FLOATBOB
  +INVENTORY.PICKUPFLASH
States
{
Spawn:
ARM4 A -1
Stop
}
}

//===========================================================================
//
// Armor level 1
//
//
//
//===========================================================================

Actor armor5 : BasicArmorpickup replaces Greenarmor
{
Inventory.PickupSound "misc/armor"
Game Doom
  armor.saveamount 300
  armor.savepercent 75
Inventory.PickupMessage "$GOTARMOR"
+FLOATBOB
  +INVENTORY.PICKUPFLASH
States
{
Spawn:
ARM5 A -1
Stop
}
}

//=======================================================================================================================
// Restricts ammo pickups
//=======================================================================================================================

Actor AmmoUser : Inventory
{
	Inventory.MaxAmount 1
	+UNDROPPABLE
	-INVBAR
}

Actor ManaUser : Inventory
{
	Inventory.MaxAmount 1
	+UNDROPPABLE
	-INVBAR
}

//===========================================================================
//
// Shell Kit
//
//
//
//===========================================================================

ACTOR Shells1 : ammo
{
   //$Category Ammunition
	Radius 8
	Height 8
  Inventory.PickupMessage "Picked Up shells for your Shotgun"
  Inventory.Amount 60
  Inventory.MaxAmount 700
  Ammo.BackpackAmount 0
  Ammo.BackpackMaxAmount 700
  Inventory.PickupSound "misc/ammo"
  States
  {
  Spawn:
    SHLK A -1
    Stop
  }
}

Actor Shells1Pickup : CustomInventory 13741
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked Up shells for your Shotgun"
	Inventory.PickupSound "misc/ammo"
	States
	{
	Spawn:
		SHLK A -1
		Stop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Shells1",60)
		Stop
	}
}

Actor Shells1Drop : Shells1Pickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Shells1",30)
		Stop
	}
}

//===========================================================================
//
// RocketPile
//
//
//
//===========================================================================

ACTOR Rockets1 : Ammo
{
	Radius 8
	Height 8
	   //$Category Ammunition
  Inventory.PickupMessage "Picked up a pile of rockets."
  Inventory.Amount 50
  Inventory.MaxAmount 700
  Ammo.BackpackAmount 0
  Ammo.BackpackMaxAmount 700
  Inventory.PickupSound "misc/ammo"
  States
  {
  Spawn:
    RCKP A -1
    Stop
  }
}

Actor Rockets1Pickup : CustomInventory 12234
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a pile of rockets."
	Inventory.PickupSound "misc/ammo"
	States
	{
	Spawn:
		RCKP A -1
		Stop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Rockets1",50)
		Stop
	}
}

Actor Rockets1Drop : Rockets1Pickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Rockets1",25)
		Stop
	}
}

//===========================================================================
//
// CellKit
//
//
//
//===========================================================================

ACTOR Cells1 : ammo
{
   //$Category Ammunition
	Radius 8
	Height 8
  Inventory.PickupMessage "Picked up an energy cell kit."
  Inventory.Amount 50
  Inventory.MaxAmount 700
  Ammo.BackpackAmount 0
  Ammo.BackpackMaxAmount 700
  Inventory.PickupSound "misc/ammo"
  States
  {
  Spawn:
    CELK A -1
    Stop
  }
}

Actor Cells1Pickup : CustomInventory 14212
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up an energy cell kit."
	Inventory.PickupSound "misc/ammo"
	States
	{
	Spawn:
		CELK A -1
		Stop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Cells1",50)
		Stop
	}
}

Actor Cells1Drop : Cells1Pickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Cells1",25)
		Stop
	}
}

//===========================================================================
//
// AmmoBelt
//
//
//
//===========================================================================

Actor Ammobelt1 : ammo
{
   //$Category Ammunition
	Radius 8
	Height 8
  Inventory.PickupMessage "You got an ammo belt"
  Inventory.PickupSound "misc/ammo"
  Inventory.Amount 70
  Inventory.MaxAmount 700
  Ammo.BackpackAmount 0
  Ammo.BackpackMaxAmount 700
  Scale 1.3
  States
  {
  Spawn:
    ABLT A -1
    Stop
  }
}

Actor Ammobelt1Pickup : CustomInventory 14854
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "You got an ammo belt"
	Inventory.PickupSound "misc/ammo"
	States
	{
	Spawn:
		ABLT A -1
		Stop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Ammobelt1",70)
		Stop
	}
}

Actor Ammobelt1Drop : Ammobelt1Pickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("Ammobelt1",35)
		Stop
	}
}

//===========================================================================
//
// CombatPack
//
//
//
//===========================================================================

Actor CombatPack : CustomInventory 19384
{
   //$Category Ammunition
	Radius 8
	Height 8
  +CountItem
  Inventory.PickupMessage "You got a combat pack! Fits a true soldier!"
  Inventory.PickupSound "misc/ammo"
  States
  {
  Spawn:
    CBPK A -1
    Loop
  Pickup:
  	TNT1 A 0 A_JumpIfInventory("AmmoUser",1,1)
	Fail
    TNT1 A 0 A_GiveInventory("Shells1", 60)
    TNT1 A 0 A_GiveInventory("ammobelt1", 70)
    TNT1 A 0 A_GiveInventory("Rockets1", 60)
    TNT1 A 0 A_GiveInventory("Cells1", 50)
    Stop
  }
}


//===========================================================================
//
// Blue mana (AMMO)
//
//
//
//===========================================================================

ACTOR BMana : ammo
{
//$Category Ammunition
Inventory.PickupSound "misc/mana"
	SpawnID 11
	Inventory.Amount 20
	Inventory.MaxAmount 700
	Ammo.BackpackAmount 0
	Ammo.BackpackMaxAmount 700
	Radius 8
	Height 8
	+FLOATBOB
	Inventory.PickupMessage "Picked up a blue mana pack"
	States
	{
	Spawn:
		MAN1 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	}
}

Actor BManaPickup : CustomInventory 3338
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a blue mana pack"
	Inventory.PickupSound "misc/mana"
	+FLOATBOB
	States
	{
	Spawn:
		MAN1 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("BMana",20)
		Stop
	}
}

Actor BManaDrop : BManaPickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("BMana",10)
		Stop
	}
}

//===========================================================================
//
// Green Mana (AMMO)
//
//
//
//===========================================================================

ACTOR GMana : Ammo
{
Inventory.PickupSound "misc/mana"
   //$Category Ammunition
	SpawnID 12
	Inventory.Amount 20
	Inventory.MaxAmount 700
	Ammo.BackpackAmount 0
	Ammo.BackpackMaxAmount 700
	Radius 8
	Height 8
	+FLOATBOB
	Inventory.PickupMessage "Picked up a green mana pack"
	States
	{
	Spawn:
		MAN2 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	}
}

Actor GManaPickup : CustomInventory 3337
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a green mana pack"
	Inventory.PickupSound "misc/mana"
	+FLOATBOB
	States
	{
	Spawn:
		MAN2 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("GMana",20)
		Stop
	}
}

Actor GManaDrop : GManaPickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("GMana",10)
		Stop
	}
}

//===========================================================================
//
// Purple Mana (AMMO)
//
//
//
//===========================================================================

ACTOR PMana : Ammo
{
Inventory.PickupSound "misc/mana"
   //$Category Ammunition
	Inventory.Amount 50
	Inventory.MaxAmount 700
	Ammo.BackpackAmount 0
	Ammo.BackpackMaxAmount 700
	Radius 8
	Height 8
	+FLOATBOB
	Inventory.PickupMessage "Picked up a Purple mana pack"
	States
	{
	Spawn:
		MAN4 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	}
}

Actor PManaPickup : CustomInventory 3449
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a Purple mana pack"
	Inventory.PickupSound "misc/mana"
	+FLOATBOB
	States
	{
	Spawn:
		MAN4 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("PMana",50)
		Stop
	}
}

Actor PManaDrop : PManaPickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("PMana",25)
		Stop
	}
}

//===========================================================================
//
// Dark Mana (AMMO)
//
//
//
//===========================================================================

ACTOR DMana : Ammo
{
Inventory.PickupSound "misc/mana"
   //$Category Ammunition
	Inventory.Amount 50
	Inventory.MaxAmount 700
	Ammo.BackpackAmount 0
	Ammo.BackpackMaxAmount 700
	Radius 8
	Height 8
	+FLOATBOB
	Inventory.PickupMessage "Picked up a Dark mana pack"
	States
	{
	Spawn:
		MAN5 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	}
}

Actor DManaPickup : CustomInventory 3477
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a Dark mana pack"
	Inventory.PickupSound "misc/mana"
	+FLOATBOB
	States
	{
	Spawn:
		MAN5 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("DMana",50)
		Stop
	}
}

Actor DManaDrop : DManaPickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("DMana",25)
		Stop
	}
}

//===========================================================================
//
// Red Mana (AMMO)
//
//
//
//===========================================================================

ACTOR RMana : Ammo
{
Inventory.PickupSound "misc/mana"
   //$Category Ammunition
	Inventory.Amount 50
	Inventory.MaxAmount 700
	Ammo.BackpackAmount 0
	Ammo.BackpackMaxAmount 700
	Radius 8
	Height 8
	+FLOATBOB
	Inventory.PickupMessage "Picked up a red mana pack"
	States
	{
	Spawn:
		MAN6 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	}
}

Actor RManaPickup : CustomInventory 3455
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a red mana pack"
	Inventory.PickupSound "misc/mana"
	+FLOATBOB
	States
	{
	Spawn:
		MAN6 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("RMana",50)
		Stop
	}
}

Actor RManaDrop : RManaPickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("RMana",25)
		Stop
	}
}

//===========================================================================
//
// orange Mana (AMMO)
//
//
//
//===========================================================================

ACTOR OMana : Ammo
{
Inventory.PickupSound "misc/mana"
   //$Category Ammunition
	Inventory.Amount 50
	Inventory.MaxAmount 700
	Ammo.BackpackAmount 0
	Ammo.BackpackMaxAmount 700
	Radius 8
	Height 8
	+FLOATBOB
	Inventory.PickupMessage "Picked up a orange mana pack"
	States
	{
	Spawn:
		MAN7 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	}
}

Actor OManaPickup : CustomInventory 3456
{
//$Category Ammunition
	Radius 8
	Height 8
	Inventory.Amount 0
	Inventory.PickupMessage "Picked up a orange mana pack"
	Inventory.PickupSound "misc/mana"
	+FLOATBOB
	States
	{
	Spawn:
		MAN7 ABCDEFGHIJKLMNOP 4 Bright
		Loop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("OMana",50)
		Stop
	}
}

Actor OManaDrop : OManaPickup
{
	States
	{
	Pickup:
		TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
		Fail
		TNT1 A 0 A_GiveInventory("OMana",25)
		Stop
	}
}

//===========================================================================
//
// Combined mana
//
//
//
//===========================================================================

ACTOR Cmana : mana3 3124
{
Inventory.PickupSound "misc/mana"
   //$Category Ammunition
  Radius 8
  Height 8
  +FLOATBOB
Inventory.PickupMessage "You got Combined mana"
  States
  {
  Spawn:
    MAN3 ABCDEFGHIJKLMNOP 4 Bright
    Loop
  Pickup:
  	TNT1 A 0 A_JumpIfInventory("ManaUser",1,1)
	Fail
    TNT1 A 0 A_GiveInventory("Bmana", 50)
    TNT1 A 0 A_GiveInventory("Gmana", 60)
	TNT1 A 0 A_GiveInventory("Omana", 50)
    TNT1 A 0 A_GiveInventory("Rmana", 60)
	TNT1 A 0 A_GiveInventory("Pmana", 50)
    TNT1 A 0 A_GiveInventory("Dmana", 2)
    Stop
  }
}


//===========================================================================
//
// Heavens Power
//
//
//
//===========================================================================

actor HeavensForce : CustomInventory 12173
{
	//$Category Powerups
	inventory.pickupmessage "Heavens Force!!."
	Inventory.MaxAmount 1
	inventory.amount 1
    Inventory.PickupSound "misc/mpickup"
	+COUNTITEM
	+INVENTORY.BIGPOWERUP
    +INVENTORY.INVBAR
    +FLOATBOB
	States
	{
	Spawn:
		FSTM A 1 Bright
		Loop
	Use:
        TNT1 A 0 A_PlaySound("items/unholytome")
		TNT1 A 0 A_FireCustomMissile("HeavenBalloftruth",0,0,0,0)
		Stop
		}
}

Actor HeavenBalloftruth
{
Translation "250:254=96:111"
sCALE 2.0
radius 35
height 55
damage 50
speed 25
seesound ""
deathsound "IronDoom/impact"
Projectile
DamageTYPE "HeavenPower"
+FORCERADIUSDMG
+EXTREMEDEATH
+SEEKERMISSILE
+DONTFALL
+FORCERADIUSDMG
+PAINLESS
+FOILINVUL
states
{
Spawn:
FX11 A 3 A_SeekerMissile(100, 70)
FX11 B 3 A_SpawnItemEx ("heavenforceghosT", 0, 0, 0, 0, 0, 0, 0, 128)
Loop
FX11 A 1 A_Stop
FX11 A 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
Goto Death+2
Death:
FX11 A 0
Goto Spawn+3
FX11 C 3 A_PlaySound("IronDoom/impact")
FX11 D 3
FX11 E 3 A_Explode(150,250,1)
FX11 FG 3
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,315,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,0)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,315,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,315,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,-5)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,315,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,315,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,-10)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,315,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,0,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,15,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,30,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,45,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,60,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,75,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,90,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,105,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,120,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,135,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,150,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,165,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,180,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,195,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,210,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,225,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,240,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,255,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,270,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,285,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,300,2,-15)
	TNT1 A 0 A_CustomMissile("Heavenforceghost4",0,16,315,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,330,2,-15)
	TNT1 A 0 A_CustomMissile("heavenforceghost4",0,16,345,2,-15)
stop
Crash:
FX11 A 1 A_Stop
FX11 A 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 A 0 A_PlaySound("ClericCStaffHitThing")
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,0,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,15,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,30,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,45,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,60,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,75,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,90,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,105,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,120,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,135,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,150,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,165,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,180,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,195,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,210,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,225,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,240,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,255,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,270,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,285,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,300,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,315,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,330,2,0)
TNT1 A 0 A_CustomMissile("Heavensdrain",0,16,345,2,0)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 A 0 A_Explode(17,8,0)
FX11 A 1 A_Fire(34)
FX11 B 0 A_PlaySound("ClericCStaffHitThing")
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
FX11 B 0 A_Explode(17,8,0)
FX11 B 1 A_Fire(34)
Stop
}
}


ACTOR heavenforceghost
{
   Translation "250:254=96:111"
	RenderStyle Add
	+CLIENTSIDEONLY
	+NOBLOCKMAP
	+NOGRAVITY
	scale .80
	States
	{
	Spawn:
		FX11 CD 2 Bright
		FX11 EF 2 Bright
		FX11 E 0 Bright A_SpawnItemEx ("heavenforceghost2", 0, 0, 0, 0, 0, 0, 0, 128)
    	STOP
	}
}

ACTOR heavenforceghost2
{
   Translation "250:254=96:111"
	RenderStyle Add
	+CLIENTSIDEONLY
	+NOBLOCKMAP
	+NOGRAVITY
	scale .50
	States
	{
	Spawn:
		FX11 CD 2 Bright
		FX11 EF 2 Bright
		FX11 E 0 Bright A_SpawnItemEx("heavenforceghost3", Random(-10, 10), Random(-10, 10), Random(-10, 10), 0, 0, 0, 0, 128)
    	STOP
	}
}

ACTOR heavenforceghost3
{
   Translation "250:254=96:111"
	RenderStyle Add
	+CLIENTSIDEONLY
	+NOBLOCKMAP
	+NOGRAVITY
	scale .30
	States
	{
	Spawn:
		FX11 CD 2 Bright
		FX11 EF 2 Bright
		FX11 E 0 Bright
    	STOP
	}
}

ACTOR heavenforceghost4
{
   SPEED 40
   Translation "250:254=96:111"
	RenderStyle Add
	+NOBLOCKMAP
	+NOGRAVITY
	scale .70
	States
	{
	Spawn:
		FX11 CD 2 Bright
		FX11 EF 2 Bright
		FX11 E 0 Bright A_SpawnItemEx("heavenforceghost3", Random(-10, 10), Random(-10, 10), Random(-10, 10), 0, 0, 0, 0, 128)
    	STOP
	}
}

actor Heavensdrain
{
  Translation "176:191=96:111", "32:47=104:111", "208:223=90:95"
  Radius 10
  Height 20
  Speed 10
  Damage 5
  +FORCERADIUSDMG
  +PAINLESS
  +FOILINVUL
  Projectile
  DamageTYPE "HeavenPower"
  SeeSound ""
  DeathSound "MageStaffExplode"
  States
  {
  Spawn:
    MSP2 E 2 bright A_Explode(80, 192, 0)
	GOTO DEATH
  Death:
    MSP2 FGHI 2 bright A_Explode(80, 192, 0)
    stop
  }
 }

actor Powergathering3
{
  -SOLID
  -SHOOTABLE
  +Nogravity
  +Noclip
  States
  {
  Spawn:
    LFX1 S 0
  Spawner1:
    LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3 A_PlaySound ("monster/hadtel")
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
    LFX1 S 3
    LFX1 T 3 A_PlaySound ("monster/hadsit")
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3 A_PlaySound ("monster/hadtel")
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3 A_PlaySound ("monster/hadsit")
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
    LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3 A_PlaySound ("monster/hadtel")
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3 A_PlaySound ("monster/hadtel")
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3 A_CustomMissile ("TeleportFog", 0, 0, 0, 0, 0)
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3 A_PlaySound ("monster/hadtel")
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
    LFX1 S 3
    LFX1 T 3 A_PlaySound ("monster/hadsit")
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3 A_PlaySound ("monster/hadtel")
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3 A_PlaySound ("monster/hadsit")
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
    LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3 A_PlaySound ("monster/hadtel")
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
    LFX1 S 3
    LFX1 T 3 A_PlaySound ("monster/hadsit")
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3
	LFX1 W 3 A_PlaySound ("monster/hadtel")
	LFX1 S 3
    LFX1 T 3
    LFX1 U 3
    LFX1 V 3 A_CustomMissile ("TeleportFog", 0, 0, 0, 0, 0)
	LFX1 W 3
  Death:
    TNT1 A 0
    stop
  }
}

ACTOR HeavensTome : CustomInventory 18211
{
   //$Category Powerups
  +INVENTORY.FANCYPICKUPSOUND
  +INVENTORY.INVBAR
  +COUNTITEM
  +FLOATBOB
  inventory.maxamount 1
  Inventory.PickupSound "misc/mpickup"
  inventory.amount 1
  Inventory.PickupMessage "You picked up a Powerspawn!"
  States
  {
  Spawn:
    TOM5 A 5
    LOOp
  Use:
	TNT1 A 0 A_PlaySound("items/unholytome")
	TNT1 A 0 A_Print("Spawning 2 Heaven Guards!")
	TNT1 A 1 A_SpawnItemEx ("Powergathering3", 56, 0, 8, 0, 0, 0, 0, 1)
	Stop
  }
}

//=======================================================================================================================
// wall protectors 
//=======================================================================================================================


actor Protector 12757
{
   //$Category Protectors
  health 90000
  radius 115
  height 360
  MASS 99999
  Damagefactor "HEAVENPOWER", 0
  Damagefactor "PEXPLOSIVE", 0
  Damagefactor "PFire", 0
  Damagefactor "PElectric", 0
  Damagefactor "PPoison", 0
  Damagefactor "PBullet", 0
  Damagefactor "ice", 0
  DEATHSOUND "comet/explosion"
  +SHOOTABLE
  +SOLID
  +NOBLOOD
  +FRIENDLY
  +THRUSPECIES
  +Ghost
  +NOradiusdmg
  Species "Player"
  scale 9
  states
  {
  Spawn:
    TNT1 A -1 A_Look
    loop
  Death:
    TNT1 A 5 A_Scream
    TNT1 A 2
    TNT1 A -1 A_Fall
    stop
  }
}

actor Protector2 12597
{
//$Category Protectors
  health 70000
  radius 65
  height 170
  MASS 99999
  Damagefactor "HEAVENPOWER", 0
  Damagefactor "PEXPLOSIVE", 0
  Damagefactor "PFire", 0
  Damagefactor "PElectric", 0
  Damagefactor "PPoison", 0
  Damagefactor "PBullet", 0
  Damagefactor "ice", 0
  DEATHSOUND "comet/explosion"
  +SHOOTABLE
  +SOLID
  +NOBLOOD
  +FRIENDLY
  +NOradiusdmg
  +THRUSPECIES
  +Ghost
  Species "Player"
  scale 5
  states
  {
  Spawn:
    TNT1 A -1 A_Look
    loop
  Death:
    TNT1 A 1 A_Scream
    TNT1 A 5
    TNT1 A -1 A_Fall
    stop
  }
}


actor Protector3 15492
{
//$Category Protectors
  health 30000
  radius 10
  height 30
  MASS 99999
  Damagefactor "HEAVENPOWER", 0
  Damagefactor "PEXPLOSIVE", 0
  Damagefactor "PFire", 0
  Damagefactor "PElectric", 0
  Damagefactor "PPoison", 0
  Damagefactor "PBullet", 0
  Damagefactor "ice", 0
  DEATHSOUND "comet/explosion"
  +SHOOTABLE
  +SOLID
  +NOBLOOD
  +FRIENDLY
  +THRUSPECIES
  +NOradiusdmg
  +Ghost
  Species "Player"
  states
  {
  Spawn:
    PRO2 A -1 A_Look
    loop
  Death:
    TNT1 A 5 A_Scream
    TNT1 A 5
    TNT1 A 0 A_Fall
    stop
  }
}

//=======================================================================================================================
// Heaven Protectors 
//=======================================================================================================================

Actor Bible
{
  //$Category stuff
	+SOLID
	+NOGRAVITY
	+FloatBob
  States
  {
  Spawn:
    BIBL A -1
    Stop
  }
}


ACTOR BlueSkullGizmo 24369
{
//$Category Protectors
  health 30000
  radius 10
  height 30
  MASS 99999
  Damagefactor "HEAVENPOWER", 0
  Damagefactor "PEXPLOSIVE", 0
  Damagefactor "PFire", 0
  Damagefactor "PElectric", 0
  Damagefactor "PPoison", 0
  Damagefactor "PBullet", 0
  Damagefactor "ice", 0
  DEATHSOUND "comet/explosion"
  +SHOOTABLE
  +SOLID
  +NOBLOOD
  +NOradiusdmg
  +FRIENDLY
  +THRUSPECIES
  +Ghost
  Species "Player"
States
{
Spawn:
  BlueKey:
  HGIZ A 1
  HGIZ A 1 A_SpawnItemEx("GizmoSkull", 0, 0, 65)
  HGIZ A 1 A_SpawnItemEx("BFS", 0, 0, 60)
  Goto Spawn2
Spawn2:
  HGIZ A 1
  Loop
Death:
    HGIZ A 5 A_Scream
    HGIZ A 5
    HGIZ A 0 A_Fall
    stop
}
}

ACTOR HeroicBible 24374
{
//$Category Protectors
  health 100000
  radius 40
  height 80
  MASS 99999
  Damagefactor "HEAVENPOWER", 0
  Damagefactor "PEXPLOSIVE", 0
  Damagefactor "PFire", 0
  Damagefactor "PElectric", 0
  Damagefactor "PPoison", 0
  Damagefactor "PBullet", 0
  Damagefactor "ice", 0
  DEATHSOUND "comet/explosion"
  +SHOOTABLE
  +SOLID
  +NOBLOOD
  +FRIENDLY
  +THRUSPECIES
  +NOradiusdmg
  +SPECTRAL
  Species "Player"
States
{
Spawn:
  BlueKey:
  HGIZ A 1
  HGIZ A 1 A_SpawnItemEx("Bible", 0, 0, 65)
  HGIZ A 1 
  Goto Spawn2
Spawn2:
  HGIZ A 1
  Loop
Death:
    HGIZ A 5 A_Scream
    HGIZ A 5
    HGIZ A 0 A_Fall
    stop
}
}

ACTOR GizmoSkull
{
	Radius 16
	Height 16
	+SOLID
	+NOGRAVITY
	renderstyle ADD
	alpha 0.9
	Scale .5
	States
	{
	Spawn:
		GZSK A -1
		Stop
	}
}

ACTOR BFS
{
	Radius 1
	Height 1
	+SOLID
	+NOGRAVITY
	States
	{
	Spawn:
		TNT1 A 1
		TNT1 A -1 A_SpawnItem("BF")
		Stop
	}
}

ACTOR BF
{
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	renderstyle ADD
	alpha 0.5
	Scale 1.2
	States
	{
	Spawn:
		BKFO ABCD 3 Bright
		Loop
	}
}

//=======================================================================================================================
// Orbs
//=======================================================================================================================

ACTOR Blueorb1 10922
{
   //$Category Orbs
	Translation "250:254=198:207"
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	Scale 2.0
	States
	{
	Spawn:
		FX11 AB 4 Bright
		Loop
	}
}

ACTOR RedORB1 10926
{
   //$Category Orbs
  Translation "250:254=176:191"
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	Scale 2.0
	States
	{
	Spawn:
		FX11 AB 4 Bright
		Loop
	}
}

ACTOR Greenorb1 10924
{
   //$Category Orbs
	Translation "250:254=119:127"
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	Scale 2.0
	States
	{
	Spawn:
		FX11 AB 4 Bright
		Loop
	}
}

ACTOR Purpleorb1 10925
{
   //$Category Orbs
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	Scale 2.0
	States
	{
	Spawn:
		FX11 AB 4 Bright
		Loop
	}
}

ACTOR Silverorb1 10927
{
   //$Category Orbs
	Translation "250:254=96:111"
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	Scale 2.0
	States
	{
	Spawn:
		FX11 AB 4 Bright
		Loop
	}
}

ACTOR Yelloworb1 10945
{
   //$Category Orbs
	Translation "250:254=160:167"
	+NOCLIP
	+NOINTERACTION
	+NOGRAVITY
	Scale 2.0
	States
	{
	Spawn:
		FX11 AB 4 Bright
		Loop
	}
}

//=======================================================================================================================
// Trap Balls for map 16
//=======================================================================================================================

ACTOR Icetrap 
{
  Radius 5
  Height 6
  Speed 0
  deathsound "FrostFang/Hit2"
  Damage 50
  Damagetype "Ice"
  Obituary "%o Caught a Cold!"
  Projectile
  +FORCERADIUSDMG
  +Spectral
  +Bloodlessimpact
  +MISSILE 
  +NoBlockMap 
  -NOTELEPORT
  -NOGRAVITY

  States
  {
  Spawn:
    FX23 G 5 Bright
    Loop
  Death:
    FX23 G 2 Bright 
    FX23 HI 2 Bright A_Explode(10,25,0)
    Stop
  }
}

ACTOR FireTrap : PhoenixFX2
{
  Radius 6
  Height 8
  Speed 0
  Damage 20
  SeeSound "PhoenixRod/Flame"
  +FORCERADIUSDMG
  +Spectral
  +Bloodlessimpact
  +MISSILE 
  +NoBlockMap 
  -NOTELEPORT
  -NOGRAVITY
  DamageType Fire
  Projectile
  Obituary "%o Got HyperThermia!"
}

ACTOR PoisonTrap
{
  Damage 40
  Radius 12
  Height 8
  Speed 0
    +FORCERADIUSDMG
  +Spectral
  +Bloodlessimpact
  +MISSILE 
  +NoBlockMap 
  -NOTELEPORT
  -NOGRAVITY
  RenderStyle Add
  DamageType "Poison"
  Projectile
  DeathSound "ClericCStaffExplode"
  Obituary "%o ingested Poison into there system!"
  States
  {
  Spawn:
    CSSF DDEE 1 Bright
    Loop
  Death:
    CSSF FG 4 Bright 
    CSSF HI 3 Bright 
	CSSF I 0 Bright A_SpawnItem("PoisonCloud4", 0, 28)
    Stop
  }
}

//=======================================================================================================================
// Energy Balls and power nodes for map 17
//=======================================================================================================================

ACTOR GreenEnergyBall 14561
{
  //$Category Orbs
  Health 200
  Radius 25
  Height 42
  Mass 100000
  +SOLID
  +SHOOTABLE
  +Pushable
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +FloatBob
  +ACTIVATEMCROSS
  +DONTGIB
  +NOICEDEATH
  +EXTREMEDEATH
  DeathSound "weapons/bfgx"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright
    Loop
  Death:
	BFE1 A 4 Bright A_Scream
	BFE1 B 4 Bright 
    BFE1 C 4 Bright A_BFGSpray("BFGExtra", 40, 85)
    BFE1 D 4 Bright A_Explode(60, 120, 0)
	BFE1 EF 4 Bright 
    Stop
  }
}

ACTOR RedEnergyBall 14562
{
  //$Category Orbs
  Translation "112:127=176:191"
  Health 200
  Radius 25
  Height 42
  Mass 100000
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +FloatBob
  +ACTIVATEMCROSS
  +DONTGIB
  +Pushable
  +NOICEDEATH
  +EXTREMEDEATH
  DeathSound "weapons/bfgx"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright
    Loop
  Death:
	BFE1 A 4 Bright A_Scream
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright A_Explode(60, 120, 0)
	BFE1 EF 4 Bright 
    Stop
  }
}

ACTOR BlueEnergyBall 14568
{
  //$Category Orbs
  Translation "112:127=192:207"
  Health 200
  Radius 25
  Height 42
  Mass 100000
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +FloatBob
  +ACTIVATEMCROSS
  +DONTGIB
  +Pushable
  +NOICEDEATH
  +EXTREMEDEATH
  DeathSound "weapons/bfgx"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright
    Loop
  Death:
	BFE1 A 4 Bright A_Scream
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright A_Explode(60, 120, 0)
	BFE1 EF 4 Bright 
    Stop
  }
}

ACTOR YellowEnergyBall 14571
{
  //$Category Orbs
  Translation "112:127=160:167"
  Health 200
  Radius 25
  Height 42
  Mass 100000
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +FloatBob
  +ACTIVATEMCROSS
  +DONTGIB
  +Pushable
  +NOICEDEATH
  +EXTREMEDEATH
  DeathSound "weapons/bfgx"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright
    Loop
  Death:
	BFE1 A 4 Bright A_Scream
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright A_Explode(60, 120, 0)
	BFE1 EF 4 Bright 
    Stop
  }
}


ACTOR ElectricalCurrent 14563
{
  //$Category Stuff
  Radius 13
  Height 170
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +ACTIVATEMCROSS
  hitobituary "%o was Vaporized By an ElectricCurrent."
  States
  {
  Spawn:
    ZOT1 A 0 bright A_PlaySound("MageLightningReady") 
    ZOT1 ABCDE 5 bright A_Explode(20, 20, 0)
    Loop
  }
}

ACTOR ElectricalCurrent2 14569
{
  //$Category Stuff
  Radius 35
  Height 40
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +ACTIVATEMCROSS
  states
  {
  Spawn:
    ZAP7 A 0 bright A_PlaySound("MageLightningReady") 
    ZAP7 ABCDE 1 BRIGHT A_Explode(20, 20, 0)
    loop
  }
}

ACTOR GreenPowerNode 14566
{
  //$Category PowerNode
  Health 10000
  Radius 45
  Height 80
  Scale 3.0
  Mass 100000
  Painchance 1
  Damagefactor "ice", 0.7
  Damagefactor "Fire", 0.7
  Damagefactor "Poison", 0.7
  Damagefactor "Electric", 1.3
  Damagefactor "Explosive", 0.6
  DamageFactor "Bullet", 0.6
  Damagefactor "HEAVENPOWER", 1.0
  Damagefactor "PEXPLOSIVE", 0.6
  Damagefactor "PFire", 0.7
  Damagefactor "PElectric", 1.3
  Damagefactor "PPoison", 0.7
  Damagefactor "PBullet", 0.6
  Monster
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +NOICEDEATH
  +DONTRIP
  +DONTMORPH
  +NOTARGET
  +NEVERRESPAWN
  +STANDSTILL
  +BOSS
  +QUICKTORETALIATE
  +NORADIUSDMG
  +FULLVOLDEATH
  DeathSound "weapons/bfgx"
  PainSound "monster/hadsit"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright A_look
    Loop
  See:
    BFS1 AB 2 bright A_chase
    Loop
  Pain:
    BFS1 A 1 Bright A_pain
	Goto See
  Death:
	BFE1 A 4 Bright A_ScreamAndUnblock
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright 
	BFE1 EF 4 Bright 
    Stop
  }
}

ACTOR BluePowerNode 14570
{
  //$Category PowerNode
  Translation "112:127=192:207"
  Health 10000
  Radius 45
  Height 80
  Scale 3.0
  Mass 100000
  Painchance 1
  Damagefactor "ice", 0.7
  Damagefactor "Fire", 0.7
  Damagefactor "Poison", 0.7
  Damagefactor "Electric", 1.3
  Damagefactor "Explosive", 0.6
  DamageFactor "Bullet", 0.6
  Damagefactor "HEAVENPOWER", 1.0
  Damagefactor "PEXPLOSIVE", 0.6
  Damagefactor "PFire", 0.7
  Damagefactor "PElectric", 1.3
  Damagefactor "PPoison", 0.7
  Damagefactor "PBullet", 0.6
  Monster
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +NOICEDEATH
  +DONTRIP
  +DONTMORPH
  +NOTARGET
  +NEVERRESPAWN
  +STANDSTILL
  +BOSS
  +QUICKTORETALIATE
  +NORADIUSDMG
  +FULLVOLDEATH
  DeathSound "weapons/bfgx"
  PainSound "monster/hadsit"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright A_look
    Loop
  See:
    BFS1 AB 2 bright A_chase
    Loop
  Pain:
    BFS1 A 1 Bright A_pain
	Goto See
  Death:
	BFE1 A 4 Bright A_ScreamAndUnblock
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright 
	BFE1 EF 4 Bright 
    Stop
  }
}

ACTOR YellowPowerNode 14572
{
  //$Category PowerNode
  Translation "112:127=160:167"
  Health 10000
  Radius 45
  Height 80
  Scale 3.0
  Mass 100000
  Painchance 1
  Damagefactor "ice", 0.7
  Damagefactor "Fire", 0.7
  Damagefactor "Poison", 0.7
  Damagefactor "Electric", 1.3
  Damagefactor "Explosive", 0.6
  DamageFactor "Bullet", 0.6
  Damagefactor "HEAVENPOWER", 1.0
  Damagefactor "PEXPLOSIVE", 0.6
  Damagefactor "PFire", 0.7
  Damagefactor "PElectric", 1.3
  Damagefactor "PPoison", 0.7
  Damagefactor "PBullet", 0.6
  Monster
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +NOICEDEATH
  +DONTRIP
  +DONTMORPH
  +NOTARGET
  +NEVERRESPAWN
  +STANDSTILL
  +BOSS
  +NORADIUSDMG
  +FULLVOLDEATH
  DeathSound "weapons/bfgx"
  PainSound "monster/hadsit"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright A_look
    Loop
  See:
    BFS1 AB 2 bright A_chase
    Loop
  Pain:
    BFS1 A 1 Bright A_pain
	Goto See
  Death:
	BFE1 A 4 Bright A_ScreamAndUnblock
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright 
	BFE1 EF 4 Bright 
    Stop
  }
}

ACTOR RedPowerNode 14573
{
  //$Category PowerNode
  Translation "112:127=176:191"
  Health 10000
  Radius 45
  Height 80
  Scale 3.0
  Mass 100000
  Painchance 1
  Damagefactor "ice", 0.7
  Damagefactor "Fire", 0.7
  Damagefactor "Poison", 0.7
  Damagefactor "Electric", 1.3
  Damagefactor "Explosive", 0.6
  DamageFactor "Bullet", 0.6
  Damagefactor "HEAVENPOWER", 1.0
  Damagefactor "PEXPLOSIVE", 0.6
  Damagefactor "PFire", 0.7
  Damagefactor "PElectric", 1.3
  Damagefactor "PPoison", 0.7
  Damagefactor "PBullet", 0.6
  Monster
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +NOGRAVITY
  +FLOAT
  +NOICEDEATH
  +DONTRIP
  +DONTMORPH
  +NOTARGET
  +NEVERRESPAWN
  +STANDSTILL
  +BOSS
  +QUICKTORETALIATE
  +NORADIUSDMG
  +FULLVOLDEATH
  DeathSound "weapons/bfgx"
  PainSound "monster/hadsit"
  obituary "%o was Vaporized By an EnergyBall."
  States
  {
  Spawn:
    BFS1 AB 2 bright A_look
    Loop
  See:
    BFS1 AB 2 bright A_chase
    Loop
  Pain:
    BFS1 A 1 Bright A_pain
	Goto See
  Death:
	BFE1 A 4 Bright A_ScreamAndUnblock
	BFE1 B 4 Bright 
    BFE1 C 4 Bright 
    BFE1 D 4 Bright 
	BFE1 EF 4 Bright 
    Stop
  }
}

//=======================================================================================================================
// Poison Cloud
//=======================================================================================================================

ACTOR PoisonCloud4
{
  Radius 20
  Height 30
  +NOBLOCKMAP
  +NOGRAVITY
  +DROPOFF
  +NODAMAGETHRUST
  +DONTSPLASH
  +FOILINVUL
  +CANBLAST
  +Spectral
  +BLOODLESSIMPACT
  RenderStyle Translucent
  Alpha 0.6
  States
  {
  Spawn:
    PSBG D 1
    PSBG D 1 A_Scream
    PSBG DEEEFFFGGGHHHIIDEEFFFGGGHHHII 2 A_Explode(40,45,0)
    PSBG I 2 A_Explode(40,45,0)
    PSBG I 1 A_Explode(40,45,0)
    Goto DEATH
  Death:
    PSBG HG 7 A_Explode(40,45,0)
    PSBG FD 6 A_Explode(40,45,0)
    Stop
  }
}
Actor ScoutLaser
{
	Speed 40
	Radius 10
	Height 8
	Damage (2)
	Projectile
	MaxStepHeight 4
	Renderstyle Add
	SeeSound "scout/shoot"
	States
	{
		Spawn:
		ZHT2 AABB 2 A_SpawnItemEx("ScoutLaserTrail", -10)
		loop
		Death:
		POW1 FGHIJ 2
		Stop
	}
}

Actor ScoutLaserTrail
{
	+NOTONAUTOMAP
	+CLIENTSIDEONLY
	+NOINTERACTION
	+NOBLOCKMAP
	States
	{
		Spawn:
		ZHT2 AAAABBBB 4 A_FadeOut(0.5)
		Loop
	}
}

Actor RocketTurretTrail : RocketTrail
{
	+CLIENTSIDEONLY
	States
	{
	Spawn:
		VUFY BCBCD 4
		Stop
	}
}

Actor DeathExplosionSmaller
{
+NOGRAVITY
+NOINTERACTION
Renderstyle add
Scale 0.65
States
	{
	Spawn:
		DBOM ABCDEFGHIJK 3 Bright
		Stop
	}
}

Actor MonsterMechbullets : BulletPuff2
{
	DamageType "MonsterMechPewPews"
}

ACTOR PFirey : Firey
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("dronejetpack")
		Goto See
	See:
		TNT1 A 0 A_Jump(170,1)
		Goto See+7
		TNT1 A 0
		TNT1 A 0 A_Jump(85,1)
		Goto See+11
		TNT1 A 0
		TNT1 A 0
		Goto See+15
		//-----------------------
		ZFIR B 5 Bright //A_PlaySound("Barrel/Fire")
		ZFIR A 5 Bright A_SetTranslucent(.4,1)
		ZFIR A 5 Bright A_SetTranslucent(.8,1)
		ZFIR A 1 Bright A_Fadeout(.06)
		Wait
		ZFIR B 5 Bright //A_PlaySound("Barrel/Fire")
		ZFIR B 5 Bright A_SetTranslucent(.4,1)
		ZFIR B 5 Bright A_SetTranslucent(.8,1)
		ZFIR B 1 Bright A_Fadeout(.08)
		Wait
		ZFIR B 5 Bright //A_PlaySound("Barrel/Fire")
		ZFIR C 5 Bright A_SetTranslucent(.4,1)
		ZFIR C 5 Bright A_SetTranslucent(.8,1)
		ZFIR C 1 Bright A_Fadeout(.10)
		Wait
	}
}

// Thunder

//Place them on the map and deactivate them with the DORMANT flag, then activate
//them in certain intervals with some looping acs script.

actor Thunder_GeneratorWhite : SwitchableDecoration 3199
{
	+NoBlockMap +NoGravity +NoInteraction +NoClip -Solid +CLIENTSIDEONLY
        Renderstyle Add
        Height 1
        Radius 1
        Alpha 0.2
        Scale 4.0
        states
        {
        Spawn:
           Active:
                TNT1 A 0 
		TNT1 A 0 A_PlaySoundEx("thunder/hit", "Voice", 0, 2)                
                TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("Thunder_Spark", 0, 0, 0, random(1,10), 0, random(1,10), random(0,359), 129)
                VHND AAAA 1 Bright A_FadeIn(0.2)
                VHND AAAA 2 Bright A_FadeOut(0.2)
                TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1  Bright A_SpawnItemEx("Thunder_Smoke", 0, 0, 0, random(0,3), 0, random(2,3), random(0,359), 128)
                Goto Inactive
           Inactive:
	        TNT1 A 1
	        Loop
        }     
        
}

actor Thunder_GeneratorTan : Thunder_GeneratorWhite 3198
{
        translation "80:111=48:79"
}

actor Thunder_GeneratorGreen : Thunder_GeneratorWhite 3197
{
        translation "80:111=112:127"
}

actor Thunder_GeneratorRed : Thunder_GeneratorWhite 3196
{
        translation "80:111=171:191"
}

actor Thunder_GeneratorBlue : Thunder_GeneratorWhite 3195
{
        translation "80:111=192:207"
}

actor Thunder_GeneratorPink : Thunder_GeneratorWhite 3194
{
        translation "80:111=16:47"
}

Actor Thunder_Spark
{
	Speed 3
	Height 2
	Radius 1
	Mass 0
	+Missile +LowGravity
	RenderStyle Add
	Scale 0.4
	States
	{
	Spawn:
	    TNT1 A 0
            VPRK A 1 A_Jump(80, 4)              
            VPRK A 1 A_Jump(80, 4)              
            VPRK A 1 A_Jump(80, 4)              
	    VPRK A 32 Bright
	    VPRK A 32 Bright
	    VPRK A 32 Bright
	    VPRK A 32 Bright
	    VPRK ABCDEFGHHH 1 Bright A_FadeOut(0.1)
	    Stop
	Death:
	    VPRK ABCDEFGHHH 1 Bright A_FadeOut(0.1)
 	    Stop		
	}
}

Actor Thunder_Smoke
{
    Height 2
    Radius 1
    +Missile +NoGravity +NoInteraction +NoBlockmap
    RenderStyle Translucent
    Alpha .5
    Scale .65
    States
    {
    Spawn:
    	SMK1 IHGFEEDDCCBBBBAAAAAA 2 A_FadeOut(0.05) 
        Stop
    }
}

// TPort


// This is the activatable version

Actor TPortal : SwitchableDecoration // Add a DoomEdNumber as necessary
{
	+CLIENTSIDEONLY
	+NOINTERACTION
	+NOBLOCKMAP
	+NOGRAVITY
	+NOTELEPORT
	+FORCEXYBILLBOARD
	RenderStyle Add
	Alpha 0.8
	Scale 0.25
	States
	{
	Spawn:
	Active:
		TNT1 AAAAA 7 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,172)
		TNT1 A 0 A_SetTranslucent(0.1,1)
		TNT1 A 0 A_PlaySound("TPortalAppear")
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.2,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.3,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.4,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.5,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.6,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.7,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.8,1)
		goto Activated
	Activated:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("TPortalLoop",5,1,1)
		goto Ready
	Ready:
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		loop
	Inactive:
		TNT1 A 0 A_StopSound(5)
		TNT1 A 0 A_PlaySound("TPortalFade")
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.8,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.7,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.6,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.5,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.4,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.3,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.2,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.1,1)
		TNT1 AAA 7 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,144)
		goto Inactivated
	Inactivated:
		TNT1 A 1
		loop
	}
}

// Spawn this for a permanent portal

Actor TPortalPermanent : TPortal // Add a DoomEdNumber as necessary
{
	States
	{
	Spawn:
		goto Activated
	}
}

// Spawn this for a temporary portal. It takes 77 tics to fully appear, so if it needs to spawn something, 
// delay it by this amount, or spawn it directly from DECORATE

Actor TPortalTemporary : TPortal // Add a DoomEdNumber as necessary
{
	//SpawnID - give one
	States
	{
	Spawn:
	Active:
		TNT1 AAAAA 7 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,172)
		TNT1 A 0 A_SetTranslucent(0.1,1)
		TNT1 A 0 A_PlaySound("TPortalAppear")
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.2,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.3,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.4,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.5,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.6,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.7,1)
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_SetTranslucent(0.8,1)
		goto Activated
	Activated:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("TPortalLoop",5,1,1)
		TNT1 A 0 A_GiveInventory("Counter",25)
		goto Ready
	Ready:
		TNT1 A 0 A_JumpIfInventory("Counter",1,1)
		goto Inactive
		ORBP ABCDCB 1 bright Light("TPortNormal") A_SpawnItem("TPortMistSpawner",0,32)
		ORBP A 0 A_SpawnItemEx("TPortLightningWaveSpawner",0,0,32,0,0,0,0,0,160)
		TNT1 A 0 A_TakeInventory("Counter",1)
		loop
	}
}

Actor Counter : Inventory
{
	Inventory.MaxAmount 255
}

//***************//
// Support Actors//
//***************//

Actor VisualSpecialEffect
{
	+CLIENTSIDEONLY
	+NOINTERACTION
	+NOBLOCKMAP
	+NOGRAVITY
	+NOTELEPORT
	+FORCEXYBILLBOARD
}

Actor TPortMist : VisualSpecialEffect
{
	RenderStyle Add
	Alpha 0.25
	Scale 0.225
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_Jump(256,1,2,3,4,5,6,7,8,9,10)
	Loopy:
		VIST ABCDEFGHIJKLMOOPQR 1 bright A_FadeOut(0.01)
		loop
	}
}

Actor TPortMistSpawner : VisualSpecialEffect
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AA 0 A_SpawnItemEx("TPortMist",Random(-14,14),Random(-14,14),Random(-14,14),0.012*Random(-50,50),0.012*Random(-50,50),0.012*Random(-50,50),0,0,24)
		stop
	}
}

Actor TPortLightning : VisualSpecialEffect
{
	RenderStyle Add
	Alpha 0.7
	States
	{
	Spawn:
		TNT1 A 0 // Huh, that's the jump...
		TNT1 A 0 A_Jump(256,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72)
	Select:
		BLL1 ABCDEFGHIJKLMNOPQR 0 A_Jump(256,"Fade")
		BLL2 ABCDEFGHIJKLMNOPQR 0 A_Jump(256,"Fade")
		BLL3 ABCDEFGHIJKLMNOPQR 0 A_Jump(256,"Fade")
		BLL4 ABCDEFGHIJKLMNOPQR 0 A_Jump(256,"Fade")
	Fade:
		"----" A 1 bright A_FadeOut(0.15)
		loop
	}
}

Actor TPortLightningSmall : TPortLightning
{
	Scale 0.2
}

Actor TPortLightningMedium : TPortLightning
{
	Scale 0.3
}

Actor TPortLightningLarge : TPortLightning
{
	Scale 0.4
}

Actor TPortLightningHuge : TPortLightning
{
	Scale 0.5
}

// A wave of lightning
Actor TPortLightningWave : VisualSpecialEffect
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_SpawnItemEx("TPortLightningSmall",Random(-2,2),Random(-2,2),Random(-2,2),0,0,0,0,0,32)
		TNT1 A 0 A_SpawnItemEx("TPortLightningMedium",Random(-3,3),Random(-3,3),Random(-3,3),0,0,0,0,0,56)
		TNT1 A 0 A_SpawnItemEx("TPortLightningLarge",Random(-4,4),Random(-4,4),Random(-3,3),0,0,0,0,0,96)
		TNT1 A 0 A_SpawnItemEx("TPortLightningHuge",Random(-5,5),Random(-5,5),Random(-5,5),0,0,0,0,0,144)
		stop
	}
}

// Spawns lightning waves
Actor TPortLightningWaveSpawner : VisualSpecialEffect
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("TPortalZap")
		TNT1 A 2 Light("TPortZap") A_SpawnItem("TPortLightningWave")
		TNT1 A 1 Light("TPortZap") A_SpawnItem("TPortLightningWave")
		TNT1 A 3 Light("TPortZap") A_SpawnItem("TPortLightningWave")
		TNT1 A 5 Light("TPortZap") A_SpawnItem("TPortLightningWave")
		TNT1 A 1 Light("TPortZap") A_SpawnItem("TPortLightningWave")
		TNT1 A 2 Light("TPortZap") A_SpawnItem("TPortLightningWave")
		TNT1 A 4 A_SpawnItem("TPortLightningWave")
		stop
	}
}

/// Aldhi Things Pack

Actor deadtreething1 14574
{
  +Solid
  +floorclip
  Radius 12
  Height 32
  States
  {
  Spawn:
    DTXZ A -1
    Stop
  }
}

Actor deadtreething2 14575
{
  +Solid
  +floorclip
  Radius 12
  Height 32
  States
  {
  Spawn:
    DTZV A -1
    Stop
  }
}

Actor deadtreething3 14576
{
  +Solid
  +floorclip
  Radius 12
  Height 32
  States
  {
  Spawn:
    DTGZ A -1
    Stop
  }
}

Actor deadtreething4 14577
{
  +Solid
  +floorclip
  Radius 12
  Height 32
  States
  {
  Spawn:
    DTGH A -1
    Stop
  }
}

Actor PALMTREEX 14578
{
  +Solid
  +forceybillboard
  Radius 12
  Height 200
  scale 1.5
  States
  {
  Spawn:
    TRPC A -1
    Stop
  }
}

Actor ShamanStandard 14579
{
  +Solid
  +floorclip
  Radius 12
  Height 40
  SCALE .5
  States
  {
  Spawn:
    XKKX A -1
    Stop
  }
}

Actor LargePopcornSack 14580
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    FTCR A -1
    Stop
  }
}

Actor Popcorn 14581
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    PCRN A -1
    Stop
  }
}

Actor OctoberTreeX 14582
{
  +Solid
  +forceybillboard
  Radius 12
  Height 200
  States
  {
  Spawn:
    SIOY A -1
    Stop
  }
}

Actor PopcornBit1 14583
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    KERZ A -1
    Stop
  }
}

Actor PopcornBit2 14584
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    KERH A -1
    Stop
  }
}

Actor PopcornBit3 14585
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    KERT A -1
    Stop
  }
}

Actor PopcornBit4 14586
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    KERN A -1
    Stop
  }
}

Actor PopcornCluster 14587
{
  Radius 12
  Height 32
  scale .3
  +floorclip
  States
  {
  Spawn:
    CLS2 A -1
    Stop
  }
}

Actor smallbushZX 14588
{
  +Solid
  +floorclip
  Radius 12
  Height 32
  States
  {
  Spawn:
    BZSH A -1
    Stop
  }
}

Actor smallbushZX2 14589
{
  +Solid
  +floorclip
  Radius 12
  Height 32
  States
  {
  Spawn:
    SZRB A -1
    Stop
  }
}

Actor NiceFallTree 14590
{
  +Solid
  +floorclip
  Radius 12
  Height 100
  States
  {
  Spawn:
    CFLQ A -1
    Stop
  }
}

ACTOR CheesePuffBag 14591
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +FLOORCLIP
  +floorclip
  States
  {
  Spawn:
    CHZB A -1
    Stop
  }
}

ACTOR CheesePuff 14592
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    CHZP A -1
    Stop
  }
}

ACTOR CheesePuffCluster 14593
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    CHZL A -1
    Stop
  }
}

ACTOR OrangeCrystalX 14594
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CRTZ A -1
    Stop
  }
}

ACTOR GreenCrystalX 14595
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CRSG A -1
    Stop
  }
}

ACTOR BlueCrystalX 14596
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CRSB A -1
    Stop
  }
}

ACTOR GreenBoxX 14597
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    ADXG A -1
    Stop
  }
}

ACTOR SilverBoxX 14598
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    ADZS A -1
    Stop
  }
}

ACTOR OrangeCrystalXsmall 14599
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    CRTZ A -1
    Stop
  }
}

ACTOR GreenCrystalXsmall 14600
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    CRSG A -1
    Stop
  }
}

ACTOR BlueCrystalXsmall 14601
{
  Game Doom
  Radius 16
  Height 56
  scale .5
  +floorclip
  States
  {
  Spawn:
    CRSB A -1
    Stop
  }
}

ACTOR CandyThing 14602
{
  Game Doom
  Radius 16
  Height 56
  scale .3
  +floorclip
  States
  {
  Spawn:
    CNDY A -1
    Stop
  }
}

Actor BlackHorse 14603
{
  +Solid
  +floorclip
  Height 30
  Radius 30
  Mass 24
  scale 0.7
  States
  {
  Spawn:
    BLHS A -1
    Stop
  }
}

Actor BrownHorse 14604
{
  +Solid
  +floorclip
  Height 30
  Radius 30
  Mass 24
  scale 0.7
  States
  {
  Spawn:
    BRHS A -1
    Stop
  }
}

Actor WhiteHorse 14605
{
  +Solid
  +floorclip
  Height 30
  Radius 30
  Mass 24
  scale 0.7
  States
  {
  Spawn:
    WHHS A -1
    Stop
  }
}

ACTOR ALDHIrosebush 14606
{
  Radius 20
  Height 20
  scale .5
  States
  {
  Spawn:
    ALZB A -1
    Stop
  }
}

ACTOR LilacBush 14607
{
  Radius 20
  Height 20
  States
  {
  Spawn:
    ALKH A -1
    Stop
  }
}

ACTOR ALDHITREE1 14608
{
  Radius 17
  Height 63
  +SOLID
  States
  {
  Spawn:
    AZTR A -1
    Stop
  }
}

ACTOR Yeemow 14609
{
  Radius 17
  Height 30
  SCALE 0.5
  +SOLID
  States
  {
  Spawn:
    MKTY A -1
    Stop
  }
}

ACTOR XCloud1 14610
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDZ A -1
    Stop
  }
}

ACTOR XCloud2 14611
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDQ A -1
    Stop
  }
}

ACTOR XCloud3 14612
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDX A -1
    Stop
  }
}

ACTOR XCloud4 14613
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDY A -1
    Stop
  }
}

ACTOR skyboXCloud1 14614
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDZ A -1
    Stop
  }
}

ACTOR skyboXCloud2 14615
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDQ A -1
    Stop
  }
}

ACTOR skyboXCloud3 14616
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDX A -1
    Stop
  }
}

ACTOR skyboXCloud4 14617
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDY A -1
    Stop
  }
}

ACTOR skyboXCloud1large 14618
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDZ A -1
    Stop
  }
}

ACTOR skyboXCloud2large 14619
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDQ A -1
    Stop
  }
}

ACTOR skyboXCloud3large 14620
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDX A -1
    Stop
  }
}

ACTOR skyboXCloud4large 14621
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  MASS 0
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDY A -1
    Stop
  }
}

ACTOR XCloud1large 14622
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  //scale 2
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDZ A -1
    Stop
  }
}

ACTOR XCloud2large 14623
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  scale 2
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDQ A -1
    Stop
  }
}

ACTOR XCloud3large 14624
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  scale 2
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDX A -1
    Stop
  }
}

ACTOR XCloud4large 14625
{
  Game Doom
  Radius 16
  Height 56
  MASS 0
  scale 2
  +FORCEXYBILLBOARD
  +NOGRAVITY
  +NOTONAUTOMAP
  States
  {
  Spawn:
    CLDY A -1
    Stop
  }
}

ACTOR SkyboxWolf 14626
{
  Game Doom
  Radius 16
  scale 0.01
  Height 56
  States
  {
  Spawn:
    HOWL A -1
    Stop
  }
}

ACTOR SkyboxWolf2 14627
{
  Game Doom
  Radius 16
  scale 0.05
  Height 56
  States
  {
  Spawn:
    HOWL A -1
    Stop
  }
}

ACTOR SkyboxTree 14628
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  States
  {
  Spawn:
    SKTY A -1
    Stop
  }
}

ACTOR SkyboxTree2 14629
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  States
  {
  Spawn:
    SKTY A -1
    Stop
  }
}

ACTOR SkyboxPine 14630
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  States
  {
  Spawn:
    PINX A -1
    Stop
  }
}

ACTOR SkyboxPine2 14631
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  States
  {
  Spawn:
    PINX A -1
    Stop
  }
}

ACTOR SkyboxPine3 14632
{
  Game Doom
  Radius 16
  Height 56
  scale 0.1
  States
  {
  Spawn:
    PIKX A -1
    Stop
  }
}

ACTOR SkyboxPine4 14633
{
  Game Doom
  Radius 16
  Height 56
  scale 0.05
  States
  {
  Spawn:
    PIKX A -1
    Stop
  }
}

ACTOR SkyboxPine5 14634
{
  Game Doom
  Radius 16
  Height 56
  scale 0.01
  States
  {
  Spawn:
    PIKX A -1
    Stop
  }
}

ACTOR PineTree 14635
{
  Game Doom
  Radius 16
  Height 180
  +SOLID
  +FORCEYBILLBOARD
  States
  {
  Spawn:
    PINX A -1
    Stop
  }
}

ACTOR PineTreeLarge 14636
{
  Game Doom
  Radius 16
  Height 200
  Scale 1.5
  +SOLID
  +FORCEYBILLBOARD
  States
  {
  Spawn:
    PINX A -1
    Stop
  }
}

ACTOR PineTreeSmall 14637
{
  Game Doom
  Radius 16
  Height 100
  Scale 0.6
  +SOLID
  +FORCEYBILLBOARD
  States
  {
  Spawn:
    PINX A -1
    Stop
  }
}

ACTOR BlackTree 14638
{
  Game Doom
  Radius 16
  Height 100
  Scale 0.6
  +SOLID
  States
  {
  Spawn:
    SKTY A -1
    Stop
  }
}

ACTOR normalkitchenknife1 14639
{
  Radius 20
  Height 20
  +floorclip
  States
  {
  Spawn:
    DKNF A -1
    Stop
  }
}

ACTOR ALDHIFERNS 14640
{
  Radius 20
  Height 20
  +floorclip
  States
  {
  Spawn:
    ZFER A -1
    Stop
  }
}

ACTOR smalltreez 14641
{
  Radius 17
  Height 63
  +SOLID
  States
  {
  Spawn:
    TRKZ A -1
    Stop
  }
}

Actor WesternChair 14642
{
  +FloorClip
  +Solid
  Height 30
  Radius 15
  States
  {
  Spawn:
    WESC A -1
    Stop
  }
}

ACTOR clowntree 14643
{
  Radius 16
  Height 56
  SCALE 0.7
  +floorclip
  +SOLID
  States
  {
  Spawn:
    CLFT M -1
    Stop
  }
}

ACTOR clowndoll1 14644
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CDLK A -1
    Stop
  }
}

ACTOR clowndoll2 14645
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CDLY A -1
    Stop
  }
}

ACTOR clowndoll3 14646
{
  Game Doom
  Radius 16
  Height 56
  +floorclip
  +SOLID
  States
  {
  Spawn:
    CDLV A -1
    Stop
  }
}

ACTOR clowndoll4 14647
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CDLX A -1
    Stop
  }
}

ACTOR clowndoll5 14648
{
  Game Doom
  Radius 16
  Height 56
  +SOLID
  +floorclip
  States
  {
  Spawn:
    CDLZ A -1
    Stop
  }
}

Actor Decoyskull 14649
{
  -Solid
  Scale 0.4
  Height 30
  Radius 15
  Mass 0
  +NOGRAVITY
  States
  {
  Spawn:
    DWSK A -1
    Stop
  }
}

Actor AldhiDoll 14650
{
  Radius 12
  Height 32
  scale .5
  +floorclip
  States
  {
  Spawn:
    ADOL A -1
    Stop
  }
}

ACTOR Aldhivas 5785
{
	Health 2700
	Height 64
	Radius 22
	Speed 37
	PainChance 60
	ReactionTime 11
	Mass 270
	SCALE 1.2
	MONSTER
	+FLOORCLIP
	SeeSound "Grunt/See"
	AttackSound "Vile/Attack"
	PainSound "Vile/Pain"
	DeathSound "Vile/Death"
	ActiveSound "Vile/Active"
	Obituary "%o stood no chance against Aldhivas."
	States
	{
	Spawn:
		ALDH AB 8 A_LOOK
		LOOP
	See:
		ALDH AABBCCDD 4 A_FastChase
		LOOP
	Missile:
		ALDH E 8 A_FaceTarget
		ALDH E 2 A_Jump(64,4)
		ALDH F 6 A_CustomMissile("DepthSeeker", 37, 0, 0)
		ALDH E 6 A_FaceTarget
		ALDH F 6 A_CustomMissile("DepthSeeker", 37, 0, 0)
		Goto See
		ALDH E 8 A_FaceTarget
		ALDH F 4 A_CustomMissile("Inergy", 37, 0, 0)
		ALDH F 4 A_CustomMissile("Inergy", 37, 0, 5)
		ALDH F 4 A_CustomMissile("Inergy", 37, 0, -5)
		Goto See
	Pain:
		ALDH G 3
		ALDH G 3 A_Pain
		Goto See
	Death:
		ALDH H 5
		ALDH I 5 A_Scream
		ALDH J 5
		ALDH K 5
		ALDH L 5 A_NoBlocking
		ALDH M 5
		ALDH N -1
		Stop
	Raise:
		ALDH NMLKJIH 5
		Goto See
	}
}

ACTOR DepthSeeker 6001
{
	Height 6
	Radius 12
	Speed 19
	Damage 30
	ExplosionDamage 45
	ExplosionRadius 130
	PROJECTILE
	+SEEKERMISSILE
	SeeSound "Skeleton/Attack"
	DeathSound "Weapons/rocklx"
	States
	{
	Spawn:
		GSHO A 4 A_SeekerMissile (17,24)
		LOOP
	Death:
		GSHO B 5 A_Explode
            GSHO CD 5
		Stop
	}
}

ACTOR Inergy 6002
{
	Height 12
	Radius 12
	Speed 26
	Damage 12
	PROJECTILE
	+RIPPER
	SeeSound "Imp/Attack"
	DeathSound "Imp/ShotX"
	States
	{
	Spawn:
		ASHO AB 8
		LOOP
	Death:
		ASHO CDEF 4
		Stop
	}
}
		

ACTOR HellsBattery 22448
{
MONSTER
+BOSS
- FULLVOLACTIVE
+FLOORCLIP
+NORADIUSDMG
+DONTMORPH
+DONTSQUASH
+DONTBLAST
+DONTGIB
+NOTELEOTHER
Health 4000
Speed 7
Radius 48
Height 128
Scale 0.75
PainChance 32
PainSound "hellsbattery\pain"
SeeSound "hellsbattery\sight"
Obituary "%o was annihilated by Hell's Battery"
Mass 5000
States
{
Spawn:
HELB EE 10 A_Look
Loop
See:
HELB A 0 A_UnSetInvulnerable
HELB A 0 A_PlaySound("hellsbattery\hoof")
HELB AABB 6 A_Chase
HELB C 0 A_PlaySound("hellsbattery\hoof")
HELB CCDD 6 A_Chase
Goto See+1
Missile:
HELB E 0 A_Jump(128, 7)
HELB E 0 A_Jump(128, 1)
Goto Melee

//Chaos Rocket
HELB E 10 A_FaceTarget
HELB K 0 A_PlaySound("hellsbattery\chaos")
HELB L 0 A_CustomMissile("ChaosRocket", 127, 39, 0, 1)
HELB L 8 A_CustomMissile("ChaosRocket", 127, -39, 0, 1)
HELB E 4 A_FaceTarget
Goto See

HELB E 10 A_SetInvulnerable
HELB FGHIJ 10 A_FaceTarget
HELB J 0 A_Jump(128, 8)

//Battery
HELB K 0 A_PlaySound("hellsbattery\battery")
HELB K 0 A_CustomMissile("Nukey", 109, 0, 0)
HELB K 0 A_CustomMissile("Nukey", 109, 11, -16)
HELB K 8 BRIGHT A_CustomMissile("Nukey", 109, -11, 16)
HELB J 0 A_CustomMissile("CannonShell", 96, 0, 180)
HELB J 0 A_CustomMissile("CannonShell", 96, 16, 160)
HELB J 105 A_CustomMissile("CannonShell", 96, -16, 200)
Goto Pain+2

//Hellfire Mortar
HELB N 8  A_PlaySound("hellsbattery\mortar")
HELB J 0 A_CPosRefire
HELB J 24 A_CustomMissile("MortarSpawner", 0, 0, 0)
HELB J 10 A_FaceTarget

HELB N 8  A_PlaySound("hellsbattery\mortar")
HELB J 0 A_CPosRefire
HELB J 24 A_CustomMissile("MortarSpawner", 0, 0, 0)
HELB J 10 A_FaceTarget

HELB N 8  A_PlaySound("hellsbattery\mortar")
HELB J 0 A_CPosRefire
HELB J 24 A_CustomMissile("MortarSpawner", 0, 0, 0)
HELB J 10 A_FaceTarget

HELB N 8  A_PlaySound("hellsbattery\mortar")
HELB J 0 A_CPosRefire
HELB J 24 A_CustomMissile("MortarSpawner", 0, 0, 0)
HELB J 10 A_FaceTarget
Goto Pain+2

Melee:
//Plasma Cluster
HELB E 2 A_FaceTarget
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 71, 39, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 71, -39, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 67, 32, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 67, -32, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 59, 32, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 59, -32, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 56, 39, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 56, -39, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 59, 46, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 59, -46, 0, 1)
HELB M 0 BRIGHT A_CustomMissile("PlasmaBall", 67, 46, 0, 1)
HELB M 2 BRIGHT A_CustomMissile("PlasmaBall", 67, -46, 0, 1)
HELB E 0 A_CPosRefire
Loop

Pain:
HELB E 10 A_Pain
HELB E 0 A_Jump(64, 6)
Goto See

HELB IHGF 10 A_FaceTarget
HELB E 10 A_UnSetInvulnerable
Goto See

HELB E 10 A_FaceTarget
HELB [ 5 BRIGHT
HELB \ 5 BRIGHT
HELB ] 0 BRIGHT A_CustomMissile("HellsFury", 0, -32, 32)    //[TDA] I'm sure i've heard this name before....
HELB ] 5 BRIGHT A_CustomMissile("HellsFury", 0, 32, -32)
HELB \ 5 
HELB [ 5 
HELB E 10
Goto See

Death:
HELB E 5 A_Pain
HELB E 0 A_FaceTarget
HELB E 0 A_CustomMissile("Boomy", 96, 16, -90)
HELB E 4 A_CustomMissile("Boomy", 64, -32, 90)
HELB P 1 A_NoBlocking
TNT1 A 0 A_CustomMissile("HellsBatteryGore", 0, 0, 0)
TNT1 A 10
Stop
}
}

ACTOR HellsBatteryGore 14651
{
MONSTER
+BOSS
- FULLVOLACTIVE
+FLOORCLIP
+NORADIUSDMG
+DONTMORPH
+DONTSQUASH
+DONTBLAST
+DONTGIB
+NOTELEOTHER
Health 500
Speed 4
Radius 48
Height 128
Scale 0.75
PainChance 0
PainSound "hellsbattery\pain"
DeathSound "hellsbattery\death"
Obituary "%o was annihilated by Hell's Battery"
Mass 5000
States
{
Spawn:
HELB OO 2 A_Look
Loop
See:
HELB P 0 A_CustomMissile("HBArm1", 96, 16, -90)
HELB P 0 A_CustomMissile("HBArm2", 64, -32, 90)

HELB Q 0 A_PlaySound("hellsbattery\hoof")
HELB Q 0 A_Jump(128, 2)
HELB Q 0 A_CustomMissile("HBBloodSplatterFX", 96, 16, -90)
HELB Q 5 A_Chase
HELB Q 0 A_Jump(128, 2)
HELB Q 0 A_CustomMissile("BloodSplatterFX2", 64, -32, 0)
HELB Q 5 A_Chase
HELB Q 0 A_Jump(128, 2)
HELB O 0 A_CustomMissile("HBBloodSplatterFX", 96, 16, -90)
HELB O 5 A_Chase
HELB Q 0 A_Jump(128, 2)
HELB O 0 A_CustomMissile("BloodSplatterFX2", 64, -32, 0)
HELB O 5 A_Chase
HELB P 5 A_CustomMissile("HBBloodSplatterFX", 96, 16, -90)
HELB P 5 A_CustomMissile("BloodSplatterFX2", 64, -32, 0)
Goto See+2

Missile:
HELB O 10 A_FaceTarget
HLB2 A 5 BRIGHT
HLB2 B 5 BRIGHT
HLB2 C 5 BRIGHT A_CustomMissile("HellsFury", 0, 0, 0)
HLB2 B 5 
HLB2 A 5 
HELB O 10
Goto See+2

Death:
HELB R 5 A_CustomMissile("BloodSplatterFX", 112, 0, 0)
HELB S 5 A_Scream
HELB T 0 A_CustomMissile("Boomy", 96, -32, 0)
HELB T 5 A_CustomMissile("BloodSplatterFX", 96, 0, 180)
HELB U 5 A_CustomMissile("BloodSplatterFX", 80, 0, 60)
HELB T 0 A_CustomMissile("Boomy", 32, 16, 0)
HELB V 5 A_CustomMissile("BloodSplatterFX", 64, 0, 240)
TNT1 A 0 A_CustomMissile("NukeBoomy", 0, 0, 0)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 0)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -30)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 30)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -60)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 60)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -90)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 90)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -120)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 120)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -150)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 150) 
HELB W 5 A_CustomMissile("BloodSplatterFX", 48, 0, -60)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, 0)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, 30)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, -30)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, 60)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, -60)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, 90)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, -90)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, 120)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, -120)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, 150)
HELB X 0 A_CustomMissile("BloodSplatterFX", 32, 0, -150)
HELB X 5 A_CustomMissile("BloodSplatterFX", 32, 0, 180)
HELB Y 5 A_Fall
HELB Z -1
Stop
}
}

ACTOR HBArm1 14652
{
Radius 8
Height 8
Speed 12
PROJECTILE
- NoGravity
+LowGravity
+DOOMBOUNCE
Damage 0
Scale 0.75
SeeSound "hellsbattery\gore"
States
{
Spawn:
HELG A 0 A_Jump(128, 2)
HELG A 0 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
HELG A 4 
HELG A 0 A_Jump(128, 2)
HELG A 0 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
HELG B 4
HELG A 0 A_Jump(128, 2)
HELG A 0 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
HELG C 4
Loop
Death:
HELG AA -1 A_Gravity
Stop
}
}

ACTOR HBArm2 14653
{
Radius 8
Height 8
Speed 12
PROJECTILE
- NoGravity
+LowGravity
+DOOMBOUNCE
Damage 0
Scale 0.75
SeeSound "hellsbattery\gore"
States
{
Spawn:
HELG A 0 A_Jump(128, 2)
HELG A 0 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
HELG D 4 
HELG A 0 A_Jump(128, 2)
HELG A 0 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
HELG E 4
HELG A 0 A_Jump(128, 2)
HELG A 0 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
HELG F 4
Loop
Death:
HELG DD -1 A_Gravity
Stop
}
}

ACTOR HBBloodSplatterFX 14654
{
+NONSHOOTABLE+NOTELEPORT+NOCLIP+NOBLOCKMAP+NOGRAVITY
RenderStyle None
States
{
Spawn:
TNT1 A 1
TNT1 A 100 A_CustomMissile("BloodSplatterFX", 0, 0, 180)
Stop
}
}

ACTOR CannonShell 14655
{
Radius 1
Height 1
Speed 12
PROJECTILE
+DOOMBOUNCE
Damage 0
Scale 0.15
SeeSound "hellsbattery\cannonshell"
States
{
Spawn:
CNSH A 0 A_Jump(128,3)
CNSH A 0 A_Jump(128,3)
CNSH A 0 A_Jump(128,3)
CNSH A 4 A_Gravity
CNSH B 4
CNSH C 4
CNSH D 4
CNSH E 4
CNSH F 4
CNSH G 4
Goto Spawn+3
Death:
CNSH G 100 A_Gravity
Stop
}
}

ACTOR NukeBoomy 14656
{
Speed 0
+NOBLOCKMAP
+NOGRAVITY
+NOCLIP
+NONSHOOTABLE
ExplosionDamage 32
ExplosionRadius 128
SeeSound "Explode"
Obituary "%o was annihilated by Hell's Battery"
Scale 3.0
States
{
Spawn:
NUKE ABC 4 BRIGHT
NUKE D 4 BRIGHT A_Explode
NUKE EFGHIK 4 BRIGHT
Stop
}
}

ACTOR ChaosRocket 14657
{
Radius 4
Height 8
Speed 12
PROJECTILE
Damage 5
DontHurtShooter
Obituary "%o was annihilated by Hell's Battery"
Scale 0.50
States
{
Spawn:
CHRK A 0 A_PlaySound("hellsbattery\fly")
CHRK ABABAB 2
CHRK A 0 A_PlaySound("hellsbattery\fly")
CHRK AB 2 A_CustomMissile ("Vapor", 0, 0, 0)
CHRK A 0 A_Jump(128, 2)
CHRK A 0 A_CustomMissile ("ChaosCharge", 0, 0, 90)
CHRK A 0 A_Jump(128, 2)
CHRK A 0 A_CustomMissile ("ChaosCharge", 0, 0, 270)
CHRK A 0
//Rinse and repeat
CHRK AB 2 A_CustomMissile ("Vapor", 0, 0, 0)
CHRK A 0 A_Jump(128, 2)
CHRK A 0 A_CustomMissile ("ChaosCharge", 0, 0, 90)
CHRK A 0 A_Jump(128, 2)
CHRK A 0 A_CustomMissile ("ChaosCharge", 0, 0, 270)
CHRK A 0
Goto Spawn+7
Death:
CHRK A 4  BRIGHT A_CustomMissile("Boomy", 0, 0, 0)  
Stop
}
}

ACTOR ChaosCharge 14658
{
Radius 4
Height 4
Speed 8
//PROJECTILE
+NOBLOCKMAP
+DROPOFF
+MISSILE
+NOTELEPORT
+LOWGRAVITY
+DOOMBOUNCE
DONTHURTSHOOTER
Obituary "%o was annihilated by Hell's Battery"
Damage 10
Scale 0.10
States
{
Spawn:
CLST A 4
CLST B 0 A_Jump(128, 2)
CLST B 4 A_Gravity
CLST C 0 A_Jump(128, 2)
CLST C 4 A_Gravity
CLST D 4 A_Gravity
CLST EFABCD 4
Goto Spawn+6
Death:
TRAN A 0 A_PlaySound("Explode")
TRAN A 10 A_CustomMissile("Boomy", 0, 0, 0)
Stop
}
}

ACTOR Nukey 14659
{
Radius 4
Height 8
Speed 12
PROJECTILE
Damage 5
DontHurtShooter
Scale 0.15
Obituary "%o was annihilated by Hell's Battery"
DeathSound "hellsbattery\nuke"
States
{
Spawn:
CRND A 6
CRND A 0 A_CustomMissile("CannonSteam", 0, 0, 0)
CRND AA 4
Goto Spawn+2
Death:
TNT1 A 0
TNT1 A 0 A_CustomMissile("NukeBoomy", 0, 0, 0)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 0)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -30)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 30)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -60)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 60)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -90)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 90)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -120)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 120)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, -150)  
TNT1 A 0 A_CustomMissile("NukeRing", 0, 0, 150)  
TNT1 A 140
Stop
}
}

ACTOR NukeRing 14660
{
Speed 20
+NONSHOOTABLE+NOTELEPORT+NOCLIP+NOBLOCKMAP
RenderStyle None
Obituary "%o was annihilated by Hell's Battery"
States
{
Spawn:
BAL1 AAAAA 8 BRIGHT A_CustomMissile("Boomy", 0, 0, 0)
BAL1 A 140
Stop
}
}

ACTOR CannonSteam 14661
{
Speed 0
+NONSHOOTABLE+NOTELEPORT+NOCLIP+NOBLOCKMAP+NOGRAVITY
RenderStyle Translucent
Alpha 0.25
States
{
Spawn:
STEM ABCDEF 4
STEM GHI 5
STEM GHI 5
STEM GHI 5
STEM GHI 5
Stop
}
}

ACTOR HexMaker 14662
{
Speed 10
RENDERSTYLE None
+SEEKERMISSILE
+NoTarget
States
{
Spawn:
BAL1 A 1
BAL1 A 1 A_Fire
BAL1 E 0 A_CustomMissile("HexMakerB", 0, 0, 0)
BAL1 E 250
Stop
}
}

ACTOR HexMakerB 14663
{
RENDERSTYLE None
Speed 0
States
{
Spawn:
BAL1 E 0
BAL1 E 0 A_CustomMissile("PentFX", 32, 0, 0)
BAL1 E 0 A_CustomMissile("PentFX", 32, 0, 72)
BAL1 E 0 A_CustomMissile("PentFX", 32, 0, -72)
BAL1 E 0 A_CustomMissile("PentFX", 32, 0, 144)
BAL1 E 0 A_CustomMissile("PentFX", 32, 0, -144)
BAL1 E 250
Stop
}
}

ACTOR PentFX 14664
{
PROJECTILE
+DROPOFF
- NoGravity
+FloorHugger
+NoClip
Speed 12
RenderStyle None
States
{
Spawn:
BAL1 Z 12
BAL1 Z 0 BRIGHT A_CustomMissile("PentFX2", 0, 0, 17)
BAL1 Z 0 BRIGHT A_CustomMissile("PentFX2", 0, 0, -17)
Stop
}
}

ACTOR PentFX2 14665
{
Speed 12
PROJECTILE
+DROPOFF
- NoGravity
+FloorHugger
+NoClip
RenderStyle None
States
{
Spawn:
BAL1 AAAAAA 2 BRIGHT A_CustomMissile("PentFXTail", 0, 0, 0)
Stop
}
}

ACTOR OldPentFXTail 14666
{
Speed 0
Monster
+NONSHOOTABLE+NOTELEPORT+NOCLIP+NOBLOCKMAP
RenderStyle None
States
{
Spawn:
BAL1 AA 1 A_Look
Loop
See:
BAL1 AAAA 16 A_CustomMissile("TargetFire", 0, 0, 0)
Stop
}
}

ACTOR TargetFire 14667
{
Speed 0
+LOWGRAVITY
+NONSHOOTABLE
+NOTELEPORT
+NOCLIP
+NOBLOCKMAP
RenderStyle Add
Alpha 0.3
SeeSound "world/largefire"
States
{
Spawn:
TRGF ABCD 3 BRIGHT
TRGF ABCD 3 BRIGHT
TRGF ABCD 3 BRIGHT
TRGF ABCD 3 BRIGHT
TRGF ABCD 3 BRIGHT
Stop
}
}

ACTOR MortarSpawner 14668
{
Speed 10
RENDERSTYLE None
+SEEKERMISSILE
+NoTarget
Obituary "%o was annihilated by Hell's Battery"
MissileType MortarShell
States
{
Spawn:
BAL1 A 1
BAL1 A 35 A_Fire
BAL1 A 40 A_PlaySound("hellsbattery\incoming")
BAL1 A 1 A_MissileAttack
BAL1 A 140
Stop
}
}

ACTOR MortarShell 14669
{
Speed 0
Damage 10
ExplosionDamage 32
ExplosionRadius 128
PROJECTILE
+SEEKERMISSILE
+SpawnCeiling
+CeilingHugger
- NoGravity
Obituary "%o was annihilated by Hell's Battery"
Scale 0.15
States
{
Spawn:
CRND AA 4
Loop
Death:
TNT1 A 1
TNT1 A 0 A_CustomMissile("NukeBoomy", 0, 0, 0)  
TNT1 A 0 A_CustomMissile("HexMakerB", 0, 0, 0)  
TNT1 A 140
Stop
}
}

ACTOR PentFXTail 14670
{
Speed 0
Monster
+NONSHOOTABLE+NOTELEPORT+NOCLIP+NOBLOCKMAP
MeleeDamage 1
RenderStyle None
States
{
Spawn:
BAL1 AA 1 A_Look
Loop
See:
BAL1 A 16 A_CustomMissile("TargetFire", 0, 0, 0)
BAL1 A 0 A_MeleeAttack
BAL1 A 16 A_CustomMissile("TargetFire", 0, 0, 0)
BAL1 A 0 A_MeleeAttack
BAL1 A 16 A_CustomMissile("TargetFire", 0, 0, 0)
BAL1 A 0 A_MeleeAttack
BAL1 A 16 A_CustomMissile("TargetFire", 0, 0, 0)
BAL1 A 0 A_MeleeAttack
Stop
}
}

ACTOR HellsFury 14671       //[TDA] Oh, dear. That's Monster Resource WAD compatability out of the window
{
PROJECTILE
+DROPOFF
- NoGravity
+FloorHugger
+SeekerMissile
+Ripper
Speed 12
RenderStyle Add
Alpha 0.75
Damage 1
States
{
Spawn:
HBFR ABC 4 BRIGHT A_CustomMissile("PentFXTail", 0, 0, 0)
HBFR A 0 A_SeekerMissile (10, 20)
Loop
Death:
HBFR ABC 4
Stop
}
}

ACTOR Vapor 14672
{
Speed 0
+NOGRAVITY+NONSHOOTABLE+NOTELEPORT+NOCLIP+NOBLOCKMAP
RenderStyle Translucent
Alpha 0.2
Scale 0.25
States
{
Spawn:
VAPR HGFEDCBA 4
Stop
}
}

ACTOR Boomy 14673
{
Speed 0
+NOBLOCKMAP
+NOGRAVITY
+NOCLIP
+NONSHOOTABLE
ExplosionDamage 32
ExplosionRadius 128
SeeSound "misc/explode"
States
{
Spawn:
BBOM A 2 BRIGHT 
BBOM B 2 BRIGHT A_Explode
BBOM C 2 BRIGHT
BBOM D 2 BRIGHT
BBOM E 2 BRIGHT
BBOM F 2 BRIGHT
BBOM G 2 BRIGHT
BBOM H 2 BRIGHT
BBOM I 2 BRIGHT
BBOM J 2 BRIGHT
BBOM K 2 BRIGHT
BBOM L 2 BRIGHT
BBOM M 2 BRIGHT
BBOM N 2 BRIGHT
Stop
}
}

ACTOR BloodSplatterFX 14674
{
Radius 1
Height 1
Speed 8
PROJECTILE
- NoGravity
+LowGravity
+Ripper
Damage 0
DeathSound "misc/bloodsplatter"
States
{
Spawn:
BLUD AB 4
Loop
Death:
BLD2 CDEFG 4 A_Gravity
BLD2 H 350
Stop
}
}

ACTOR BloodSplatterFX2 14675
{
Radius 1
Height 1
Speed 0
PROJECTILE
- NoGravity
+LowGravity
+Ripper
Damage 0
DeathSound "misc/bloodsplatter"
States
{
Spawn:
BLUD AB 4
Loop
Death:
BLD2 CDEFG 4 A_Gravity
BLD2 H 350
Stop
}
}

ACTOR itballoon1 14676
{
  Radius 17
  Health 1
  Height 70
  Mass 25
  DeathSound "itballoon\xballoonpop"
  +SHOOTABLE +NOGRAVITY +HEXENBOUNCE +PUSHABLE +FloatBob +SPAWNFLOAT 
  +NOLIFTDROP +DONTOVERLAP +CANNOTPUSH +NOBLOCKMONST    
  
  States
    {
    Spawn:
        BNYL A 1 
        Loop
	Death:
        BNYL B 1 A_PlaySound("itballoon\xballoonpop")
		BNYL C 1
		stop
	}

}

ACTOR itballoon2 14677
{
  Radius 17
  Health 1
  Height 70
  Mass 25
  DeathSound "itballoon\xballoonpop"
  +SHOOTABLE +NOGRAVITY +HEXENBOUNCE +PUSHABLE +FloatBob +SPAWNFLOAT 
  +NOLIFTDROP +DONTOVERLAP +CANNOTPUSH +NOBLOCKMONST    
  
  States
    {
    Spawn:
        BFRL A 1 
        Loop
	Death:
        BFRL B 1 A_PlaySound("itballoon\xballoonpop")
		BFRL C 1
		stop
	}

}

ACTOR itballoon3 14678
{
  Radius 17
  Health 1
  Height 70
  Mass 25
  DeathSound "itballoon\xballoonpop"
  +SHOOTABLE +NOGRAVITY +HEXENBOUNCE +PUSHABLE +FloatBob +SPAWNFLOAT 
  +NOLIFTDROP +DONTOVERLAP +CANNOTPUSH +NOBLOCKMONST    
  
  States
    {
    Spawn:
        XBYL A 1 
        Loop
	Death:
        XBYL B 1 A_PlaySound("itballoon\xballoonpop")
		XBYL C 1
		stop
	}

}

ACTOR itballoon4 14679
{
  Radius 17
  Health 1
  Height 70
  Mass 25
  DeathSound "itballoon\xballoonpop"
  +SHOOTABLE +NOGRAVITY +HEXENBOUNCE +PUSHABLE +FloatBob +SPAWNFLOAT 
  +NOLIFTDROP +DONTOVERLAP +CANNOTPUSH +NOBLOCKMONST    
  
  States
    {
    Spawn:
        YBYK A 1 
        Loop
	Death:
        YBYK B 1 A_PlaySound("itballoon\xballoonpop")
		YBYK C 1
		stop
	}

}

ACTOR FakeSoulsphere 14680
{
  Radius 17
  Height 17
  Mass 25
  States
  {
  Spawn:
    SOUL ABCDCB 6 Bright
    Loop
  }
}

ACTOR FakeMegasphere 14681
{
  Radius 17
  Height 17
  Mass 25
  States
  {
  Spawn:
    MEGA ABCD 6 Bright
    Loop
  }
}

ACTOR FakeInvisSphere 14682
{
  Radius 17
  Height 17
  Mass 25
  States
  {
  Spawn:
    PINS ABCD 6 Bright
    Loop
  }
}

ACTOR FakeInvulSphere 14683
{
  Radius 17
  Height 17
  Mass 25
  States
  {
  Spawn:
    PINV ABCD 6 Bright
    Loop
  }
}

ACTOR FloppyDiskX 14684
{
  Radius 17
  Height 17
  Mass 25
  Scale .3
	States
	{
	Spawn:
		FLPY A -1
		loop
	}
}

Actor WeirdSpikes1 14685
{
  +Solid
  +floorclip
  +NOTONAUTOMAP
  Radius 30
  Height 100
  States
  {
  Spawn:
    SPKK A -1
    Stop
  }
}

Actor WeirdSpikes2 14686
{
  +Solid
  +floorclip
  +NOTONAUTOMAP
  Radius 30
  Height 100
  States
  {
  Spawn:
    SPKX A -1
    Stop
  }
}

Actor WeirdSpikes3 14687
{
  +Solid
  +floorclip
  +NOTONAUTOMAP
  Radius 30
  Height 100
  States
  {
  Spawn:
    ZPKY A -1
    Stop
  }
}

Actor WeirdSpikes2large 14688
{
  +Solid
  +floorclip
  +NOTONAUTOMAP
  Radius 60
  Height 150
  scale 2
  States
  {
  Spawn:
    SPKX A -1
    Stop
  }
}

Actor WeirdSpikes3large 14689
{
  +Solid
  +floorclip
  +NOTONAUTOMAP
  Radius 60
  Height 150
  scale 2
  States
  {
  Spawn:
    ZPKY A -1
    Stop
  }
}

Actor PitSpikes 14690
{
  +floorclip
  +NOTONAUTOMAP
  Radius 30
  Height 100
  States
  {
  Spawn:
    SPKX A -1
    Stop
  }
}

Actor WeirdThingX 14691
{
  +Solid
  +floorclip
  +NOTONAUTOMAP
  Radius 30
  Height 200
  scale 2
  States
  {
  Spawn:
    XXVX A -1
    Stop
  }
}

Actor WeirdThingXTall 14692
{
  +Solid
  +floorclip
  +FORCEYBILLBOARD
  +NOTONAUTOMAP
  Radius 30
  Height 400
  scale 3
  States
  {
  Spawn:
    RXXV A -1
    Stop
  }
}

ACTOR FloppyDiskXGhost 14693
{
  -Solid
  Radius 17
  Height 17
  Mass 0
  Scale .3
  +NOGRAVITY
	States
	{
	Spawn:
		FLPY A -1
		loop
	}
}

ACTOR FloppyDiskXGhostSpecial 14694
{
  -Solid
  Radius 17
  Height 17
  Mass 0
  Scale .3
  +NOGRAVITY
  +FORCEYBILLBOARD
  +NOTONAUTOMAP
	States
	{
	Spawn:
		FLPY A -1
		loop
	}
}

ACTOR SpecialGargoyleStatue 14695
{
	height 118
	radius 19
	+SOLID
	+FORCEYBILLBOARD
	+NOTONAUTOMAP
	states
	{
	spawn:
		XFXF A -1
		Stop
	}
}

ACTOR TINIESTSKULL1 14696
{
	height 2
	radius 2
	-solid
	states
	{
	spawn:
		TKKA A -1
		Stop
	}
}

ACTOR TIINIESTSKULL2 14697
{
	height 2
	radius 2
	-solid
	states
	{
	spawn:
		TKKB A -1
		Stop
	}
}

ACTOR SMALLKEYSKULL1 14698
{
	height 2
	radius 2
	-solid
	+NOTONAUTOMAP
	states
	{
	spawn:
		YSKU A -1
		Stop
	}
}

ACTOR SMALLKEYSKULL2 14699
{
	height 2
	radius 2
	-solid
	+NOTONAUTOMAP
	states
	{
	spawn:
		RSKU A -1
		Stop
	}
}

ACTOR TinyKeypySkullZ1Small 14700
{
	height 2
	radius 2
	scale .5
	-solid
	states
	{
	spawn:
		RSKU A -1
		Stop
	}
}

ACTOR TinyKeypySkullZ2Small 14701
{
	height 2
	radius 2
	Scale .5
	-solid
	states
	{
	spawn:
		YSKU A -1
		Stop
	}
}

ACTOR FileNotFound 14702
//qqusa oqcul qirlc vstrw wyrwd hafbv pausp cpjbv tjjoo cmsnf wobqv xfnrq xwpuc mtjwo nufvk qzviz ea
{
  -solid
  Radius 17
  Height 17
  Mass 25
  Scale .3
	States
	{
	Spawn:
		ZAMG A -1
		loop
	}
}

// End of Aldhi Things Pack

// Dark Monsters Set

Actor Illus
{
  Health 70
  Radius 20
  Height 56
  Mass 250
  Speed 10
  BloodColor "00 00 01"
  Monster
  RenderStyle Translucent
  Alpha 0.8
  MaxTargetRange 512
  MeleeDamage 8
  +FloorClip
  +LOOKALLAROUND
  +BOSS
  +DROPOFF
  SeeSound "Illus/Sight"
  DeathSound "Illus/Death"
  ActiveSound "Illus/Active"
  MeleeSound "Illus/Melee"
  Obituary "%o is one with the true darkness now."
  States
  {
  Spawn:
    ILLS AAAAAAAAAABBBBBBBBBB 1 Bright A_Look
    Loop
  See:
    ILLS A 3 Bright A_Chase
    ILLS A 0 Bright A_SpawnItemEx("IllusImageA", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS A 3 Bright A_Chase
    ILLS A 0 Bright A_SpawnItemEx("IllusImageA", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS B 3 Bright A_Chase
    ILLS B 0 Bright A_SpawnItemEx("IllusImageB", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS B 3 Bright A_Chase
    ILLS B 0 Bright A_SpawnItemEx("IllusImageB", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS C 3 Bright A_Chase
    ILLS C 0 Bright A_SpawnItemEx("IllusImageC", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS C 3 Bright A_Chase
    ILLS C 0 Bright A_SpawnItemEx("IllusImageC", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS D 3 Bright A_Chase
    ILLS D 0 Bright A_SpawnItemEx("IllusImageD", 0, 0, 0, 0, 0, 0, 0, 128)
    ILLS D 3 Bright A_Chase
    ILLS D 0 Bright A_SpawnItemEx("IllusImageD", 0, 0, 0, 0, 0, 0, 0, 128)
    Loop
  Melee:
    ILLS EFG 5 Bright A_FaceTarget
    ILLS H 6 Bright A_MeleeAttack
    Goto See
  Missile:
    ILLS EFG 5 Bright A_FaceTarget
    ILLS H 6 Bright A_PainAttack("IllusGhost")
    Goto See
  Death:
    TNT1 A 0 A_GiveToTarget("HitBeep",1)
    ILLS I 0 Bright A_Scream
    ILLS I 0 Bright A_NoBlocking
    ILLS I 3 Bright A_FadeOut(0.02)
    Goto Death+2
  }
}

Actor IllusGhost
{
  Radius 20
  Height 56
  Mass 250
  Speed 30
  Obituary "%o is one with the true darkness now."
  RenderStyle Translucent
  Alpha 0.4
  MeleeDamage 8
  MeleeSound "Illus/Melee"
  +NoTeleport
  +FloorClip
  -Solid
  -Shootable
  +NonShootable
  +LookAllAround
  +Dropoff
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
  See:
    TNT1 A 0 A_JumpIfInventory("IllusCounter", 20, "Death")
    TNT1 AAAAAAAAAA 0 A_Chase
    TNT1 A 1 A_GiveInventory("IllusCounter", 1)
    Loop
  Melee:
    ILLS EFG 2 Bright A_FaceTarget
    ILLS H 4 Bright A_MeleeAttack
  Death:
    TNT1 A 1
    Stop
  }
}

Actor IllusCounter : Inventory { Inventory.MaxAmount 20 }

Actor IllusImageA
{
  Radius 4
  Height 8
  Speed 0
  Damage 0
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  Projectile
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    ILLS A 10 Bright
    Stop
  }
}

Actor IllusImageB
{
  Radius 4
  Height 8
  Speed 0
  Damage 0
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  Projectile
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    ILLS B 10 Bright
    Stop
  }
}

Actor IllusImageC
{
  Radius 4
  Height 8
  Speed 0
  Damage 0
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  Projectile
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    ILLS C 10 Bright
    Stop
  }
}

Actor IllusImageD
{
  Radius 4
  Height 8
  Speed 0
  Damage 0
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  Projectile
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    ILLS D 10 Bright
    Stop
  }
}

actor Shade
{
  obituary "%o is one with the true darkness now."
  health 20
  radius 15
  height 63
  mass 60
  speed 10
  damage 4
  painchance 32
  attacksound "skull/melee"
  painsound "skull/pain"
  deathsound "skull/death"
  activesound "skull/active"
  renderstyle Add
  alpha 1.0
  MONSTER
  +FLOAT
  +NOGRAVITY
  +NOICEDEATH
  +MISSILEMORE
  +DONTFALL
  +NOBLOOD
  +LOOKALLAROUND
  states
  {
  Spawn:
    CARL AB 5 bright A_Look
    loop
  See:
    CARL AB 4 bright A_FastChase
    loop
  Missile:
    CARL A 0 A_Jump (256, "Attack1", "Attack2")
    Goto See
  Attack1:
    CARL C 10 bright A_FaceTarget
    CARL D 4 bright A_SkullAttack
    CARL CD 4 bright
    Goto Missile+2
  Attack2:
    CARL A 0 A_UnsetShootable
    CARL ABAB 1 A_FadeOut (0.07)
    CARL AAAAAAAAA 0 A_Wander
    CARL A 0 A_SpawnItemEx ("NewShade", 64, 0, 0, 0, 0, 0, Random(0, 360), 0, 192)
    CARL A 0 A_SpawnItemEx ("NewShade", 64, 0, 0, 0, 0, 0, Random(0, 360), 0, 192)
    CARL AAAAAAAAA 0 A_Wander
    CARL ABAB 1 A_FadeIn (0.07)
    CARL A 0 A_SetShootable
    goto see
  Pain:
    CARL E 3 bright
    CARL E 3 bright A_Pain
    goto See
  Death:
  	TNT1 A 0 A_GiveToTarget("HitBeep",1)
    CARL F 6 bright
    CARL G 6 bright A_Scream
    CARL H 6 bright
    CARL I 6 bright A_NoBlocking
    CARL JK 6
    stop
  }
}

actor NewShade : Shade
{
  +LOOKALLAROUND
  renderstyle Add
  alpha 0.02
  states
  {
  Spawn:
    CARL A 0
    CARL ABAB 1 A_FadeIn (0.07)
    CARL AB 5 A_Look
    goto Spawn+2
  Idle:
    CARL AB 5 A_Look
    loop
  }
}

ACTOR Chiller
{
	Health 70
	PainChance 20
	Speed 18
	Height 55
	Mass 150
	Bloodcolor Black
	MONSTER
	+NOGRAVITY 
        +DROPOFF 
        +FLOAT
	+FLOORCLIP
        +MISSILEMORE
        +NOICEDEATH
        +GHOST
		+LOOKALLAROUND
		+BOSS
        minmissilechance 10
        Damagefactor "Ice", 0
        Renderstyle Translucent
        Alpha 0.85
	SeeSound "chiller/sight"
	PainSound "chiller/pain"
	DeathSound "chiller/death"
	ActiveSound "chiller/active"
	HitObituary "%o is one with the true darkness now."
	Obituary "%o is one with the true darkness now."
        States
	{
        Spawn:
		CHIL A 9 A_Look
		CHIL A 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		CHIL A 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		CHIL A 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		CHIL B 9 A_Look
		CHIL B 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		CHIL B 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		CHIL B 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		Loop
	See:
		CHIL A 3 bright A_Chase
    		CHIL A 0 bright A_SpawnItemEx("ChillerTrailA", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL A 3 bright A_Chase
    		CHIL A 0 bright A_SpawnItemEx("ChillerTrailA", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL B 3 bright A_Chase
    		CHIL B 0 bright A_SpawnItemEx("ChillerTrailB", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL B 3 bright A_Chase
    		CHIL B 0 bright A_SpawnItemEx("ChillerTrailB", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL C 3 bright A_Chase
    		CHIL C 0 bright A_SpawnItemEx("ChillerTrailC", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL C 3 bright A_Chase
    		CHIL C 0 bright A_SpawnItemEx("ChillerTrailC", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL D 3 bright A_Chase
    		CHIL D 0 bright A_SpawnItemEx("ChillerTrailD", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
    		CHIL D 3 bright A_Chase
    		CHIL D 0 bright A_SpawnItemEx("ChillerTrailD", 0, 0, 0, 0, 0, 0, 0, 128)
			CHIL A 0 bright A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		Loop
	Pain:
		CHIL G 6
		CHIL G 6 A_Pain
		Goto See
	Melee:
		CHIL F 1 A_FaceTarget
		CHIL F 0 A_CustomMissile("ChillerFog",32,0,random(1,359),2,random(-10,20))
		CHIL F 3 A_CustomMeleeAttack(random(5,30),"chiller/melee","none","ice")
		Goto See
	Missile:
		TNT1 A 0 A_Jump (72,"MissileTri")
		CHIL E 10 A_FaceTarget
		CHIL F 0 A_CustomMissile("ChillerFog",32,0,45,0)
		CHIL F 0 A_CustomMissile("ChillerFog",32,0,315,0)
		CHIL F 10 A_CustomMissile("IceRipper",32,0,0,0)
		Goto See
	MissileTri:
		CHIL E 10 A_FaceTarget
		CHIL F 0 A_CustomMissile("ChillerFog",32,0,45,0)
		CHIL F 0 A_CustomMissile("ChillerFog",32,0,315,0)
		CHIL F 0 A_CustomMissile("IceRipper",32,0,-6,0)
		CHIL F 0 A_CustomMissile("IceRipper",32,0,6,0)
		CHIL F 10 A_CustomMissile("IceRipper",32,0,0,0)
		Goto See
	Death:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		CHIL H 5 A_ScreamAndUnblock
		CHIL I 5 A_Gravity
		CHIL JKLM 5 A_FadeOut(0.1)
		CHIL N 0 A_SetTranslucent(0.01)
		CHIL N -1
		Stop
	Raise:
		CHIL NMLKJ 5 A_FadeIn(0.1)
		CHIL I 5 A_NoGravity
		CHIL H 5 A_SetTranslucent(0.85)
		Goto See
}
}

Actor IceRipper
{
radius 5
height 5
damage (random(4,12))
speed 15
Damagetype Ice
Renderstyle add
Alpha 0.90
seesound "chiller/fire"
deathsound "chiller/explode"
DONTHURTSHOOTER
PROJECTILE
+RIPPER
+NODAMAGETHRUST
states
{
Spawn:
ICEB A 1 bright A_SpawnItemEX("RipperMist", 0, 0, 0, 0, 0, 0, 0, 12)
loop
Death:
ICEB B 3 bright A_SetTranslucent(0.90,1)
ICEB B 0 bright A_Explode
ICEB CDE 3 bright
stop
}
}


Actor RipperMist
{
  Radius 1
  Height 1
  +NoGravity
  +NoClip
  +CLIENTSIDEONLY
  RenderStyle Add
  Alpha 0.6
  Scale 0.6
  States
  {
  Spawn:
    TNT1 A 2
    CHST ABCDE 2 A_FadeOut(0.2)
    Loop
  }
}

Actor ChillerTrailA
{
  Radius 4
  Height 8
  Speed 0
  Scale 0.9
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  PROJECTILE
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    CHIL A 10 bright A_FadeOut(0.05)
    Stop
  }
}

Actor ChillerTrailB
{
  Radius 4
  Height 8
  Speed 0
  Scale 0.9
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  PROJECTILE
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    CHIL B 10 bright A_FadeOut(0.05)
    Stop
  }
}

Actor ChillerTrailC
{
  Radius 4
  Height 8
  Speed 0
  Scale 0.9
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  PROJECTILE
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    CHIL C 10 bright A_FadeOut(0.05)
    Stop
  }
}

Actor ChillerTrailD
{
  Radius 4
  Height 8
  Speed 0
  Scale 0.9
  Mass 75
  RenderStyle "Translucent"
  Alpha 0.3
  PROJECTILE
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    CHIL D 10 bright A_FadeOut(0.05)
    Stop
  }
}

Actor ChillerFog
{
  Radius 1
  Height 1
  Speed 2
  +NoGravity
  +NoClip
  +CLIENTSIDEONLY
  RenderStyle Add
  Alpha 0.9
  Scale 1.5
  States
  {
  Spawn:
    FFFG A 4 A_FadeOut(0.08)
    Loop
  }
}

ACTOR SmokeMonster
{
Health 3000
Radius 20
Height 56
Mass 10000000
Speed 4
Damage 20
PainChance 10
Monster
DamageType smoke
Damagefactor smoke, 0
+FLOAT +NOGRAVITY +DONTFALL +NOICEDEATH// +MISSILEMORE
+NOBLOOD +EXTREMEDEATH +FORCERADIUSDMG +FLOATBOB
+DONTHURTSPECIES +BOSSDEATH +LONGMELEERANGE +DONTMORPH
+NOTIMEFREEZE +NEVERRESPAWN +NOBLOODDECALS +LOOKALLAROUND
SeeSound "Smoke/See"
AttackSound ""
PainSound ""
DeathSound "Smoke/Die"
ActiveSound ""
Obituary "%o is one with the true darkness now."
bloodtype ""
Renderstyle none
States
{
Spawn:
	SMMO A 1 A_Look
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	loop
See:
	TNT1 A 0 A_JumpIfInventory ("IsawYou",1,"Walk")
	TNT1 A 0 A_PlaySoundEx ("Smoke/Tick", "SoundSlot77", 1)
	TNT1 A 0 A_GiveInventory ("IsawYou",1)
Walk:
	SMMO A 1 A_Chase
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_Chase
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_Chase
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	loop
Missile:
	SMMO A 1  A_SkullAttack
	TNT1 A 0 A_playsound("Smoke/charge")
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	TNT1 A 0 A_JumpIfTargetInLOS(2,75)
	TNT1 A 0 A_Jump(8,"Walk")
	Goto StopCharge
	SMMO A 0
	Goto Melee
Melee:
	SMMO A 1  A_SkullAttack
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_FaceTarget
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	TNT1 A 0 A_JumpIfTargetInLOS(2,75)
	TNT1 A 0 A_Jump(8,"Walk")
	Goto StopCharge
	SMMO A 0
	Goto Melee
StopCharge:
	SMMO A 0 A_Stop
	Goto See
Pain:
	TNT1 A 0 A_Jump (256,"SmokePain1","SmokePain2","SmokePain3")
SmokePain1:
	SMMO A 1 A_playsound("Smoke/pain")
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 ThrustThing(Angle*256/360-192, 8, 1, 0)
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 ThrustThing(Angle*256/360-192, 8, 1, 0)
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 ThrustThing(Angle*256/360-192, 8, 1, 0)
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_Stop
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	TNT1 A 0 A_Jump (64,"Teleport")
	Goto See
SmokePain2:
	SMMO A 1 A_playsound("Smoke/pain")
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 ThrustThing(Angle*256/360-64, 8, 1, 0)
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 ThrustThing(Angle*256/360-64, 8, 1, 0)
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 ThrustThing(Angle*256/360-64, 8, 1, 0)
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	SMMO A 1 A_Stop
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-1,1),random(-1,1),random(-1,1),random(1,360))
	TNT1 A 0 A_Jump (64,"Teleport")
	Goto See
SmokePain3:
	SMMO A 1 A_playsound("Smoke/pain")
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	TNT1 A 0 A_Jump (64,"Teleport")
	Goto See
Death:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	SMMO A 1
	TNT1 A 0 A_StopSoundEx ("SoundSlot77")
	TNT1 A 0 A_Scream
	TNT1 AAA 0 A_Explode
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-3,3),random(-3,3),random(-3,3),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-3,3),random(-3,3),random(-3,3),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-3,3),random(-3,3),random(-3,3),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-3,3),random(-3,3),random(-3,3),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-3,3),random(-3,3),random(-3,3),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-4,4),random(-4,4),random(-4,4),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-4,4),random(-4,4),random(-4,4),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-4,4),random(-4,4),random(-4,4),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-4,4),random(-4,4),random(-4,4),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-4,4),random(-4,4),random(-4,4),random(1,360))
	SMMO A 1
	TNT1 AAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-5,5),random(-5,5),random(-5,5),random(1,360))
	SMMO A 1
	TNT1 AAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-5,5),random(-5,5),random(-5,5),random(1,360))
	SMMO A 1
	TNT1 AAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-5,5),random(-5,5),random(-5,5),random(1,360))
	SMMO A 1
	TNT1 AAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-5,5),random(-5,5),random(-5,5),random(1,360))
	SMMO A 1
	TNT1 AA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-6,6),random(-6,6),random(-6,6),random(1,360))
	SMMO A 1
	TNT1 AA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-6,6),random(-6,6),random(-6,6),random(1,360))
	SMMO A 1
	TNT1 AA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-6,6),random(-6,6),random(-6,6),random(1,360))
	SMMO A 1
	TNT1 AA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-6,6),random(-6,6),random(-6,6),random(1,360))
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-7,7),random(-7,7),random(-7,7),random(1,360))
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-7,7),random(-7,7),random(-7,7),random(1,360))
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-7,7),random(-7,7),random(-7,7),random(1,360))
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-8,8),random(-8,8),random(-8,8),random(1,360))
	TNT1 A 1
	Stop
Teleport:
	TNT1 A 0 A_SetReflective
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
	TNT1 A 0 A_Jump(128,50)
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
	TNT1 A 0 A_Jump(128,50)
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
	SMMO A 1
	TNT1 A 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	SMMO A 1
	TNT1 AAAAAA 0 Bright A_SpawnItemEx("MonsterHole",0,0,8,random(-2,2),random(-2,2),random(-2,2),random(1,360))
	TNT1 A 0 A_UnSetReflective
	Goto See
	}
}
actor IsawYou : Inventory
{
Inventory.MaxAmount 1
}
Actor MonsterHole
{
+NOCLIP
+NOGRAVITY
+NOINTERACTION
+NOTIMEFREEZE
+CLIENTSIDEONLY
renderstyle Translucent
alpha 0.3
scale .75
states
{
Spawn:
TNT1 A 2
SMMO ABCDEFGHIJKLMNOPQ 2
Stop
}
}

Actor GvH23SteamSpawner 666
{
  Height 2
  Radius 1
  Mass 0
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  States
  {
  Spawn:
  Active:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[0] == 1, "Down")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "Forward")
    TNT1 A 0 A_JumpIf(Args[1] > 0, "UpBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", 7, 0.5, 1, ATTN_NORM)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Down:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "DownBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", 7, 0.5, 1, ATTN_NORM)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  Forward:
    TNT1 A 0 A_JumpIf(Args[1] > 0, "ForwardBurst")
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    //TNT1 A 0 A_PlaySoundEx("Steam/Loop", "SoundSlot7", 1)
	TNT1 A 0 A_PlaySound ("Steam/Loop", 7, 0.5, 1, ATTN_NORM)
    TNT1 A 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  UpBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 1, (0.1)*Random(0, 4), 0, (0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  DownBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(0, 4), 0, (-0.1)*Random(35, 40), Random(0, 360), 128)
    Loop
  ForwardBurst:
    TNT1 A 1 A_Jump(Args[2]/16, 1)
    Loop
    TNT1 A 0 A_JumpIf(Args[3] > 0, 2)
    TNT1 A 0 A_PlaySoundEx("Steam/Fire", "SoundSlot7", 0)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    TNT1 AAAAAAAAAA 1 A_SpawnItemEx("SteamParticle", 0, 0, 0, (0.1)*Random(35, 40), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)
    Loop
  Inactive:
    TNT1 A 1 A_StopSoundEx("SoundSlot7")
    TNT1 A 1
    Goto Inactive+1
  }
}

Actor SteamParticle
{
  Height 1
  Radius 1
  +Missile
  +NoGravity
  +NoBlockMap
  RenderStyle Add
  Scale 0.4
  Alpha 0.65
  States
  {
  Spawn:
    STEM A 2 A_SetTranslucent(0.6, 1)
    STEM B 2 A_SetTranslucent(0.55, 1)
    STEM C 2 A_SetTranslucent(0.5, 1)
    STEM D 2 A_SetTranslucent(0.45, 1)
    STEM E 2 A_SetTranslucent(0.4, 1)
    STEM F 2 A_SetTranslucent(0.35, 1)
    STEM G 2 A_SetTranslucent(0.3, 1)
    STEM H 2 A_SetTranslucent(0.25, 1)
    STEM I 2 A_SetTranslucent(0.2, 1)
    STEM J 2 A_SetTranslucent(0.15, 1)
    STEM K 2 A_SetTranslucent(0.1, 1)
    STEM L 2 A_SetTranslucent(0.05, 1)
    Stop
  }
}

Actor RuptureBall13
{
  Speed 20
  Radius 9
  Height 12
  Damage (50)
  DamageType "Choke"
  Projectile
  +SeekerMissile
  Obituary "%o couldn't escape %k's needs." 
  SeeSound "BloodScepter/PowerFire"
  DeathSound "BloodScepter/PowerHit"
  Scale 3.5
  Decal BigBloodSmear
  States
  {
  Spawn:
    BSBL A 1 Bright A_SpawnItemEx("RuptureBallTrail", Random(-5, 5), Random(-6, 6), Random(-6, 6), 0, 0, 0, 0, 128)
	BSBL B 1 Bright A_SpawnItem("NashGore_FlyingBlood",0,0,0,1)
	BSBL C 0 Bright A_SeekerMissile(45, 45,SMF_LOOK|SMF_PRECISE,256,3)
	BSBL C 1 Bright A_SpawnItemEx("RuptureBallTrail", Random(-5, 5), Random(-6, 6), Random(-6, 6), 0, 0, 0, 0, 128)
	BSBL D 1 Bright A_SpawnItem("NashGore_FlyingBlood",0,0,0,1)
	BSBL E 0 Bright A_SeekerMissile(45, 45,SMF_LOOK|SMF_PRECISE,256,3)
	BSBL E 1 Bright A_SpawnItemEx("RuptureBallTrail", Random(-5, 5), Random(-6, 6), Random(-6, 6), 0, 0, 0, 0, 128)
	BSBL F 1 Bright A_SpawnItem("NashGore_FlyingBlood",0,0,0,1)
    BSBL F 0 Bright A_SeekerMissile(45, 45,SMF_LOOK|SMF_PRECISE,256,3)
    Loop
  Death:
	TNT1 A 1 A_SpawnItemEx("RuptureBallDeath", 0, 0, 0, 0, 0, 0, 0, 128)
    TNT1 AAAAAAAA 3 A_Explode(2, 192, 0)
    Stop
  }
}

//====Spawners

Actor LMWhiteSparkSpawner : SwitchableDecoration
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_W1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_W2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_W3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_W4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_W5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_W6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("LMSpark_W1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("LMSpark_W1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_W16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_W1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_W16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor LMOrangeSparkSpawner : SwitchableDecoration 10023
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("LMSpark_O1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("LMSpark_O1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_O16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_O1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor LMYellowSparkSpawner : SwitchableDecoration
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_Y1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_Y2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_Y3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_Y4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_Y5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_Y6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("LMSpark_Y1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("LMSpark_Y1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_Y1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_Y16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor LMGreenSparkSpawner : SwitchableDecoration
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_G1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_G2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_G3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_G4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_G5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_G6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("LMSpark_G1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("LMSpark_G1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_G16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_G1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_G16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor LMBlueSparkSpawner : SwitchableDecoration
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_B1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_B2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_B3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_B4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_B5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_B6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("LMSpark_B1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("LMSpark_B1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_B16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_B1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_B16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

Actor LMPurpleSparkSpawner : SwitchableDecoration
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(Args[2] > 0, "Inactive")
    TNT1 A 10 A_Jump(Args[1]/16, "Active")
    Loop
  Active:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_P1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_P2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_P3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_P4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_P5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_P6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0 A_JumpIf(Args[0] == 1, "SpawnDown")
    TNT1 A 0 A_JumpIf(Args[0] > 1, "SpawnSide")
    Goto SpawnUp
  SpawnUp:
    TNT1 AA 0 A_CustomMissile("LMSpark_P1", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P2", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P3", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P4", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P5", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P6", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P7", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P8", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P9", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P10", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P11", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P12", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P13", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P14", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P15", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P16", 0, 0, Random(0, 360), 2, Random(67, 113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnDown:
    TNT1 AA 0 A_CustomMissile("LMSpark_P1", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P2", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P3", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P4", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P5", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P6", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P7", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P8", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P9", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P10", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P11", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P12", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P13", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P14", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P15", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 AA 0 A_CustomMissile("LMSpark_P16", 0, 0, Random(0, 360), 2, Random (-67, -113))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_P1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_P16", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 A 1 A_JumpIf(Args[2] > 0, 1)
    Goto Spawn
    TNT1 A 1
    Goto Inactive
  Inactive:
    TNT1 A -1
    Loop
  }
}

//Flares

Actor LMSparkFlare_W1
{
  Height 0
  Radius 0
  Mass 0
  +Missile
  +NoBlockMap
  +NoClip
  +NoGravity
  +NoInteraction
  RenderStyle Add
  Scale 0.25
  States
  {
  Spawn:
    SPKW A 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor LMSparkFlare_W2 : LMSparkFlare_W1 { States { Spawn: SPKW B 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_W3 : LMSparkFlare_W1 { States { Spawn: SPKW C 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_W4 : LMSparkFlare_W1 { States { Spawn: SPKW D 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_W5 : LMSparkFlare_W1 { States { Spawn: SPKW E 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_W6 : LMSparkFlare_W1 { States { Spawn: SPKW F 1 Bright A_FadeOut(0.1) Loop } }

Actor LMSparkFlare_R1 : LMSparkFlare_W1 { States { Spawn: SPKR A 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_R2 : LMSparkFlare_W1 { States { Spawn: SPKR B 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_R3 : LMSparkFlare_W1 { States { Spawn: SPKR C 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_R4 : LMSparkFlare_W1 { States { Spawn: SPKR D 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_R5 : LMSparkFlare_W1 { States { Spawn: SPKR E 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_R6 : LMSparkFlare_W1 { States { Spawn: SPKR F 1 Bright A_FadeOut (0.1) Loop } }

Actor LMSparkFlare_O1 : LMSparkFlare_W1 { States { Spawn: SPKO A 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_O2 : LMSparkFlare_W1 { States { Spawn: SPKO B 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_O3 : LMSparkFlare_W1 { States { Spawn: SPKO C 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_O4 : LMSparkFlare_W1 { States { Spawn: SPKO D 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_O5 : LMSparkFlare_W1 { States { Spawn: SPKO E 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_O6 : LMSparkFlare_W1 { States { Spawn: SPKO F 1 Bright A_FadeOut (0.1) Loop } }

Actor LMSparkFlare_Y1 : LMSparkFlare_W1 { States { Spawn: SPKY A 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_Y2 : LMSparkFlare_W1 { States { Spawn: SPKY B 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_Y3 : LMSparkFlare_W1 { States { Spawn: SPKY C 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_Y4 : LMSparkFlare_W1 { States { Spawn: SPKY D 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_Y5 : LMSparkFlare_W1 { States { Spawn: SPKY E 1 Bright A_FadeOut (0.1) Loop } }
Actor LMSparkFlare_Y6 : LMSparkFlare_W1 { States { Spawn: SPKY F 1 Bright A_FadeOut (0.1) Loop } }

Actor LMSparkFlare_G1 : LMSparkFlare_W1 { States { Spawn: SPKG A 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_G2 : LMSparkFlare_W1 { States { Spawn: SPKG B 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_G3 : LMSparkFlare_W1 { States { Spawn: SPKG C 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_G4 : LMSparkFlare_W1 { States { Spawn: SPKG D 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_G5 : LMSparkFlare_W1 { States { Spawn: SPKG E 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_G6 : LMSparkFlare_W1 { States { Spawn: SPKG F 1 Bright A_FadeOut(0.1) Loop } }

Actor LMSparkFlare_B1 : LMSparkFlare_W1 { States { Spawn: SPKB A 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_B2 : LMSparkFlare_W1 { States { Spawn: SPKB B 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_B3 : LMSparkFlare_W1 { States { Spawn: SPKB C 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_B4 : LMSparkFlare_W1 { States { Spawn: SPKB D 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_B5 : LMSparkFlare_W1 { States { Spawn: SPKB E 1 Bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_B6 : LMSparkFlare_W1 { States { Spawn: SPKB F 1 Bright A_FadeOut(0.1) Loop } }

Actor LMSparkFlare_P1 : LMSparkFlare_W1 { States { Spawn: SPKP A 1 bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_P2 : LMSparkFlare_W1 { States { Spawn: SPKP B 1 bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_P3 : LMSparkFlare_W1 { States { Spawn: SPKP C 1 bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_P4 : LMSparkFlare_W1 { States { Spawn: SPKP D 1 bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_P5 : LMSparkFlare_W1 { States { Spawn: SPKP E 1 bright A_FadeOut(0.1) Loop } }
Actor LMSparkFlare_P6 : LMSparkFlare_W1 { States { Spawn: SPKP F 1 bright A_FadeOut(0.1) Loop } }

//Sparks

Actor LMSpark_W1
{
  Height 1
  Radius 2
  Mass 0
  Speed 0.25
  +Missile
  +NoBlockMap
  +LowGravity
  RenderStyle Add
  Scale 0.025
  States
  {
  Spawn:
    SPKW E 1 Bright
    Loop
  Death:
    SPKW E 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor LMSpark_W2 : LMSpark_W1  { Speed 0.5  }
Actor LMSpark_W3 : LMSpark_W1  { Speed 0.75 }
Actor LMSpark_W4 : LMSpark_W1  { Speed 1.0  }
Actor LMSpark_W5 : LMSpark_W1  { Speed 1.25 }
Actor LMSpark_W6 : LMSpark_W1  { Speed 1.5  }
Actor LMSpark_W7 : LMSpark_W1  { Speed 1.75 }
Actor LMSpark_W8 : LMSpark_W1  { Speed 2.0  }
Actor LMSpark_W9 : LMSpark_W1  { Speed 2.25 }
Actor LMSpark_W10 : LMSpark_W1 { Speed 2.5  }
Actor LMSpark_W11 : LMSpark_W1 { Speed 2.75 }
Actor LMSpark_W12 : LMSpark_W1 { Speed 3.0  }
Actor LMSpark_W13 : LMSpark_W1 { Speed 3.25 }
Actor LMSpark_W14 : LMSpark_W1 { Speed 3.5  }
Actor LMSpark_W15 : LMSpark_W1 { Speed 3.75 }
Actor LMSpark_W16 : LMSpark_W1 { Speed 4.0  }

Actor LMSpark_R1 : LMSpark_W1
{
  States
  {
  Spawn:
    SPKR E 1 bright
    Loop
  Death:
    SPKR E 1 bright A_FadeOut (0.1)
    Loop
  }
}

Actor LMSpark_R2 : LMSpark_R1  { Speed 0.5  }
Actor LMSpark_R3 : LMSpark_R1  { Speed 0.75 }
Actor LMSpark_R4 : LMSpark_R1  { Speed 1.0  }
Actor LMSpark_R5 : LMSpark_R1  { Speed 1.25 }
Actor LMSpark_R6 : LMSpark_R1  { Speed 1.5  }
Actor LMSpark_R7 : LMSpark_R1  { Speed 1.75 }
Actor LMSpark_R8 : LMSpark_R1  { Speed 2.0  }
Actor LMSpark_R9 : LMSpark_R1  { Speed 2.25 }
Actor LMSpark_R10 : LMSpark_R1 { Speed 2.5  }
Actor LMSpark_R11 : LMSpark_R1 { Speed 2.75 }
Actor LMSpark_R12 : LMSpark_R1 { Speed 3.0  }
Actor LMSpark_R13 : LMSpark_R1 { Speed 3.25 }
Actor LMSpark_R14 : LMSpark_R1 { Speed 3.5  }
Actor LMSpark_R15 : LMSpark_R1 { Speed 3.75 }
Actor LMSpark_R16 : LMSpark_R1 { Speed 4.0  }

Actor LMSpark_O1 : LMSpark_W1
{
  States
  {
  Spawn:
    SPKO E 1 bright
    Loop
  Death:
    SPKO E 1 bright A_FadeOut(0.1)
    Loop
  }
}

Actor LMSpark_O2 : LMSpark_O1  { Speed 0.5  }
Actor LMSpark_O3 : LMSpark_O1  { Speed 0.75 }
Actor LMSpark_O4 : LMSpark_O1  { Speed 1.0  }
Actor LMSpark_O5 : LMSpark_O1  { Speed 1.25 }
Actor LMSpark_O6 : LMSpark_O1  { Speed 1.5  }
Actor LMSpark_O7 : LMSpark_O1  { Speed 1.75 }
Actor LMSpark_O8 : LMSpark_O1  { Speed 2.0  }
Actor LMSpark_O9 : LMSpark_O1  { Speed 2.25 }
Actor LMSpark_O10 : LMSpark_O1 { Speed 2.5  }
Actor LMSpark_O11 : LMSpark_O1 { Speed 2.75 }
Actor LMSpark_O12 : LMSpark_O1 { Speed 3.0  }
Actor LMSpark_O13 : LMSpark_O1 { Speed 3.25 }
Actor LMSpark_O14 : LMSpark_O1 { Speed 3.5  }
Actor LMSpark_O15 : LMSpark_O1 { Speed 3.75 }
Actor LMSpark_O16 : LMSpark_O1 { Speed 4.0  }

Actor LMSpark_Y1 : LMSpark_W1
{
  States
  {
  Spawn:
    SPKY E 1 bright
    Loop
  Death:
    SPKY E 1 bright A_FadeOut (0.1)
    Loop
  }
}

Actor LMSpark_Y2 : LMSpark_Y1  { Speed 0.5  }
Actor LMSpark_Y3 : LMSpark_Y1  { Speed 0.75 }
Actor LMSpark_Y4 : LMSpark_Y1  { Speed 1.0  }
Actor LMSpark_Y5 : LMSpark_Y1  { Speed 1.25 }
Actor LMSpark_Y6 : LMSpark_Y1  { Speed 1.5  }
Actor LMSpark_Y7 : LMSpark_Y1  { Speed 1.75 }
Actor LMSpark_Y8 : LMSpark_Y1  { Speed 2.0  }
Actor LMSpark_Y9 : LMSpark_Y1  { Speed 2.25 }
Actor LMSpark_Y10 : LMSpark_Y1 { Speed 2.5  }
Actor LMSpark_Y11 : LMSpark_Y1 { Speed 2.75 }
Actor LMSpark_Y12 : LMSpark_Y1 { Speed 3.0  }
Actor LMSpark_Y13 : LMSpark_Y1 { Speed 3.25 }
Actor LMSpark_Y14 : LMSpark_Y1 { Speed 3.5  }
Actor LMSpark_Y15 : LMSpark_Y1 { Speed 3.75 }
Actor LMSpark_Y16 : LMSpark_Y1 { Speed 4.0  }

Actor LMSpark_G1 : LMSpark_W1
{
  States
  {
  Spawn:
    SPKG E 1 Bright
    Loop
  Death:
    SPKG E 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor LMSpark_G2 : LMSpark_G1  { Speed 0.5  }
Actor LMSpark_G3 : LMSpark_G1  { Speed 0.75 }
Actor LMSpark_G4 : LMSpark_G1  { Speed 1.0  }
Actor LMSpark_G5 : LMSpark_G1  { Speed 1.25 }
Actor LMSpark_G6 : LMSpark_G1  { Speed 1.5  }
Actor LMSpark_G7 : LMSpark_G1  { Speed 1.75 }
Actor LMSpark_G8 : LMSpark_G1  { Speed 2.0  }
Actor LMSpark_G9 : LMSpark_G1  { Speed 2.25 }
Actor LMSpark_G10 : LMSpark_G1 { Speed 2.5  }
Actor LMSpark_G11 : LMSpark_G1 { Speed 2.75 }
Actor LMSpark_G12 : LMSpark_G1 { Speed 3.0  }
Actor LMSpark_G13 : LMSpark_G1 { Speed 3.25 }
Actor LMSpark_G14 : LMSpark_G1 { Speed 3.5  }
Actor LMSpark_G15 : LMSpark_G1 { Speed 3.75 }
Actor LMSpark_G16 : LMSpark_G1 { Speed 4.0  }

Actor LMSpark_B1 : LMSpark_W1   
{ 
  States 
  { 
  Spawn: 
    SPKB E 1 Bright 
    Loop 
  Death: 
    SPKB E 1 Bright A_FadeOut(0.1) 
    Loop 
  } 
}

Actor LMSpark_B2 : LMSpark_B1  { Speed 0.5  }
Actor LMSpark_B3 : LMSpark_B1  { Speed 0.75 }
Actor LMSpark_B4 : LMSpark_B1  { Speed 1.0  }
Actor LMSpark_B5 : LMSpark_B1  { Speed 1.25 }
Actor LMSpark_B6 : LMSpark_B1  { Speed 1.5  }
Actor LMSpark_B7 : LMSpark_B1  { Speed 1.75 }
Actor LMSpark_B8 : LMSpark_B1  { Speed 2.0  }
Actor LMSpark_B9 : LMSpark_B1  { Speed 2.25 }
Actor LMSpark_B10 : LMSpark_B1 { Speed 2.5  }
Actor LMSpark_B11 : LMSpark_B1 { Speed 2.75 }
Actor LMSpark_B12 : LMSpark_B1 { Speed 3.0  }
Actor LMSpark_B13 : LMSpark_B1 { Speed 3.25 }
Actor LMSpark_B14 : LMSpark_B1 { Speed 3.5  }
Actor LMSpark_B15 : LMSpark_B1 { Speed 3.75 }
Actor LMSpark_B16 : LMSpark_B1 { Speed 4.0  }

Actor LMSpark_P1 : LMSpark_W1
{
  states
  {
  Spawn:
    SPKP E 1 Bright
    Loop
  Death:
    SPKP E 1 Bright A_FadeOut(0.1)
    Loop
  }
}

Actor LMSpark_P2 : LMSpark_P1  { Speed 0.5  }
Actor LMSpark_P3 : LMSpark_P1  { Speed 0.75 }
Actor LMSpark_P4 : LMSpark_P1  { Speed 1.0  }
Actor LMSpark_P5 : LMSpark_P1  { Speed 1.25 }
Actor LMSpark_P6 : LMSpark_P1  { Speed 1.5  }
Actor LMSpark_P7 : LMSpark_P1  { Speed 1.75 }
Actor LMSpark_P8 : LMSpark_P1  { Speed 2.0  }
Actor LMSpark_P9 : LMSpark_P1  { Speed 2.25 }
Actor LMSpark_P10 : LMSpark_P1 { Speed 2.5  }
Actor LMSpark_P11 : LMSpark_P1 { Speed 2.75 }
Actor LMSpark_P12 : LMSpark_P1 { Speed 3.0  }
Actor LMSpark_P13 : LMSpark_P1 { Speed 3.25 }
Actor LMSpark_P14 : LMSpark_P1 { Speed 3.5  }
Actor LMSpark_P15 : LMSpark_P1 { Speed 3.75 }
Actor LMSpark_P16 : LMSpark_P1 { Speed 4.0  }

//Modified from original sparks to be summoned via ACS as an instant spark.
Actor 37SummonSpark : SwitchableDecoration 13531
{
  Height 8
  Radius 4
  +NoBlockMap
  +NoGravity
  +NoInteraction
  +ClientSideOnly
  +NoClip
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0
    TNT1 A 0 A_PlaySound("World/Spark")
    TNT1 A 0 A_Jump(256, 1, 2, 3, 4, 5, 6)
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O1", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O2", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O3", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O4", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O5", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
    TNT1 A 1 A_SpawnItemEx("LMSparkFlare_O6", 0, 0, 0, 0, 0, 0, 0, 128)
    Goto SpawnSparks
  SpawnSparks:
    TNT1 A 0
    Goto SpawnSide
  SpawnSide:
    TNT1 AA 0 A_CustomMissile("LMSpark_O1", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O2", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O3", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O4", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O5", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O6", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O7", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O8", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O9", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O10", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O11", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O12", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O13", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O14", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O15", 0, 0, Random(-23, 23), 2, Random(157, 203))
    TNT1 AA 0 A_CustomMissile("LMSpark_O16", 0, 0, Random(-23, 23), 2, Random(157, 203))
	Stop
  }
}

// Map Monsters

actor Drone
{
  obituary "%o's day didn't look good anyway."
  health 100
  radius 20
  height 40
  mass 3000
  speed 20
  scale 0.8
  painchance 20
  Attacksound "Engibot/Fire"
  seesound "sentinel/sight"
  activesound "uacbact"
  deathsound "uacbdth"
  MONSTER
+NOBLOOD
+QUICKTORETALIATE
+MISSILEMORE
+MISSILEEVENMORE
+NOGRAVITY
+SPAWNCEILING
+DONTHURTSPECIES
+NOBLOOD
+NOBLOCKMONST
+INCOMBAT
+LOOKALLAROUND
+NEVERRESPAWN
+DONTDRAIN
	Damagefactor "I5", 1.2
	Damagefactor "I1", 0.2
	Damagefactor "I2", 0.9
	Damagefactor "BlueFire", 1.8
	Damagefactor "Hellzone", 1.2
	Damagefactor "Lamiafire", 1.9
	Damagefactor "ZombieSlaps", 0.2
    Damagefactor "ZombiePoison", 1.0
	Damagefactor "ZombieIce", 1.0
	Damagefactor "minion2", 2.0
	Damagefactor "minion", 2.0
	Damagefactor "MorphRipper", 2.0
	Damagefactor "FleshlingMissile", 2.0
	Damagefactor "Creeper", 0.1
	Damagefactor "UboaRawrScream", 0.1
	Damagefactor "Creepstun", 5.0
	Damagefactor "SjasScream", 2.0
	Damagefactor "FrostbiteWind", 2.0
	Damagefactor "EmtalicSaw", 2.0
	Damagefactor "LichFire", 2.0
	Damagefactor "EyesoreballX", 5.0
	Damagefactor "Ravager", 0.1
	Damagefactor "Yurei", 2.0
	Damagefactor "YureiBall", 2.0
    Damagefactor "GasterSmokeHurt", 0.0
  states
  {
  Spawn:
    UASB A 10 A_Look
    Goto See
  See:
	UASB A 0 A_SpawnItemEx("PFirey", 0, 0, 0, 0, 0, -1, 0, 128, 0) 
	UASB A 0 A_SpawnItemEx("SmokeLarge", 0, 0, -8, 0, 0, 0, 0, 128, 0) 
    UASB A 3 A_Chase
    loop
  Missile:
    UASB B 8 A_facetarget
	UASB B 0 A_CustomMissile("LongRifleCaseSpawn",40,0,5)
    UASB B 1 bright A_CustomBulletAttack(6,6,1,1,"MonsterMechBullets")
    UASB B 1  A_facetarget
	UASB B 0 A_CustomMissile("LongRifleCaseSpawn",40,0,5)
	UASB B 1 bright A_CustomBulletAttack(6,6,1,1,"MonsterMechBullets")
    UASB B 1  A_facetarget
	UASB B 0 A_CustomMissile("LongRifleCaseSpawn",40,0,5)
	UASB B 1 bright A_CustomBulletAttack(6,6,1,1,"MonsterMechBullets")
    UASB B 8  A_facetarget
    Goto See
  Death:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_NoGravity
	TNT1 A 0 A_Scream
    DBOM A 4 Bright A_NoBlocking
	DBOM BCDEFGHIJK 4 Bright
    TNT1 A -1
  }
}

Actor LaserScout
{
Health 150
Speed 11
Radius 40
Height 56
Mass 450
PainChance 40
monster
+NOBLOOD
+AMBUSH
+NOSPLASHALERT
+MISSILEMORE
+DONTHARMCLASS
+NOPAIN
DeathSound "scout/death"
Obituary "%o was vaporized by a laser-scout."
GibHealth 100
States
	{
	Spawn:
		MECH H 1 A_TurretLook
	loop
	See:
		MECH ABCD 5 A_Chase
	loop
	Missile:
		MECH E 2 A_FaceTarget
		MECH F 4 Bright a_CustomMissile("ScoutLaser",54,-10,0,0,0)
		MECH E 2 A_FaceTarget
		MECH E 6
		MECH E 0 A_MonsterRefire(30, "See")
		Goto Missile+1
	Pain:
		MECH G 4 A_Pain
	Goto See
	Death:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		MECH I 6 A_Scream
		MECH J 6 A_Fall
		MECH K 6
		MECH L 12
		MECH MNO 5 Bright
		MECH L -1
	Stop
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		MECH Q 5 Bright A_PlaySound("scout/gib", CHAN_BODY)
		MECH Q 0 A_Explode
		MECH Q 0 A_Fall
		MECH RRSSTT 2 Bright A_TossGib
		MECH UVW 5 Bright A_TossGib
		MECH X -1
		Stop
	}
}

Actor RocketTurret
{
Radius 20
Height 24
Speed 0
Health 120
Mass 99999
Monster
+MOVEWITHSECTOR
+NOBLOOD
+AMBUSH
+NOSPLASHALERT
+MISSILEMORE
+DONTHARMCLASS
+NOPAIN
Obituary "%o was blown to pieces by a Rocket Turret"
SeeSound "RTurret/Activate"
DeathSound "RTurret/Explode"
States
	{
	Spawn:
		RTUR A 5 A_TurretLook
		Loop
	See:
		RTUR A 2 A_Chase
		Loop
	Missile:
		RTUR A 2 A_FaceTarget
		RTUR B 5 Bright A_CustomMissile("RTurretProjectile",20,0,0)
		RTUR A 16
		Goto See
	Death:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		RTUR A 2 A_Scream
		RTUR C 4 A_SpawnItemEx("DeathExplosionSmaller",0,0,20,0,0,0)
		RTUR C 2 A_Fall
		RTUR C -1
		Stop
	}
}

Actor RTurretProjectile
{
Radius 10
Height 14
Speed 24
Damage 0
Projectile
Scale 0.8
+STRIFEDAMAGE
+DEHEXPLOSION
SeeSound "TRocket/Fire"
DeathSound "TRocket/Explode"
Decal Scorch
States
	{
	Spawn:
		TMIS A 2 A_PlaySound("TRocket/Flight",5,0.4,true)
		TMIS A 2 A_SpawnItemEx("RocketTurretTrail",0,0,0,0,0,0,180)
		Loop
	Death:
		TNT1 A 0 A_StopSound(5)
		TMIS B 5 Bright A_Explode(20,120)
		TMIS CD 4 Bright
		Stop
	}
}

ACTOR UrbanDecayJudgementStrike : fastprojectile
{
	PROJECTILE
	Damage 0
	Radius 8 
	Height 8 
	obituary "%o has been smitten by the gods."
	Speed 1000
	Scale  1.0
	+NOGRAVITY 
	+friendly
	States
	{
		Spawn:
			TNT1 A 1
			loop
		Death:
		TNT1 A 0 A_SpawnItemEx("GwenTimeImplosionRing")
		TNT1 A 0 A_Playsound("Gwen/DivineExplosionSound",6,1,0,ATTN_NONE)
		TNT1 A 24
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRingDamageFX")
		TNT1 A 0 A_SpawnItemEx("UrbanDecayTimeExplosionRingDamage",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRing")
		TNT1 A 0 A_SpawnItemEx("GwenTimeExplosionRingX")
		TNT1 A 0 A_SpawnItemEx("GwenThunderFX")
		TNT1 A 0 A_SpawnItemEx("GwenGoddessStateEXP")
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark2", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("KNThunderFX_Smoke", 0, 0, 0, 0.01 * Random(-125, 125), 0.01 * Random(-125, 125), 0.01 * Random(25, 245), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("GwenThunderFX_Spark", 0, 0, 8, 0.01 * Random(-300, 300), 0.01 * Random(-300, 300), 0.01 * Random(0, 600), 0, 128, 0)
//			TNT1 A 1 A_SpawnItemEx("MagichandLightingThunderFX", 0, 0, 128, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
			Stop
	}
}

Actor UrbanDecayTimeExplosionRingDamage
{
	Renderstyle Add
	+NOINTERACTION
	+SEEKERMISSILE
	Projectile
	Damagetype "Divine"
	obituary "%o has been smitten by the gods."
	States
	{
	Spawn:
	TNT1 A 1 
	Goto Death
	XDeath:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	TNT1 A 0 A_Jump(256,"DeathCont")
	Goto DeathCont
	Death:
	TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
	TNT1 A 0 A_JumpIfTargetInLOS("SplashBeep",360,JLOSF_PROJECTILE,282)
	TNT1 A 0 A_Jump(256,"DeathCont")
	Goto DeathCont
	SplashBeep:
	TNT1 A 0 A_GiveToTarget("HitBeep",1)
	TNT1 A 0 A_Jump(256,"DeathCont")
	Goto DeathCont
	DeathCont:
	TNT1 A 1 A_Explode(920,900,0)
	Stop
	}
}





ACTOR EmptyBarrel 19311
{
  Health 1000
  Radius 10
  Height 42
  +SOLID
  States
  {
  Spawn:
    BAR2 A -1
    Stop
  }
}
ACTOR ExplosiveBarrelSloppy : ExplosiveBarrel 19312
{
  States
  {
  Spawn:
    BAR3 A 6
    Loop
  Death:
    BEXP A 5 Bright
    BEXP B 5 Bright A_Scream
    BEXP C 5 Bright
    BEXP D 5 Bright A_Explode
    BEXP E 10 Bright
    TNT1 A 1050 Bright A_BarrelDestroy
    TNT1 A 5 A_Respawn
    Wait
  }
}
ACTOR TechPillarTall : TechPillar 19315
{
  Height 144
  States
  {
  Spawn:
    ELE2 A -1
    Stop
  }
}

ACTOR TechPillarTiny : TechPillar 19316
{
  Height 32
  ProjectilePassHeight 0
  +SOLID
  States
  {
  Spawn:
    ELE3 A -1
    Stop
  }
}
Actor JunkPile1
{
Radius 25
Height 20
+SOLID
States
{
Spawn:
	JPIL A -1
	Stop
}
}

Actor JunkPile2
{
Radius 28
Height 28
+SOLID
States
{
Spawn:
	JPIL B -1
	Stop
}
}

ACTOR HexenN64Tree1 : ZTreeLarge1 16821
{
  //$Category "Obstacles"
  //$Title "N64 Tree 1"
  States
  {
  Spawn:
    64T1 A -1
    Stop
  }
}

ACTOR HexenN64Tree2 : ZTreeLarge2 16822
{
  //$Category "Obstacles"
  //$Title "N64 Tree 2"
  States
  {
  Spawn:
    64T2 A -1
    Stop
  }
}

ACTOR HexenN64Leaf1 : Leaf1
{  
  States
  {
  Spawn:
    64L1 ABC 4
    64L1 D 4 A_LeafThrust
    64L1 EFG 4
    64L1 H 4 A_LeafThrust
    64L1 IAB 4
    64L1 C 4 A_LeafThrust
    64L1 DEF 4
    64L1 G 4 A_LeafThrust
    64L1 HI 4
    Stop
  Death:
    64L3 D 10 A_LeafCheck
    Wait
	}
}

ACTOR HexenN64Leaf2 : HexenN64Leaf1
{
  States
  {
  Spawn:
    64L2 ABC 4
    64L2 D 4 A_LeafThrust
    64L2 EFG 4
    64L2 H 4 A_LeafThrust
    64L2 I 4
    64L2 AB 4
    64L2 C 4 A_LeafThrust
    64L2 DEF 4
    64L2 G 4 A_LeafThrust
    64L2 HI 4
    Stop
  }
}

//ACTOR HexenN64LeafSpawner 16823
//{
  //$Category "Other"
  //$Title "Spawn Leaf (N64)"
  //$Sprite 64L1F0
//  +NOBLOCKMAP
 // +NOSECTOR
//  +INVISIBLE
//  var int user_a;
//  States
//  {
//  Spawn:
 // TNT1 AAAA 0 NoDelay
 //       {
 //           user_a = random(0,1);
//
 //           if (user_a == 0)
 //           {
//			A_SpawnItemEx(HexenN64Leaf1, random (-64, 64), random (-64, 64), random (0, height + 64), random (3.0, 5.0));
//			}
//			Else
//			{
//			A_SpawnItemEx(HexenN64Leaf2, random (-64, 64), random (-64, 64), random (0, height + 64), random (3.0, 5.0));
//			}
//		}
 // TNT1 A 20
 //   Loop
 // }
//}

Actor LeaflessTree2 16824
{
	//$Category "Obstacles"
	//$Title "Lanky Leafless Tree"
	Radius 15
	Height 160
	+SOLID
	+FORCEYBILLBOARD
	States
	{
		Spawn:
			TRE8 A -1
			Stop
	}
}

Actor GnarledTree3 16825
{
	//$Category "Obstacles"
	//$Title "Short Gnarled Tree"
	Radius 15
	Height 100
	+SOLID
	+FORCEYBILLBOARD
	States
	{
		Spawn:
			TRE9 A -1
			Stop
	}
}

ACTOR RockGrey 16000
{
	//$Title Grey Rock
	//$Category Obstacles/Rocks
	//$IsDecoration
	//$NotAngled
	Scale 0.75
	Radius 12
	Height 8
	+SOLID

	States
	{
	Spawn:
		DROK A 0 A_Jump (256, "Rock1", "Rock2", "Rock3")
	Rock1:
		DROK A -1
		stop
	Rock2:
		DROK B -1
		stop
	Rock3:
		DROK C -1
		stop
	}
}

ACTOR RockBrown 16001
{
	//$Title Brown Rock
	//$Category Obstacles/Rocks
	//$IsDecoration
	//$NotAngled
	Scale 0.75
	Radius 12
	Height 8
	+SOLID

	States
	{
	Spawn:
		DROK D 0 A_Jump (256, "Rock1", "Rock2", "Rock3")
	Rock1:
		DROK D -1
		stop
	Rock2:
		DROK E -1
		stop
	Rock3:
		DROK F -1
		stop
	}
}

ACTOR RockTan 16002
{
	//$Title Tan Rock
	//$Category Obstacles/Rocks
	//$IsDecoration
	//$NotAngled
	Scale 0.75
	Radius 12
	Height 8
	+SOLID

	States
	{
	Spawn:
		DROK G 0 A_Jump (256, "Rock1", "Rock2", "Rock3")
	Rock1:
		DROK G -1
		stop
	Rock2:
		DROK H -1
		stop
	Rock3:
		DROK I -1
		stop
	}
}

ACTOR RockBlack 16003
{
	//$Title Black Rock
	//$Category Obstacles/Rocks
	//$IsDecoration
	//$NotAngled
	Scale 0.75
	Radius 12
	Height 8
	+SOLID
  
	States
	{
	Spawn:
		DROK J 0 A_Jump (256, "Rock1", "Rock2", "Rock3")
	Rock1:
		DROK J -1
		stop
	Rock2:
		DROK K -1
		stop
	Rock3:
		DROK L -1
		stop
	}
}

ACTOR GiantMushroomRed 14800
{
	//$Title Giant Mushroom Tree Red
	//$Category Obstacles/Mushrooms/Red
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG A -1
			Stop
	}
}

ACTOR LargeMushroomRed 14801
{
	//$Title Large Mushroom Red
	//$Category Obstacles/Mushrooms/Red
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn:
			MUSB A -1
			Stop
	}
}

ACTOR MediumMushroomRed 14802
{
	//$Title Medium Mushroom Red
	//$Category Obstacles/Mushrooms/Red
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn:
			MUSM A -1
			Stop
	}
}

ACTOR SmallMushroomRed 14803
{
	//$Title Small Mushroom Red
	//$Category Obstacles/Mushrooms/Red
	//$IsDecoration
	//$NotAngled

	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn:
			MUSS A -1
			Stop
	}
}

ACTOR GiantMushroomGreen 14805
{
	//$Title Giant Mushroom Tree Green
	//$Category Obstacles/Mushrooms/Green
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG B -1
			Stop
	}
}

ACTOR LargeMushroomGreen 14806
{
	//$Title Large Mushroom Green
	//$Category Obstacles/Mushrooms/Green
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn: 
			MUSB B -1
			Stop
	}
}

ACTOR MediumMushroomGreen 14807
{
	//$Title Medium Mushroom Green
	//$Category Obstacles/Mushrooms/Green
	//$IsDecoration
	//$NotAngled
	
	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn:
			MUSM B -1
			Stop
	}
}

ACTOR SmallMushroomGreen 14808
{
	//$Title Small Mushroom Green
	//$Category Obstacles/Mushrooms/Green
	//$IsDecoration
	//$NotAngled
	
	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn:
			MUSS B -1
			Stop
	}
}

ACTOR GiantMushroomOlive 14810
{
	//$Title Giant Mushroom Tree Olive
	//$Category Obstacles/Mushrooms/Olive
	//$IsDecoration
	//$NotAngled
	
	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG C -1
			Stop
	}
}

ACTOR LargeMushroomOlive 14811
{
	//$Title Large Mushroom Olive
	//$Category Obstacles/Mushrooms/Olive
	//$IsDecoration
	//$NotAngled
	
	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn:
			MUSB C -1
			Stop
	}
}

ACTOR MediumMushroomOlive 14812
{
	//$Title Medium Mushroom Olive
	//$Category Obstacles/Mushrooms/Olive
	//$IsDecoration
	//$NotAngled
	
	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn: 
			MUSM C -1
			Stop
	}
}

ACTOR SmallMushroomOlive 14813
{
	//$Title Small Mushroom Olive
	//$Category Obstacles/Mushrooms/Olive
	//$IsDecoration
	//$NotAngled
	
	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn: 
			MUSS C -1
			Stop
	}
}

ACTOR GiantMushroomBrown 14815
{
	//$Title Giant Mushroom Tree Brown
	//$Category Obstacles/Mushrooms/Brown
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG D -1
			Stop
	}
}

ACTOR LargeMushroomBrown 14816
{
	//$Title Large Mushroom Brown
	//$Category Obstacles/Mushrooms/Brown
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn:
			MUSB D -1
			Stop
	}
}

ACTOR MediumMushroomBrown 14817
{
	//$Title Medium Mushroom Brown
	//$Category Obstacles/Mushrooms/Brown
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn: 
			MUSM D -1
			Stop
	}
}

ACTOR SmallMushroomBrown 14818
{
	//$Title Small Mushroom Brown
	//$Category Obstacles/Mushrooms/Brown
	//$IsDecoration
	//$NotAngled

	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn: 
			MUSS D -1
			Stop
	}
}

ACTOR GiantMushroomTeal 14820
{
	//$Title Giant Mushroom Tree Teal
	//$Category Obstacles/Mushrooms/Teal
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG E -1
			Stop
	}
}

ACTOR LargeMushroomTeal 14821
{
	//$Title Large Mushroom Teal
	//$Category Obstacles/Mushrooms/Teal
	//$IsDecoration
	//$NotAngled
	
	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn:
			MUSB E -1
			Stop
	}
}

ACTOR MediumMushroomTeal 14822
{
	//$Title Medium Mushroom Teal
	//$Category Obstacles/Mushrooms/Teal
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn:
			MUSM E -1
			Stop
	}
}

ACTOR SmallMushroomTeal 14823
{
	//$Title Small Mushroom Teal
	//$Category Obstacles/Mushrooms/Teal
	//$IsDecoration
	//$NotAngled

	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn: 
			MUSS E -1
			Stop
	}
}

ACTOR GiantMushroomPurple 14825
{
	//$Title Giant Mushroom Tree Purple
	//$Category Obstacles/Mushrooms/Purple
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG F -1
			Stop
	}
}

ACTOR LargeMushroomPurple 14826
{
	//$Title Large Mushroom Purple
	//$Category Obstacles/Mushrooms/Purple
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn: 
			MUSB F -1
			Stop
	}
}

ACTOR MediumMushroomPurple 14827
{
	//$Title Medium Mushroom Purple
	//$Category Obstacles/Mushrooms/Purple
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn: 
			MUSM F -1
			Stop
	}
}

ACTOR SmallMushroomPurple 14828
{
	//$Title Small Mushroom Purple
	//$Category Obstacles/Mushrooms/Purple
	//$IsDecoration
	//$NotAngled

	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn:
			MUSS F -1
			Stop
	}
}

ACTOR GiantMushroomBlue 14830
{
	//$Title Giant Mushroom Tree Blue
	//$Category Obstacles/Mushrooms/Blue
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG G -1
			Stop
	}
}

ACTOR LargeMushroomBlue 14831
{
	//$Title Large Mushroom Blue
	//$Category Obstacles/Mushrooms/Blue
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn:
			MUSB G -1
			Stop
	}
}

ACTOR MediumMushroomBlue 14832
{
	//$Title Medium Mushroom Blue
	//$Category Obstacles/Mushrooms/Blue
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn:
			MUSM G -1
			Stop
	}
}

ACTOR SmallMushroomBlue 14833
{
	//$Title Small Mushroom Blue
	//$Category Obstacles/Mushrooms/Blue
	//$IsDecoration
	//$NotAngled

	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn:
			MUSS G -1
			Stop
	}
}

ACTOR GiantMushroomYellow 14835
{
	//$Title Giant Mushroom Tree Yellow
	//$Category Obstacles/Mushrooms/Yellow
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 160

	+SOLID
	
	States
	{
		Spawn:
			MUSG H -1
			Stop
	}
}

ACTOR LargeMushroomYellow 14836
{
	//$Title Large Mushroom Yellow
	//$Category Obstacles/Mushrooms/Yellow
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 64

	+SOLID
	
	States
	{
		Spawn: 
			MUSB H -1
			Stop
	}
}

ACTOR MediumMushroomYellow 14837
{
	//$Title Medium Mushroom Yellow
	//$Category Obstacles/Mushrooms/Yellow
	//$IsDecoration
	//$NotAngled

	Radius 10
	Height 48

	+SOLID
	
	States
	{
		Spawn: 
			MUSM H -1
			Stop
	}
}

ACTOR SmallMushroomYellow 14838
{
	//$Title Small Mushroom Yellow
	//$Category Obstacles/Mushrooms/Yellow
	//$IsDecoration
	//$NotAngled

	Radius 4
	Height 20
	
	+SOLID
	
	States
	{
		Spawn:
			MUSS H -1
			Stop
	}
}

ACTOR GiantMushroomGlowing : GiantMushroomRed 14840
{
	//$Title Giant Mushroom Tree Glowing
	//$Category Obstacles/Mushrooms/Glowing
	
	+BRIGHT
	Translation "0:255=%[0,0,0]:[0,1.0,0.5]"
}

ACTOR LargeMushroomGlowing : LargeMushroomRed 14841
{
	//$Title Large Mushroom Glowing
	//$Category Obstacles/Mushrooms/Glowing
	
	+BRIGHT
	Translation "0:255=%[0,0,0]:[0,1.0,0.5]"
}

ACTOR MediumMushroomGlowing : MediumMushroomRed 14842
{
	//$Title Medium Mushroom Glowing
	//$Category Obstacles/Mushrooms/Glowing
	
	+BRIGHT
	Translation "0:255=%[0,0,0]:[0,1.0,0.5]"
}

ACTOR SmallMushroomGlowing : SmallMushroomRed 14843
{
	//$Title Small Mushroom Glowing
	//$Category Obstacles/Mushrooms/Glowing
	
	+BRIGHT
	Translation "0:255=%[0,0,0]:[0,1.0,0.5]"
}

ACTOR OfficeChairDoomGreen 12340
{
	//$Title Office Chair Doom Green
	//$Category Obstacles/Chairs
	//$IsDecoration

	Var int user_spincounter;
	Var int user_spinangle;

	Height 26
	Radius 14
	Health 0x7FFFFFFF
	Mass 400
	MaxStepHeight 0
	PainChance 192
	
	+SOLID
	+DROPOFF
	+SLIDESONWALLS
	+PUSHABLE
	+CANPASS
	+SHOOTABLE
	+NOBLOOD
	//+BUDDHA // Disabled for Zandronum compatibility
	+NOTAUTOAIMED
  
		States
		{
			Spawn:
				OCHR A 0 NoDelay A_SetUserVar("user_spincounter", 50)
				OCHR A 0 A_SetUserVar("user_spinangle", 40)
			Seat:
				OCHR A -1
				Loop
			Pain:
				OCHR A 0 A_SetUserVar("user_spincounter", 50)
				OCHR A 0 A_SetUserVar("user_spinangle", 40)
			Spin:
				OCHR A 1 A_SetAngle(user_spinangle + angle)
				OCHR A 0 A_SetUserVar("user_spincounter", user_spincounter-1)
				OCHR A 0 A_SetUserVar("user_spinangle", user_spinangle*0.93)
				OCHR A 0 A_JumpIf(user_spincounter==0,"Spawn")
				Loop
		}
}

// STANDARD RGB VALUE TRANSLATIONS
ACTOR OfficeChairBlack : OfficeChairDoomGreen 12341
{
	//$Title Office Chair Black
	Translation "112:127=[64,64,64]:[0,0,0]" // Old format RGB translations for Zandronum compatibility
}

ACTOR OfficeChairWhite : OfficeChairDoomGreen 12342
{
	//$Title Office Chair White
	Translation "112:127=[192,192,192]:[0,0,0]"
}

ACTOR OfficeChairGray : OfficeChairDoomGreen 12343
{
	//$Title Office Chair Gray
	Translation "112:127=[128,128,128]:[0,0,0]"
}

ACTOR OfficeChairRed : OfficeChairDoomGreen 12344
{
	//$Title Office Chair Red
	Translation "112:127=[255,0,0]:[0,0,0]"
}

ACTOR OfficeChairMaroon : OfficeChairDoomGreen 12345
{
	//$Title Office Chair Maroon
	Translation "112:127=[128,0,0]:[0,0,0]"
}

ACTOR OfficeChairOlive : OfficeChairDoomGreen 12346
{
	//$Title Office Chair Olive
	Translation "112:127=[128,128,64]:[0,0,0]"
}

ACTOR OfficeChairGreen : OfficeChairDoomGreen 12347
{
	//$Title Office Chair Green
	Translation "112:127=[0,128,0]:[0,0,0]"
}

ACTOR OfficeChairPurple : OfficeChairDoomGreen 12348
{
	//$Title Office Chair Purple
	Translation "112:127=[128,0,128]:[0,0,0]"
}

ACTOR OfficeChairTeal : OfficeChairDoomGreen 12349
{
	//$Title Office Chair Teal
	Translation "112:127=[0,128,128]:[0,0,0]"
}

ACTOR OfficeChairNavy : OfficeChairDoomGreen 12350
{
	//$Title Office Chair Navy
	Translation "112:127=[0,0,128]:[0,0,0]"
}

ACTOR OfficeChairBlue : OfficeChairDoomGreen 12351
{
	//$Title Office Chair Blue
	Translation "112:127=[0,0,255]:[0,0,0]"
}

ACTOR OfficeChairYellow : OfficeChairDoomGreen 12352
{
	//$Title Office Chair Yellow
	Translation "112:127=[255,255,0]:[0,0,0]"
}

ACTOR OfficeChairCyan : OfficeChairDoomGreen 12353
{
	//$Title Office Chair Cyan
	Translation "112:127=[0,255,255]:[0,0,0]"
}

ACTOR OfficeChairMagenta : OfficeChairDoomGreen 12354
{
	//$Title Office Chair Magenta
	Translation "112:127=[255,0,255]:[0,0,0]"
}

//DEFAULT DOOM TRANSLATIONS
ACTOR OfficeChairDoomGray : OfficeChairDoomGreen 12355
{
	//$Title Office Chair Doom Gray
	Translation 0
}

ACTOR OfficeChairDoomBrown : OfficeChairDoomGreen 12356
{
	//$Title Office Chair Doom Brown
	Translation 1
}

ACTOR OfficeChairDoomRed : OfficeChairDoomGreen 12357
{
	//$Title Office Chair Doom Red
	Translation 2
}

Actor Sheep 9658
{
  Monster
  +NODAMAGE //: Prevents the actor from taking damage. 
  //+INVULNERABLE //: Grants temporary invulnerability, but this flag is often superseded by +NODAMAGE. 
  +NOPAIN
  Health 100
  Radius 30
  Height 56
  Speed 1
  Mass 100
  Scale 1
  seesound "sight"
  activesound "sight"
  -COUNTKILL
  States
  {
  Spawn:
    NSHE A 10 A_Look
	Goto See
  See:
	NSHE AAAABBBBCCCCDDDD 2 A_Wander
	NSHE A 0 A_Chase
	TNT1 A 0 A_Jump(256,"EatGrass","See","See","See","See","See","See","See","See")
	Loop
  EatGrass:
	TNT1 A 0 A_PlaySound("SheepNom/Nom",0,1)
	NSHG A 50
	NSHG B 30
	Goto See
//  Pain:
//	TNT1 A 0 A_PlaySound("sight",0,1)
//	NSHP A 10
//	Goto RunAway
//  RunAway:
//	TNT1 A 0 A_ChangeFlag("Frightened", True)
//	TNT1 A 0 A_SetSpeed(3,AAPTR_DEFAULT)
//	NSHE AAAABBBBCCCCDDDD 1 A_Chase
//	NSHE AAAABBBBCCCCDDDD 1 A_Chase
//	NSHE AAAABBBBCCCCDDDD 1 A_Chase
//	NSHE AAAABBBBCCCCDDDD 1 A_Chase
//	TNT1 A 0 A_SetSpeed(1,AAPTR_DEFAULT)
//	TNT1 A 0 A_ChangeFlag("Frightened", False)
//	Goto See
//  Death:
//	TNT1 A 0 A_PlaySound("sight",0,1)
//	NSHD AAAABBBBCCCCDDDDEEEEFFFF 1
//	NSHD F -1
//	Stop
  }
}

ACTOR TechBarrelGrey : ExplosiveBarrel 12711
{
	//$Title Tech Barrel Gray
	//$Category Obstacles
	//$Arg0 Pushable
	//$Arg0Default 1
	//$Arg0Type 11
	//$Arg0Enum falsetrue
	
	Scale 0.9
	DeathSound "weapons/bfgx"
	DamageType "BFGSplash"
	
		States
		{
			Spawn:
				BART A 0 NoDelay A_JumpIf(args[0] == 1, "MakePushable")
			Spawn2:
				BART A -1
				Stop
			MakePushable:
				BART A 0 A_ChangeFlag ("PUSHABLE", TRUE)
				BART A 0 A_ChangeFlag ("SLIDESONWALLS", TRUE)
				goto Spawn2
			Death:
				TNT1 A 0 A_Scream
				TNT1 A 0 A_Explode (100, 192)
				TNT1 A 24 A_SpawnItem ("TechBarrelExplosion", 0, 16)
				TNT1 A 1054 A_BarrelDestroy
				TNT1 A 5 A_Respawn
				Wait
		}
}

ACTOR TechBarrelTan : TechBarrelGrey 12713
{
	//$Title Tech Barrel Tan
	
		States
		{
			Spawn:
				BART B 0 NoDelay A_JumpIf(args[0] == 1, "MakePushable")
			Spawn2:
				BART B -1
				Stop
			MakePushable:
				BART B 0 A_ChangeFlag ("PUSHABLE", TRUE)
				BART B 0 A_ChangeFlag ("SLIDESONWALLS", TRUE)
				goto Spawn2
		}
}

ACTOR TechBarrelGreen : TechBarrelGrey 12712
{
	//$Title Tech Barrel Green
	
		States
		{
			Spawn:
				BART C 0 NoDelay A_JumpIf(args[0] == 1, "MakePushable")
			Spawn2:
				BART C -1
				Stop
			MakePushable:
				BART C 0 A_ChangeFlag ("PUSHABLE", TRUE)
				BART C 0 A_ChangeFlag ("SLIDESONWALLS", TRUE)
				goto Spawn2
		}
}

ACTOR TechBarrelExplosion
{
	+MISSILE
	+NOBLOCKMAP
	+NOGRAVITY

	States
	{
		Spawn:
		    BFE1 ABCDEF 6 Bright
			Stop
	}
}

ACTOR SmallWorklight 15000
{
	Radius 25
	Height 40
	+SOLID
	+PUSHABLE													// Makes Worklight pushable. Remove if unwanted.
	PushFactor 0.5												// Makes Worklight pushable. Remove if unwanted.
	
	States
	{
	Spawn:
		WLGH A 6
		WLGH A -1
		stop
		//{
		//	 if(velx != 0 || vely != 0)							// Makes the Worklight spin when pushed.
		//                 { A_SetAngle(angle+Random(0,15)); }	// Remove if unwanted. Use WLGH A -1 and stop instead.
		//}
		//loop
	}
}

ACTOR TallWorklight 15001
{
	Radius 25
	Height 112
	+SOLID
	+PUSHABLE													// Makes Worklight pushable. Remove if unwanted.
	PushFactor 0.5												// Makes Worklight pushable. Remove if unwanted.
	
	States
	{
	Spawn:
		TLGH A 6
		TLGH A -1 //and
		stop //instead.
		//{
		//	 if(velx != 0 || vely != 0)							// Makes the Worklight spin when pushed
		//                 { A_SetAngle(angle+Random(0,15)); }	// Remove if unwanted. Use TLGH A -1 and stop instead.
		//}
		//loop
	}
}

////Zombie Heads////
//Blood Head//

//Actor ZombieHeadBlood 14810
//{
//	//$Category LivingProps
//	//$Title "Zombie Head - Blood"
//	Monster
//	Health 50
//	Radius 10
//	Height 15
//	Speed 0
//	Mass 100
//	Scale 1
//	PainChance 255
//	-COUNTKILL
//	States
//	{
//		Spawn:
//			ZH0A A 10
//			Goto See
//		See:
//			ZH0A AAAAAAAAAA 5 A_Wander
//			TNT1 A 0 A_Jump(50, "RollAround", "Groan")
//		Loop
//		RollAround:
//			TNT1 A 0 A_SetSpeed(5,AAPTR_DEFAULT)
//			ZH0B ABCDEFGHIJKLMN 4 A_Wander
//			TNT1 A 0 A_SetSpeed(0,AAPTR_DEFAULT)
//			TNT1 A 0 A_Jump(28,"See")
//		Loop
//		Groan:
//			ZH0C A 3
//			TNT1 A 0 A_PlaySound("BGroans")
//			ZH0C B 15
//			ZH0C A 3
//			ZH0A AAAAAAAAAA 5 A_Wander
//			TNT1 A 0 A_Jump(50,"See")
//		Loop
//		Pain:
//			ZH0C A 2
//			TNT1 A 0 A_PlaySound("BHeadhit")
//			ZH0C B 10
//			ZH0C A 2
//			Goto RunAway
//		RunAway:
//			TNT1 A 0 A_ChangeFlag("Frightened", True)
//			TNT1 A 0 A_SetSpeed(10,AAPTR_DEFAULT)
//			TNT1 A 0 A_PlaySound("BHeadrun")
//			ZH0B ABCDEFGHIJKLMNABCDEFGHIJKLMN 3 A_Chase
//			TNT1 A 0 A_SetSpeed(0,AAPTR_DEFAULT)
//			TNT1 A 0 A_ChangeFlag("Frightened", False)
//			TNT1 A 0 A_Jump(50,"See")
//		Loop
//		Death:
//			TNT1 A 0 A_PlaySound("BHeaddead")
//			ZH0G A 3 A_NoBlocking
//			ZH0G BBCDEFGH 4
//			ZH0G H -1
//		Stop
//		XDeath:
//			TNT1 A 0 A_PlaySound("BHeaddead")
//			ZH0D A 3 A_NoBlocking
//			ZH0D BCDEFGH 4
//			ZH0D H -1
//		Stop
//		Death.Poison: //Change this to whatever damage type your mod uses that would best fit to melt a head
//			TNT1 A 0 A_PlaySound("BHeadmelt")
//			ZH0H A 3 A_NoBlocking
//			ZH0H BCDEFG 4
//	/		ZH0H G -1
//		Stop
//		Burn:
//			TNT1 A 0 A_PlaySound("BHeadburn")
//			ZH0E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),30,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),30,random(-2,2),random(-2,2),1,0,0,0,0)
//			TNT1 A 0 A_PlaySound("ZHBBURN4")
//	/		ZH0E E 4 A_NoBlocking
//			ZH0E FGHIJ 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E KLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLMKLM 6 A_SpawnItemEx("HeadSmokeM",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E N 100
//			TNT1 A 0 A_SpawnItemEx("HeadSmokeS",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E N 100
//			TNT1 A 0 A_SpawnItemEx("HeadSmokeS",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E N 100
//			TNT1 A 0 A_SpawnItemEx("HeadSmokeS",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E N 100
//			TNT1 A 0 A_SpawnItemEx("HeadSmokeS",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0E N 100
//			TNT1 A 0 A_SpawnItemEx("HeadSmokeS",random(-4,4),random(-4,4),20,random(-2,2),random(-2,2),1,0,0,0,0)
//			ZH0F A -1
//		Stop
//	}
//}

////Doom Heads////
//Former Human//

Actor ZombieHeadFH 14811
{
	//$Category LivingProps
	//$Title "Zombie Head - Former Human"
	Monster
	Health 20
	Radius 10
	Height 10
	Speed 0
	Mass 100
	Scale 1
	PainChance 255
	-COUNTKILL
	States
	{
		Spawn:
			ZH1A A 10
			Goto See
		See:
			ZH1A AAAAAAAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50, "DoomHeadJump", "Groan")
		Loop
		DoomHeadJump:
			ZH1B A 1
			TNT1 A 0 ThrustThingZ (0, random(10,26), 0, 0)
			TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		Midair:
			ZH1B A 1
			TNT1 A 0 A_CheckFloor ("Land")
			loop
		Land:
			ZH1A AAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50, "See")
			Goto DoomHeadJump
		Groan:
			ZH1B A 1
			TNT1 A 0 A_PlaySound("DGroans")
			ZH1B A 14
			ZH1A AAAAAAAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50,"See")
		Loop
		Pain:
			ZH1C A 2
			TNT1 A 0 A_PlaySound("DHeadhit")
			ZH1C A 10
		Goto RunAway
		RunAway:
			ZH1A A 1
			TNT1 A 0 A_ChangeFlag("Frightened", True)
			TNT1 A 0 A_PlaySound("DGroans")
			ZH1A A 1 A_Chase
			TNT1 A 0 ThrustThingZ (0, random(10,26), 0, 0)
			TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		Midair:
			ZH1B A 1
			TNT1 A 0 A_CheckFloor ("LandScared")
		loop
		LandScared:
			ZH1A AAAAA 1 A_Chase
			TNT1 A 0 A_Jump(50, "NoMoreScared")
		Goto RunAway
		NoMoreScared:
			ZH1A A 1
			TNT1 A 0 A_ChangeFlag("Frightened", False)
		Goto See
		Death:
			TNT1 A 0 A_PlaySound("ZHDDEAD1")
			ZH1D A 3 A_NoBlocking
			ZH1D BCDEFGH 3
			ZH1D H -1
		Stop
		Burn:
			TNT1 A 0 A_PlaySound("DHeadburn")
			ZH1E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),15,random(-2,2),random(-2,2),1,0,0,0,0)
			ZH1E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),15,random(-2,2),random(-2,2),1,0,0,0,0)
			TNT1 A 0 A_PlaySound("ZHDFLAME")
			ZH1E E 4 A_NoBlocking
			ZH1E FGH 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),15,random(-2,2),random(-2,2),1,0,0,0,0)
			ZHZA ABCDEFG 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),15,random(-2,2),random(-2,2),1,0,0,0,0)
		Stop
	}
}

//Former Sargent//
Actor ZombieHeadFS 14812
{
	//$Category LivingProps
	//$Title "Zombie Head - Former Human"
	Monster
	Health 25
	Radius 10
	Height 10
	Speed 0
	Mass 100
	Scale 1
	PainChance 255
	-COUNTKILL
	States
	{
		Spawn:
			ZH2A A 10
			Goto See
		See:
			ZH2A AAAAAAAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50, "DoomHeadJump", "Groan")
		Loop
		DoomHeadJump:
			ZH2B A 1
			TNT1 A 0 ThrustThingZ (0, random(10,26), 0, 0)
			TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		Midair:
			ZH2B A 1
			TNT1 A 0 A_CheckFloor ("Land")
			loop
		Land:
			ZH2A AAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50, "See")
			Goto DoomHeadJump
		Groan:
			ZH2B A 1
			TNT1 A 0 A_PlaySound("DGroans")
			ZH2B A 14
			ZH2A AAAAAAAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50,"See")
		Loop
		Pain:
			ZH2C A 2
			TNT1 A 0 A_PlaySound("DHeadhit")
			ZH2C A 10
		Goto RunAway
		RunAway:
			ZH2A A 1
			TNT1 A 0 A_ChangeFlag("Frightened", True)
			TNT1 A 0 A_PlaySound("DGroans")
			ZH2A A 1 A_Chase
			TNT1 A 0 ThrustThingZ (0, random(10,26), 0, 0)
			TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		Midair:
			ZH2B A 1
			TNT1 A 0 A_CheckFloor ("LandScared")
		loop
		LandScared:
			ZH2A AAAAA 1 A_Chase
			TNT1 A 0 A_Jump(50, "NoMoreScared")
		Goto RunAway
		NoMoreScared:
			ZH2A A 1
			TNT1 A 0 A_ChangeFlag("Frightened", False)
		Goto See
		Death:
			TNT1 A 0 A_PlaySound("ZHDDEAD1")
			ZH2D A 3 A_NoBlocking
			ZH2D BCDEFGH 3
			ZH2D H -1
		Stop
		Burn:
			TNT1 A 0 A_PlaySound("DHeadburn")
			ZH2E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),15,random(-2,2),random(-2,2),1,0,0,0,0)
			ZH2E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),15,random(-2,2),random(-2,2),1,0,0,0,0)
			TNT1 A 0 A_PlaySound("ZHDFLAME")
			ZH2E E 4 A_NoBlocking
			ZH2E FGH 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),15,random(-2,2),random(-2,2),1,0,0,0,0)
			ZHZA ABCDEFG 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),15,random(-2,2),random(-2,2),1,0,0,0,0)
		Stop
	}
}

//Former Commando//
Actor ZombieHeadFC 14813
{
	//$Category LivingProps
	//$Title "Zombie Head - Former Human"
	Monster
	Health 35
	Radius 10
	Height 10
	Speed 0
	Mass 100
	Scale 1
	PainChance 255
	-COUNTKILL
	States
	{
		Spawn:
			ZH3A A 10
			Goto See
		See:
			ZH3A AAAAAAAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50, "DoomHeadJump", "Groan")
		Loop
		DoomHeadJump:
			ZH3B A 1
			TNT1 A 0 ThrustThingZ (0, random(10,26), 0, 0)
			TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		Midair:
			ZH3B A 1
			TNT1 A 0 A_CheckFloor ("Land")
			loop
		Land:
			ZH3A AAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50, "See")
			Goto DoomHeadJump
		Groan:
			ZH3B A 1
			TNT1 A 0 A_PlaySound("DGroans")
			ZH3B A 14
			ZH3A AAAAAAAAAA 5 A_Wander
			TNT1 A 0 A_Jump(50,"See")
		Loop
		Pain:
			ZH3C A 2
			TNT1 A 0 A_PlaySound("DHeadhit")
			ZH3C A 10
		Goto RunAway
		RunAway:
			ZH3A A 1
			TNT1 A 0 A_ChangeFlag("Frightened", True)
			TNT1 A 0 A_PlaySound("DGroans")
			ZH3A A 1 A_Chase
			TNT1 A 0 ThrustThingZ (0, random(10,26), 0, 0)
			TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		Midair:
			ZH3B A 1
			TNT1 A 0 A_CheckFloor ("LandScared")
		loop
		LandScared:
			ZH3A AAAAA 1 A_Chase
			TNT1 A 0 A_Jump(50, "NoMoreScared")
		Goto RunAway
		NoMoreScared:
			ZH3A A 1
			TNT1 A 0 A_ChangeFlag("Frightened", False)
		Goto See
		Death:
			TNT1 A 0 A_PlaySound("ZHDDEAD1")
			ZH3D A 3 A_NoBlocking
			ZH3D BCDEFGH 3
			ZH3D H -1
		Stop
		Burn:
			TNT1 A 0 A_PlaySound("DHeadburn")
			ZH3E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),15,random(-2,2),random(-2,2),1,0,0,0,0)
			ZH3E ABCDABCDABCDABCDABCD 4 A_SpawnItemEx("HeadSmokeL",random(-6,6),random(-6,6),15,random(-2,2),random(-2,2),1,0,0,0,0)
			TNT1 A 0 A_PlaySound("ZHDFLAME")
			ZH3E E 4 A_NoBlocking
			ZH3E FGH 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),15,random(-2,2),random(-2,2),1,0,0,0,0)
			ZHZA ABCDEFG 4 A_SpawnItemEx("HeadSmokeL",random(-4,4),random(-4,4),15,random(-2,2),random(-2,2),1,0,0,0,0)
		Stop
	}
}

////Smoke////
Actor HeadSmokeL
{ 
    Scale 0.75
	Speed 2
    +NOCLIP
    +NOGRAVITY
    States
    {
    Spawn:
      ZHSP ABCDEFGH 1
      Stop
    }
}

Actor HeadSmokeM : HeadSmokeL
{ 
    Scale 0.50
}

Actor HeadSmokeS : HeadSmokeL
{ 
    Scale 0.25
}

ACTOR HellGrowth 12367
{
	//$Title Hell Growth
	//$Category Obstacles
	//$IsDecoration

	Radius 16
	Height 56
	ProjectilePassHeight -16
	
	+SOLID
  
		States
		{
			Spawn:
				HTRE A -1
				Stop
		}
}

ACTOR BigHellGrowth 12368
{
	//$Title Big Hell Growth
	//$Category Obstacles
	//$IsDecoration

	Radius 32
	Height 112
	ProjectilePassHeight -16
	
	+SOLID
  
		States
		{
			Spawn:
				HTRE B -1
				Stop
		}
}

ACTOR DoomDoll 12369
{
  Game Doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    DDOL A -1
    Stop
  }
}

ACTOR ImpDoll 12370
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    IMPD A -1
    Stop
  }
}

ACTOR ZombieManDoll 12371
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    ZBMD A -1
    Stop
  }
}

ACTOR ShotGunGuyDoll 12372
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    SGGD A -1
    Stop
  }
}

ACTOR ZSpecGuyDoll 12373
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    ZSCD A -1
    Stop
  }
}

ACTOR ChaingunGuyDoll 12374
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    CGGD A -1
    Stop
  }
}

ACTOR DevilDoll 12375
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    DEVD A -1
    Stop
  }
}

ACTOR FormerRangerDoll 12376
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    RGRD A -1
    Stop
  }
}

ACTOR CyberImpDoll 12377
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    RBIP A -1
    Stop
  }
}

ACTOR ImpAbominationDoll 12378
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    RIMP A -1
    Stop
  }
}

ACTOR ImpSkulltagDoll 12379
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    SIMP A -1
    Stop
  }
}

ACTOR ImpVoidDoll 12380
{
  Game doom
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    BIMP A -1
    Stop
  }
}

ACTOR StrifeDoll 12381
{
  Game Strife
  Radius 28
  Height 9
  +SOLID
  States
  {
  Spawn:
    SDOL A -1
    Stop
  }
}

// Blue torches with gold stand -------------------------

ACTOR D64ShortBlueTorchGoldStand 12382
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    BTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallBlueTorchGoldStand 12383
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    BTGT ABCD 4 Bright
    Loop
  }
}

// Blue torches with silver stand -----------------------

ACTOR D64ShortBlueTorchSilverStand 12384
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    BTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallBlueTorchSilverStand 12385
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    BTST ABCD 4 Bright
    Loop
  }
}

// Blue torches with bronze stand -----------------------

ACTOR D64ShortBlueTorchBronzeStand 12386
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    BTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallBlueTorchBronzeStand 12387
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    BTBT ABCD 4 Bright
    Loop
  }
}

// Cyan torches with gold stand -------------------------

ACTOR D64ShortCyanTorchGoldStand 12388
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    CTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallCyanTorchGoldStand 12389
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    CTGT ABCD 4 Bright
    Loop
  }
}

// Cyan torches with silver stand -----------------------

ACTOR D64ShortCyanTorchSilverStand 12390
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    CTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallCyanTorchSilverStand 12391
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    CTST ABCD 4 Bright
    Loop
  }
}

// Cyan torches with bronze stand -----------------------

ACTOR D64ShortCyanTorchBronzeStand 12392
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    CTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallCyanTorchBronzeStand 12393
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    CTBT ABCD 4 Bright
    Loop
  }
}

// Green torches with gold stand --------------------------

ACTOR D64ShortGreenTorchGoldStand 12394
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    GTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallGreenTorchGoldStand 12395
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    GTGT ABCD 4 Bright
    Loop
  }
}

// Green torches with silver stand ------------------------

ACTOR D64ShortGreenTorchSilverStand 12396
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    GTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallGreenTorchSilverStand 12397
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    GTST ABCD 4 Bright
    Loop
  }
}

// Green torches with bronze stand ------------------------

ACTOR D64ShortGreenTorchBronzeStand 12398
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    GTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallGreenTorchBronzeStand 12399
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    GTBT ABCD 4 Bright
    Loop
  }
}

// Purple torches with gold stand --------------------------

ACTOR D64ShortPurpleTorchGoldStand 12400
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    PTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallPurpleTorchGoldStand 12401
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    PTGT ABCD 4 Bright
    Loop
  }
}

// Purple torches with silver stand ------------------------

ACTOR D64ShortPurpleTorchSilverStand 12402
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    PTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallPurpleTorchSilverStand 12403
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    PTST ABCD 4 Bright
    Loop
  }
}

// Purple torches with bronze stand ------------------------

ACTOR D64ShortPurpleTorchBronzeStand 12404
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    PTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallPurpleTorchBronzeStand 12405
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    PTBT ABCD 4 Bright
    Loop
  }
}

// Red torches with gold stand --------------------------

ACTOR D64ShortRedTorchGoldStand 12406
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    RTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallRedTorchGoldStand 12407
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    RTGT ABCD 4 Bright
    Loop
  }
}

// Red torches with silver stand ------------------------

ACTOR D64ShortRedTorchSilverStand 12408
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    RTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallRedTorchSilverStand 12409
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    RTST ABCD 4 Bright
    Loop
  }
}

// Red torches with bronze stand ------------------------

ACTOR D64ShortRedTorchBronzeStand 12410
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    RTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallRedTorchBronzeStand 12411
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    RTBT ABCD 4 Bright
    Loop
  }
}

// White torches with gold stand --------------------------

ACTOR D64ShortWhiteTorchGoldStand 12412
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    WTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallWhiteTorchGoldStand 12413
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    WTGT ABCD 4 Bright
    Loop
  }
}

// White torches with silver stand ------------------------

ACTOR D64ShortWhiteTorchSilverStand 12414
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    WTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallWhiteTorchSilverStand2 12415
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    WTST ABCD 4 Bright
    Loop
  }
}

// White torches with bronze stand ------------------------

ACTOR D64ShortWhiteTorchBronzeStand 12416
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    WTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallWhiteTorchBronzeStand 12417
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    WTBT ABCD 4 Bright
    Loop
  }
}

// Yellow torches with gold stand --------------------------

ACTOR D64ShortYellowTorchGoldStand 12418
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    YTGS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallYellowTorchGoldStand 12419
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    YTGT ABCD 4 Bright
    Loop
  }
}

// Yellow torches with silver stand ------------------------

ACTOR D64ShortYellowTorchSilverStand 12420
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    YTSS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallYellowTorchSilverStand 12421
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    YTST ABCD 4 Bright
    Loop
  }
}

// Yellow torches with bronze stand ------------------------

ACTOR D64ShortYellowTorchBronzeStand 12422
{
  Game Doom
  Radius 16
  Height 37
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    YTBS ABCD 4 Bright
    Loop
  }
}

ACTOR D64TallYellowTorchBronzeStand 12423
{
  Game Doom
  Radius 16
  Height 68
  ProjectilePassHeight -16
  +SOLID
  States
  {
  Spawn:
    YTBT ABCD 4 Bright
    Loop
  }
}

ACTOR AshTray 12424
{
  Health 1000
  Radius 7
  Height 25
  scale 0.2
  +SOLID
  States
  {
  Spawn:
    ATDF A -1
    Stop
  }
}

ACTOR cigbutts 12425
{
  Health 1000
  Radius 10
  Height 42
  scale 0.2
  +solid
  +noclip
  States
  {
  Spawn:
    CIGZ A -1
    Stop
  }
}

ACTOR blade_blade 12430
{
scale 0.05
-solid
  Radius 1
  Height 1
  States
  {
  Spawn:
    XBZD A -1
    Stop
  }
}

ACTOR blade_SHADES 12431
{
scale 0.04
-solid
  Radius 1
  Height 1
  States
  {
  Spawn:
    ZBXD A -1
    Stop
  }
}

Actor Sedan : FastProjectile
{
  //$Category Stuff
  Radius 40
  Height 40
  Speed 25
  Mass 1000
  PROJECTILE
  DeathType "MapGibber"
  +NOBLOOD
  -solid
  +THRUACTORS
  AttackSound "car/hit"
  obituary "%o didnt look both ways before crossing the street"
  States
  {
  Spawn:
    GCAR A 1 A_PlaySound("cargreen/loop",CHAN_AUTO,1,1)
    GCAR AAAAAA 1 A_Explode(999, 62, XF_HURTSOURCE, 0, 62)
    Loop
  Death:
	TNT1 A 1 A_StopSound
	Stop
  }
}

Actor SedanRed : Sedan
{
  Translation "112:127=176:191"
}

Actor SedanBlue : Sedan
{
  Translation "112:127=192:207"
}

Actor SedanWhite : Sedan
{
  Translation "112:127=80:95"
}

Actor SedanBrown : Sedan
{
  Translation "112:127=128:143"
}

Actor SedanGray : Sedan
{
  Translation "112:127=96:111"
}

Actor SedanPink : Sedan
{
  Translation "112:127=250:254"
}

Actor SedanYellow : Sedan
{
  Translation "112:127=224:231"
}

Actor SedanOrange : Sedan
{
  Translation "112:127=208:223"
}

Actor SedanDarkRed : Sedan
{
  Translation "112:127=32:47"
}

Actor SedanDarkBlue : Sedan
{
  Translation "112:127=240:247"
}

Actor Ferrari : Sedan
{
  States
  {
  Spawn:
    FERB A 1 A_PlaySound("ferrari/loop",CHAN_AUTO,1,1)
    FERB AAAAAA 1 A_Explode(999, 62, XF_HURTSOURCE, 0, 62)
    Loop
  Death:
	TNT1 A 1 A_StopSound
	Stop
  }
}

Actor FerrariRed : Ferrari
{
  Translation "112:127=176:191"
}

Actor FerrariBlue : Ferrari
{
  Translation "112:127=192:207"
}

Actor FerrariWhite : Ferrari
{
  Translation "112:127=80:95"
}

Actor FerrariBrown : Ferrari
{
  Translation "112:127=128:143"
}

Actor FerrariGray : Ferrari
{
  Translation "112:127=96:111"
}

Actor FerrariPink : Ferrari
{
  Translation "112:127=250:254"
}

Actor FerrariYellow : Ferrari
{
  Translation "112:127=224:231"
}

Actor FerrariOrange : Ferrari
{
  Translation "112:127=208:223"
}

Actor FerrariDarkRed : Ferrari
{
  Translation "112:127=32:47"
}

Actor FerrariDarkBlue : Ferrari
{
  Translation "112:127=240:247"
}

Actor Truck : Sedan
{
  States
  {
  Spawn:
    TRUK A 1 A_PlaySound("truck/loop",CHAN_AUTO,1,1)
    TRUK AAAAAA 1 A_Explode(999, 62, XF_HURTSOURCE, 0, 62)
    Loop
  Death:
	TNT1 A 1 A_StopSound
	Stop
  }
}

Actor TruckRed : Truck
{
  Translation "112:127=176:191"
}

Actor TruckBlue : Truck
{
  Translation "112:127=192:207"
}

Actor TruckWhite : Truck
{
  Translation "112:127=80:95"
}

Actor TruckBrown : Truck
{
  Translation "112:127=128:143"
}

Actor TruckGray : Truck
{
  Translation "112:127=96:111"
}

Actor TruckPink : Truck
{
  Translation "112:127=250:254"
}

Actor TruckYellow : Truck
{
  Translation "112:127=224:231"
}

Actor TruckOrange : Truck
{
  Translation "112:127=208:223"
}

Actor TruckDarkRed : Truck
{
  Translation "112:127=32:47"
}

Actor TruckDarkBlue : Truck
{
  Translation "112:127=240:247"
}

Actor Ectomobile : Sedan
{
  States
  {
  Spawn:
    ECTO A 1 A_PlaySound("ecto/loop",CHAN_AUTO,1,1)
    ECTO AAAAAAA 1 A_Explode(999, 62, XF_HURTSOURCE, 0, 62)
    Loop
  Death:
	TNT1 A 1 A_StopSound
	Stop
  }
}

ACTOR CarHitMarker : CustomInventory
{
  Inventory.Amount 1
  +NOSCREENFLASH
  States
  {
  Pickup:
    TNT1 A 0 A_PlaySound("car/hit", chan_auto)
    Stop
  }
}

ACTOR SilverFieldsBell 12432
{
  Radius 16
  Height 2
  Scale 0.3
  -SOLID
  +NOGRAVITY
  +SPAWNCEILING
  States
  {
  Spawn:
    BBLL A -1
    Loop
  Active:
    BBLL BCDEEDCBAFGGFA 6
    BBLL BCDEEDCBAFGGFA 6
    BBLL BCDEEDCBAFGGFA 6
    Goto Spawn
  }
}