actor MChaingunGuy : ChainGunGuy 
{
  tag ChaingunGuy
  health 80
  radius 20
  height 56
  mass 100
  speed 8
  painchance 170
  
  PainChance "Control", 255
  DamageFactor "Control", 1
  
  +NOINFIGHTING //added 3.3
  
  // takes damage from 
  DamageFactor "MarineDamage", 1
  DamageFactor "ImpBallDamage", 0.5
  DamageFactor "CacoDamage", 0.5
  DamageFactor "SkelDamage", 0.5
  DamageFactor "FatsoDamage", 0.5
  DamageFactor "KnightDamage", 0.5
  DamageFactor "ArachDamage", 0.5
  DamageFactor "viledamage", 0.5
  DamageFactor "ZombiesDamage", 0.5

  dropitem "MChaingun" 16

  states
  {
  Spawn:
    CPOS A 10 A_Look 
	CPOS B 10
	CPOS A 0 Thing_SetSpecial (0,226,409,0,health)
	loop
  See:
    CPOS AABBCCDD 3 A_Chase
    CPOS A 0 A_JumpIf (special != 226,1) 
	loop	
	CPOS A 0 Thing_SetSpecial (0,226,409,0,health)
	goto see
  Missile:
    CPOS E 10 A_FaceTarget
    CPOS F 3 bright A_CustomBulletAttack (19.5, 4, 1, 5, "FBulletPuff")
    CPOS E 2
    CPOS F 3 bright A_CustomBulletAttack (19.5, 4, 1, 5, "FBulletPuff")
    CPOS E 2
    CPOS F 1 A_CPosRefire
    goto Missile+1	
  Death.Control:
    TNT1 A 0 ACS_Execute(410,0,4)
	TNT1 A 10
	stop
  Death:
    CPOS H 5 A_GiveToTarget ("MarineExp",3)
    CPOS I 5 A_Scream
    CPOS J 5 A_NoBlocking
    CPOS KLM 5
    CPOS N 1000
    stop
  XDeath:
    CPOS O 5 A_GiveToTarget ("MarineExp",3)
    CPOS P 5 A_XScream
    CPOS Q 5 A_NoBlocking
    CPOS RS 5
    CPOS T 1000
    stop	
  }
}

actor MChaingunGuy2
{
  tag "double-chaingunner"
  obituary "%o was ripped to bloody ribbons by a double-chaingunner."
  health 150
  radius 20
  height 56
  mass 100
  speed 8
  painchance 150
  seesound "chainguy/sight"
  attacksound "chainguy/attack"
  painsound "chainguy/pain"
  deathsound "chainguy/death"
  activesound "chainguy/active"
  dropitem "MChaingun" 16
  //dropitem "MChaingun" 256
  MONSTER
  +FLOORCLIP
  Decal Bulletchip

  PainChance "Control", 255
  DamageFactor "Control", 1

  +NOINFIGHTING //added 3.3
  
  // takes damage from 
  DamageFactor "MarineDamage", 1
  DamageFactor "ImpBallDamage", 0.5
  DamageFactor "CacoDamage", 0.5
  DamageFactor "SkelDamage", 0.5
  DamageFactor "FatsoDamage", 0.5
  DamageFactor "KnightDamage", 0.5
  DamageFactor "ArachDamage", 0.5
  DamageFactor "viledamage", 0.5
  DamageFactor "ZombiesDamage", 0.5
  
  states
  {
  Spawn:
    DPOS A 10 A_Look
	DPOS B 10
	DPOS A 0 Thing_SetSpecial (0,226,409,0,health)
    loop
  See:
    DPOS AABBCCDD 3 A_Chase
    DPOS A 0 A_JumpIf (special != 226,1) 
	loop	
	DPOS A 0 Thing_SetSpecial (0,226,409,0,health)
	goto see
  Missile:
    DPOS E 10 A_FaceTarget
    DPOS F 0 bright A_CustomBulletAttack (19.5, 4, 1, 5, "FBulletPuff")
    DPOS F 3 bright A_CustomBulletAttack (19.5, 4, 1, 5, "FBulletPuff")
    DPOS E 2
    DPOS F 0 bright A_CustomBulletAttack (19.5, 4, 1, 5, "FBulletPuff")
    DPOS F 3 bright A_CustomBulletAttack (19.5, 4, 1, 5, "FBulletPuff")
    DPOS E 2
    DPOS F 1 A_CPosRefire
    goto Missile+1
  Pain:
    DPOS G 3
    DPOS G 3 A_Pain
    goto See
  Death:
    DPOS H 5 A_GiveToTarget ("MarineExp",5)
    DPOS I 5 A_Scream
    DPOS J 5 A_NoBlocking
    DPOS KLM 5
    DPOS N 1000
    stop
  XDeath:
    DPOS O 5 A_GiveToTarget ("MarineExp",5)
    DPOS P 5 A_XScream
    DPOS Q 5 A_NoBlocking
    DPOS RS 5
    DPOS T 1000
    stop
  Raise:
    DPOS NMLKJIH 5
    goto See
  Death.Control:
    TNT1 A 0 ACS_Execute(410,0,22)
	TNT1 A 10
	stop	
  }
}
