ACTOR MarineClass : DoomPlayer
{
  Speed 0.95
  Health 100
  Radius 16
  Height 56
  Mass 100
  PainChance 255
  Player.ColorRange 112, 127
  Player.DisplayName "Marine"
  Player.CrouchSprite "PLYC"

  Player.StartItem "Mrank0",1
  // give start armor 

  Player.StartItem "StartArmor", 1
  
  Player.WeaponSlot 1, MChainsaw, MFists, MFist
  Player.WeaponSlot 2, ADMPistol,Mpistol
  Player.WeaponSlot 3, MShotgun, MSuperShotgun, AssaultShotgun
  Player.WeaponSlot 4, MChaingun, AssaultRifle, Vulcan
  Player.WeaponSlot 5, MRocketLauncher //, GrenadeLauncher
  Player.WeaponSlot 6, MPlasmaRifle  // , RailGun
  Player.WeaponSlot 7, MBFG9000    //, BFG10K
  
  DamageFactor "Control", 0
  DamageFactor "MarineDamage", 0
  DamageFactor "BFGSplash", 0.15
  DamageFactor "MarineRLDamage", 1 

  DamageFactor "ImpBallDamage", 1
  DamageFactor "CacoDamage", 1
  DamageFactor "SkelDamage", 1
  DamageFactor "FatsoDamage", 1
  DamageFactor "KnightDamage", 1
  DamageFactor "ArachDamage", 1
  DamageFactor "ZombiesDamage", 1
  DamageFactor "viledamage", 1
  DamageFactor "Slime", 1
  +NOSKIN
  limitedtoteam 0
  
  States
  {
  Spawn:
    PLAY A 1 
    Loop
  See:
    PLAY ABCD 4 
	PLAY A 0 Thing_ChangeTid(0,390)
	Loop
  Missile:
    PLAY E 12
	PLAY A 0 Thing_ChangeTid(0,390)
    Goto Spawn
  Melee:
    PLAY F 6 BRIGHT
    Goto Missile
  Pain:
    PLAY G 4 
    PLAY G 4 A_Pain
    Goto Spawn
  Death:
    PLAY H 0 A_PlayerSkinCheck("AltSkinDeath")
  Death1:
    NULL A 0 A_GiveToTarget ("Mskull",1)
	NULL A 0 Thing_changeTid(390,0)
    PLAY H 10 
    PLAY I 10 A_PlayerScream
    PLAY J 10 A_NoBlocking
    PLAY KLM 10
    PLAY N -1
    Stop
  XDeath:
    PLAY O 0 A_PlayerSkinCheck("AltSkinXDeath")
  XDeath1:
    NULL A 0 A_GiveToTarget ("Mskull",1)
	NULL A 0 Thing_changeTid(390,0)
    PLAY O 5 
    PLAY P 5 A_XScream
    PLAY Q 5 A_NoBlocking
    PLAY RSTUV 5
    PLAY W -1
    Stop
  AltSkinDeath:
    NULL A 0 A_GiveToTarget ("Mskull",1)
	NULL A 0 Thing_changeTid(390,0)
    PLAY H 6 
    PLAY I 6 A_PlayerScream
    PLAY JK 6
    PLAY L 6 A_NoBlocking
    PLAY MNO 6
    PLAY P -1
    Stop
  AltSkinXDeath:
    NULL A 0 A_GiveToTarget ("Mskull",1)
	NULL A 0 Thing_changeTid(390,0)
    PLAY Q 5 A_PlayerScream
    PLAY R 0 A_NoBlocking
    PLAY R 5 A_SkullPop
    PLAY STUVWX 5
    PLAY Y -1
    Stop
  }
}


actor MarineExp : AMMO
{
  inventory.amount 1
  inventory.maxamount 20
  states
  {
  Spawn:
    TNT1 A -1
    stop
  }
}

actor Mrank0 : inventory
{
  inventory.amount 1
  inventory.maxamount 1
  states
  {
  Spawn:
    TNT1 A -1
    stop
  }
}
actor Mrank1  : Mrank0 { }
actor Mrank2  : Mrank0 { }
actor Mrank3  : Mrank0 { }
actor Mrank4  : Mrank0 { }
actor Mrank5  : Mrank0 { }
actor Mrank6  : Mrank0 { }
actor Mrank7  : Mrank0 { }
actor Mrank8  : Mrank0 { }
actor Mrank9  : Mrank0 { }
actor Mrank10 : Mrank0 { }
actor Mrank11 : Mrank0 { }
actor Mrank12 : Mrank0 { }


// Pig for TeamKillers

ACTOR PigMarine : PlayerPawn 
{
  Health 500
  PainChance 255
  Scale 1.5
  Radius 18
  Height 33
 // Translation "73:76=25:28","146:148=29:31","238:239=33:34","1:2=40:41"
  Speed 0.50
  Player.JumpZ 5
  Player.Viewheight 36
  Player.SoundClass "SPigMarine"
  Player.DisplayName "Pig"
  Player.MorphWeapon "PigSnout"
  Player.WeaponSlot 1,PigSnout
  -PICKUP
  +NOSKIN
  DamageFactor "Slime", 0
  States
  {
  Spawn:
    MPIG A 1
    Loop
  See:
    MPIG ABCD 3
    Loop
  Pain:
    MPIG A 4 A_PlaySoundEx ("mpig/pain","body") 
    Goto Spawn
  Melee:
  Missile:
    MPIG AB 4
    Goto Spawn
  Death:
    MPIG E 4 A_PlaySoundEx ("mpig/death","body") 
    MPIG F 3 A_NoBlocking
    MPIG G 4
    MPIG H 3
    MPIG IJK 4
    MPIG L -1
    Stop
  }
}

ACTOR PigSnout : Weapon
{
  Weapon.SelectionOrder 10000
  +WEAPON.DONTBOB
  +WEAPON.MELEEWEAPON
  Weapon.Kickback 10
  States
  {
  Ready:
    MWPG A 4 A_WeaponReady
	MWPG A 0 A_Jump (127,1)
	loop
	MWPG B 8 A_PlaySoundEx ("mpig/active","weapon")
    goto Ready
  Deselect:
    MWPG A 1 A_Lower
    Loop
  Select:
    MWPG A 1 A_Raise
  Fire:
    MWPG A 0 SetPlayerProperty (0, 1, 0)
    MWPG A 4 A_PlaySoundEx ("mpig/active","weapon")
    MWPG B 8 
	MWPG A 0 SetPlayerProperty (0, 0, 0)
    Goto Ready
  }
}
