

/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
// Medium Explosion (25% smaller than the "Large Explosion")
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////


actor Explosion_Spawner_M
{
  SeeSound "weapons/rocklx"
  +NOGRAVITY
  States
  {   
    Spawn:
    TNT1 A 0
    TNT1 A 0 bright A_SpawnItemEx("Explosion_RingSpawner_M", 0, 0, 0, 0, 0, 0, 0, 128, 0)

    Spawn2:
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("Ash", random(-24, 24), random(-24, 24), 
random(-24, 24), 0,0,0, 0, 128, 0)    
	TNT1 A 0 A_SpawnItemEx("Scorch_M", 0, 0, 0, 0, 0, 0, 0, 0, 0)
	TNT1 AAAA 0 bright A_SpawnItemEx("Explosion_Part_M", random(-32, 32), random(-32, 32), 
random(-32, 32), 0,0,0, 0, 128, 0)
    TNT1 AAAA 0 bright A_SpawnItemEx("Explosion_PartSmoke_M", random(-16, 16), random(-16, 
16), random(-16, 16), random(-1, 1),random(-1, 1),random(-1, 1), 0, 128, 0)    
    TNT1 A 0 bright A_SpawnItemEx("Explosion_Radius_M", 0, 0, 0, 0, 0, 0, 0, 128, 0)    
    stop
  }
}



actor Explosion_Radius_M
{
  alpha 0.7
  scale 0.8
  renderstyle add
  +NOGRAVITY
  States
  {   
    Spawn:
    EXPL ABCDEF 1 bright A_FadeOut(0.1)
    stop
  }
}



actor Explosion_Part_M
{
  alpha 1
  scale 1.6
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART B 1 A_FadeOut(0.03)
  	Loop
  }
}

actor Explosion_PartSmoke_M
{
  alpha 1
  scale 2.4
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART N 1 A_FadeOut(0.01)
  	Loop
  }
}

actor Explosion_RingSpawner_M
{
  +NOGRAVITY
  States
  {
	Spawn:
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring1_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring2_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring3_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring4_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring5_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring6_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring7_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring8_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring9_M", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 A_SpawnItemEx ("Explosion_Ring10_M", 0, 0, 0, 0, 0, 0)	 		
		stop
  }
}

actor Explosion_Ring1_M
{
  alpha 1
  Mass 5
  scale 0.16
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2
  	stop
  }
}

actor Explosion_Ring2_M
{
  alpha 0.9
  Mass 5
  scale 0.32
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2
  	stop
  }
}

actor Explosion_Ring3_M
{
  alpha 0.8
  Mass 5
  scale 0.48
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2
  	stop
  }
}

actor Explosion_Ring4_M
{
  alpha 0.7
  Mass 5
  scale 0.64
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2
  	stop
  }
}

actor Explosion_Ring5_M
{
  alpha 0.6
  Mass 5
  scale 0.8
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2
  	stop
  }
}

actor Explosion_Ring6_M
{
  alpha 0.5
  Mass 5
  scale 0.96
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2 
  	stop
  }
}

actor Explosion_Ring7_M
{
  alpha 0.4
  Mass 5
  scale 1.12
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2 
  	stop
  }
}

actor Explosion_Ring8_M
{
  alpha 0.3
  Mass 5
  scale 1.28
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2 
  	stop
  }
}

actor Explosion_Ring9_M
{
  alpha 0.2
  Mass 5
  scale 1.44
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2 
  	stop
  }
}

actor Explosion_Ring10_M
{
  alpha 0.1
  Mass 5
  scale 1.6
  renderstyle add
  +NOBLOCKMAP
  +NOTELEPORT
  +NOGRAVITY
  States
  {
	Spawn:
  		PART Q 2 
  	stop
  }
}

