ACTOR DukeMechParticle
{
    Radius 1
    Height 1
    Speed 0
    Projectile
    +MISSILE
    -NOGRAVITY
    +MOVEWITHSECTOR
    +CLIENTSIDEONLY
    +CORPSE
    +NOTELEPORT
    +NOBLOCKMAP
    +THRUACTORS
    +THRUGHOST
    Gravity 0.5
    Health 1
    Scale 0.7
    +THRUSPECIES
    Species "DukeDebris"
    States
    {
    Spawn:
	TNT1 A 0
        TNT1 A 1 A_Jump(256,"Metal1","Metal2","Metal3","Metal4","Metal5")
        Goto Metal1
    Metal1:
	TNT1 A 0
	TNT1 A 1 A_SpawnDebris("MetalBGibs1", FALSE, 1.0, 1.0)	
        Stop
    Metal2:
	TNT1 A 0
	TNT1 A 1 A_SpawnDebris("MetalBGibs2", FALSE, 1.0, 1.0)	
        Stop
    Metal3:
	TNT1 A 0
	TNT1 A 1 A_SpawnDebris("MetalBGibs3", FALSE, 1.0, 1.0)	
        Stop
    Metal4:
	TNT1 A 0
	TNT1 A 1 A_SpawnDebris("MetalBGibs4", FALSE, 1.0, 1.0)	
        Stop
    Metal5:
	TNT1 A 0
	TNT1 A 1 A_SpawnDebris("MetalBGibs5", FALSE, 1.0, 1.0)	
        Stop
    }
}

ACTOR MetalGibs1 : ZMissileMetal
{
    Radius 4
    Height 4
    Speed 0
    Projectile
    +MISSILE
    -NOGRAVITY
    +MOVEWITHSECTOR
    +CLIENTSIDEONLY
    +CORPSE
    +NOTELEPORT
    +NOBLOCKMAP
    +THRUACTORS
    +THRUGHOST
    Gravity 0.5
    Health 8
    Scale 0.7
    +THRUSPECIES
    Species "DukeDebris"
    States
    {
    Spawn:
	TNT1 A 0
        DMD1 ABCDEFGHI 2
        Loop
    Death:
        TNT1 A 0 A_Gravity
    Death2:
        DMD1 C 1 A_CheckFloor(1)
        loop
    Death3:
        TNT1 A 0 A_SpawnItemEx("DukeBurningSmall", 0, 0, 0, 0, 0, 0, 0, SXF_SETMASTER, 230)
        DMD1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD1 C -1
        stop
    Vanish:
        DMD1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_FadeOut(0.1)
        stop
    }
}

ACTOR MetalGibs2 : MetalGibs1
{
    States
    {
    Spawn:
	TNT1 A 0
        DMD2 ABCDEFGH 2
        Loop
    Spawn:
	TNT1 A 0
        DMD1 ABCDEFGHI 2
        Loop
    Death:
        TNT1 A 0 A_Gravity
    Death2:
        DMD2 F 1 A_CheckFloor(1)
        loop
    Death3:
        TNT1 A 0 A_SpawnItemEx("DukeBurningSmall", 0, 0, 0, 0, 0, 0, 0, SXF_SETMASTER, 230)
	DMD2 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD2 F -1
        stop
    Vanish:
	DMD2 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1 A_FadeOut(0.1)
        stop
    }
}

ACTOR MetalGibs3 : MetalGibs1
{
    States
    {
    Spawn:
	TNT1 A 0
        DMD3 ABCD 2
        Loop
    Death:
        TNT1 A 0 A_Gravity
    Death2:
        DMD3 D 1 A_CheckFloor(1)
        loop
    Death3:
        TNT1 A 0 A_SpawnItemEx("DukeBurningSmall", 0, 0, 0, 0, 0, 0, 0, SXF_SETMASTER, 230)
	DMD3 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD3 D -1
        stop
    Vanish:
	DMD3 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_FadeOut(0.1)
        stop
    }
}

ACTOR MetalGibs4 : MetalGibs1
{
    States
    {
    Spawn:
	TNT1 A 0
        DMD4 ABCD 2
        Loop
    Death:
        TNT1 A 0 A_Gravity
    Death2:
        DMD4 C 1 A_CheckFloor(1)
        loop
    Death3:
        TNT1 A 0 A_SpawnItemEx("DukeBurningSmall", 0, 0, 0, 0, 0, 0, 0, SXF_SETMASTER, 230)
	DMD4 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD4 C -1
        stop
    Vanish:
	DMD4 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_FadeOut(0.1)
        stop
    }
}

ACTOR MetalGibs5 : MetalGibs1
{
    States
    {
    Spawn:
	TNT1 A 0
        DMD5 ABC 2
        Loop
    Death:
        TNT1 A 0 A_Gravity
    Death2:
        DMD5 B 1 A_CheckFloor(1)
        loop
    Death3:
        TNT1 A 0 A_SpawnItemEx("DukeBurningSmall", 0, 0, 0, 0, 0, 0, 0, SXF_SETMASTER, 230)
	DMD5 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD5 B -1
        stop
    Vanish:
	DMD5 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_FadeOut(0.1)
        stop
    }
}

ACTOR MetalBGibs1 : MetalGibs1
{
    Gravity 0.68
    Scale 0.4
    Health 1
    States
    {
    Spawn:
	TNT1 A 0
        DMD1 ABCDEFGHI 2
        Loop
    Death:
        DMD1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD1 C -1
        stop
    Vanish:
	DMD1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_FadeOut(0.1)
        Stop
    }
}

ACTOR MetalBGibs2 : MetalGibs2
{
    Gravity 0.68
    Scale 0.4
    Health 1
    States
    {
    Spawn:
	TNT1 A 0
        DMD2 ABCDEFGH 2
        Loop
    Death:
        DMD2 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD2 F -1
        stop
    Vanish:
	DMD2 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1 A_FadeOut(0.1)
        Stop
    }
}

ACTOR MetalBGibs3 : MetalGibs3
{
    Gravity 0.68
    Scale 0.4
    Health 1
    States
    {
    Spawn:
	TNT1 A 0
        DMD3 ABCD 2
        Loop
    Death:
        DMD3 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD3 D -1
        stop
    Vanish:
	DMD3 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_FadeOut(0.1)
        Stop
    }
}

ACTOR MetalBGibs4 : MetalGibs4
{
    Gravity 0.68
    Scale 0.4
    Health 1
    States
    {
    Spawn:
	TNT1 A 0
        DMD4 ABCD 2
        Loop
    Death:
        DMD4 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD4 C -1
        stop
    Vanish:
	DMD4 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_FadeOut(0.1)
        Stop
    }
}

ACTOR MetalBGibs5 : MetalGibs5
{
    Gravity 0.68
    Scale 0.4
    Health 1
    States
    {
    Spawn:
	TNT1 A 0
        DMD5 ABC 2
        Loop
    Death:
        DMD5 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 35 A_Gravity
        TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
        DMD5 B -1
        stop
    Vanish:
	DMD5 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_FadeOut(0.1)
        Stop
    }
}

Actor DukeMetalPart : ZMissileMetal
{
}

Actor DukinatorHead : DukeMetalPart
{
  Radius 4
  Height 4
  Speed 0
  Projectile
  +MISSILE
  -NOGRAVITY
  +MOVEWITHSECTOR
  +CLIENTSIDEONLY
  +CORPSE
  +NOTELEPORT
  +NOBLOCKMAP
  +THRUACTORS
  +THRUGHOST
  Health 1
  xscale 1.2
  yscale 0.9
  BounceType Doom
  +CANBOUNCEWATER
  +THRUSPECIES
  Species "DukeDebris"
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D6 A 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D6 A 16 A_PlaySound("dukinator/off")
    D3D6 B 16
    D3D6 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D6 C -1
    stop
  Vanish:
    D3D6 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_FadeOut(0.1)
    Stop
  }
}

Actor DukinatorLeg : DukinatorHead
{
  BounceType None
  Gravity 0.5
  Health 2
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    TNT1 A 0 A_Jump(256, "A", "B", "C", "D", "E", "F", "G", "H")
  A:
    D3D5 A 4
  B:
    D3D5 B 4
  C:
    D3D5 C 4
  D:
    D3D5 D 4
  E:
    D3D5 E 4
  F:
    D3D5 F 4
  G:
    D3D5 G 4
  H:
    D3D5 H 4
    Goto A
  Death:
    TNT1 A 0 A_Jump(64,2)
    TNT1 A 0 A_PlaySound("metal/land")
    TNT1 A 0
    TNT1 A 0 A_Gravity
    D3D5 GGGGGGGGGGGGGGGGGGGGGGGGGGGGGG 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D5 G -1
    stop
  Vanish:
    D3D5 GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG 1 A_FadeOut(0.1)
    Stop
  }
}

Actor DukinatorTorso : DukinatorHead
{
  BounceType None
  Gravity 0.5
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D6 F 1
    loop
  Death:
    TNT1 A 0 A_Jump(64,2)
    TNT1 A 0 A_PlaySound("metal/land")
    TNT1 A 0
    TNT1 A 0 A_Gravity
    D3D6 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D6 F -1
    stop
  Vanish:
    D3D6 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1 A_FadeOut(0.1)
    Stop
  }
}

Actor DukinatorArm : DukinatorHead
{
  BounceType None
  Gravity 0.5
  Health 2
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D6 H 1
    loop
  Death:
    TNT1 A 0 A_Jump(64,2)
    TNT1 A 0 A_PlaySound("metal/land")
    TNT1 A 0
    TNT1 A 0 A_Gravity
    D3D6 HHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D6 H -1
    stop
  Vanish:
    D3D6 HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 1 A_FadeOut(0.1)
    Stop
  }
}

Actor DukinatorPart1 : DukinatorHead
{
  BounceType None
  Gravity 0.5
  Health 2
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D6 D 1
    loop
  Death:
    TNT1 A 0 A_Jump(64,2)
    TNT1 A 0 A_PlaySound("metal/land")
    TNT1 A 0
    TNT1 A 0 A_Gravity
    D3D6 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D6 D -1
    stop
  Vanish:
    D3D6 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_FadeOut(0.1)
    Stop
  }
}

Actor DukinatorPart2 : DukinatorHead
{
  BounceType None
  Gravity 0.5
  Health 2
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D5 X 1
    loop
  Death:
    TNT1 A 0 A_Jump(64,2)
    TNT1 A 0 A_PlaySound("metal/land")
    TNT1 A 0
    TNT1 A 0 A_Gravity
    D3D5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D5 X -1
    stop
  Vanish:
    D3D5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 1 A_FadeOut(0.1)
    Stop
  }
}

Actor PigAssShieldPiece1 : DukeMetalPart
{
  Radius 6
  Height 12
  Speed 0
  PROJECTILE
  +MISSILE
  -NOGRAVITY
  +MOVEWITHSECTOR
  +CLIENTSIDEONLY
  +CORPSE
  +NOTELEPORT
  +NOBLOCKMAP
  +THRUACTORS
  +THRUGHOST
  Scale 0.875
  BounceType Doom
  +CANBOUNCEWATER
  +THRUSPECIES
  Species "DukeDebris"
  States
  {
  Spawn:
    D3D4 A 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D4 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D4 A -1
    stop
  Vanish:
    D3D4 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_FadeOut(0.1)
    Stop
  }
}

Actor PigAssShieldPiece2 : PigAssShieldPiece1
{
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D4 B 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D4 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D4 B -1
    stop
  Vanish:
    D3D4 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_FadeOut(0.1)
    Stop
  }
}

Actor PigAssShieldPiece3 : PigAssShieldPiece1
{
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D4 C 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D4 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D4 C -1
    stop
  Vanish:
    D3D4 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_FadeOut(0.1)
    Stop
  }
}

Actor PigAssShieldPiece4 : PigAssShieldPiece1
{
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D4 D 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D4 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D4 D -1
    stop
  Vanish:
    D3D4 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_FadeOut(0.1)
    Stop
  }
}

Actor PigAssShieldPiece5 : PigAssShieldPiece1
{
  States
  {
  Spawn:
    D3D4 E 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D4 EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D4 E -1
    stop
  Vanish:
    D3D4 EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 A_FadeOut(0.1)
    Stop
  }
}

Actor PigAssShieldPiece6 : PigAssShieldPiece1
{
  States
  {
  Spawn:
    TNT1 AAAAAAAA 0
    TNT1 A 0 A_Jump(128,2)
    TNT1 A 0 A_ChangeFlag("SPRITEFLIP", 1)
    TNT1 A 0
  Spawn2:
    D3D4 F 1
    loop
  Death:
    TNT1 A 0 A_Gravity
    D3D4 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 35 A_Gravity
    TNT1 A 0 A_JumpIf(d3d_vanishmetal==1, "Vanish")
    D3D4 F -1
    stop
  Vanish:
    D3D4 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1 A_FadeOut(0.1)
    Stop
  }
}