Actor MG42:Weapon Replaces Chaingun
{
Weapon.AmmoUse1 0
Weapon.AmmoGive1 25
Weapon.AmmoUse2 0
Weapon.AmmoGive2 0
Weapon.AmmoType1 "MGAmmoReserve"
Weapon.AmmoType2 "Mgammo"
Weapon.BobRangeX 0.75
Weapon.BobRangeY 0.5
Weapon.BobSpeed 1.5
Weapon.BobStyle "InverseAlpha" //Denis Belmondo's Bobstyle
AttackSound "none"
Inventory.PickUpSound "MP40_TAKE"
Inventory.PickUpMessage "Maschinengewehr 42"
+WEAPON.WIMPY_WEAPON
+WEAPON.NOAUTOAIM
+WEAPON.NOALERT
+WEAPON.NOAUTOFIRE
tag "Maschinengewehr 42"
Inventory.Icon "MGBACK"
Scale 0.9 
States
{
Ready:
TNT1 A 0 A_PlaySound("Deploy/mg42")
ZMGS ABCDEFGHIJKLM 1 
Goto RealReady

RealReady:
ZMGG A 1 A_WeaponReady
TNT1 A 0 A_SetCrosshair(0)
TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
TNT1 A 0 A_JumpIfInventory("BWgrenade",1,"LaunchGrenade")
TNT1 A 0 A_JumpIfInventory("Meleeattack",1,"KnifeAttack")
TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
Thog A 0 A_JumpIfInventory("Reloading",1,"Reload")
Loop

Ready2:
ZMG2 A 1 A_WeaponReady
TNT1 A 0 A_SetCrosshair(5)
TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
TNT1 A 0 A_JumpIfInventory("BWgrenade",1,"LaunchGrenade")
TNT1 A 0 A_JumpIfInventory("Meleeattack",1,"KnifeAttack")
TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
Thog A 0 A_JumpIfInventory("Reloading",1,"Reload")
Loop

Deselect:
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_Takeinventory("ADSmode",1)
TNT1 A 0 A_Takeinventory("Meleeattack",1)
TNT1 A 0 A_Takeinventory("BWgrenade",1)
TNT1 A 0 A_Takeinventory("Reloading",1)
TNT1 A 0 A_ZoomFactor(1.0)
ZMGS LMKJIHGFEDCBA 1 
TNT1 A 0 A_Lower
Wait

Select:
TNT1 A 0 A_Raise
Wait

Fire:        
TNT1 A 0 A_JumpIfInventory("MGAmmo",1,2)
Goto Reload
TNT1 AAAA 0
TNT1 A 0 A_JumpIfInventory("Zoomed",1,"Fire2")
TNT1 A 0 A_PlaySound("MG42")
ZMGG B 1 Bright A_AlertMonsters
tnt1 A 0 A_FireCustomMissile("ShakeYourAss", 0, 0, 0, 0)
TNT1 A 0 A_FireBullets(3, 3, 0, 37, "MachineGunBulletPuff", 1)
TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
tnt1 a 0 A_FireCustomMissile("50CaseSpawn",5,0,8,-9)
TNT1 A 0 A_SetPitch(pitch -2.0)
TNT1 A 0 A_TakeInventory("MGAMMO",1)
TNT1 A 0 A_GiveInventory("MGMagCounter",1)
TNT1 A 0 A_SetAngle(random(4, -2) + angle)
ZMGG D 2 Bright 
ZMGG C 2
TNT1 A 0 A_Refire
Goto RealReady

Fire2:
TNT1 A 0 A_JumpIfInventory("MGAmmo",1,2)
Goto Reload
TNT1 AAAA 0
TNT1 A 0 A_PlaySound("MG42")
ZMG2 B 1 Bright A_AlertMonsters
tnt1 A 0 A_FireCustomMissile("ShakeYourAss", 0, 0, 0, 0)
TNT1 A 0 A_FireBullets(1, 2, 0, 37, "MachineGunBulletPuff", 1)
TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
tnt1 a 0 A_FireCustomMissile("50CaseSpawn",5,0,8,-9)
TNT1 A 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
TNT1 A 0 A_SetPitch(pitch - 1.0)
TNT1 A 0 A_TakeInventory("MGAMMO",1)
TNT1 A 0 A_GiveInventory("MGMagCounter",1)
TNT1 A 0 A_SetAngle(random(2, -2) + angle)
ZMG2 D 2 Bright
ZMG2 C 2
TNT1 A 0 A_Refire
Goto Ready2

AltFire:
TNT1 A 0 A_JumpIfInventory("Zoomed",1,"UnZoom")
TNT1 A 0 A_Giveinventory("Zoomed",1)
TNT1 A 0 A_Giveinventory("GoSpecial",1)
TNT1 A 0 A_ZoomFactor(2.3)
TNT1 A 0 A_Giveinventory("ADSmode",1)
ZMGX ABCDEFGH 1 
Goto Ready2

UnZoom:
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Takeinventory("ADSmode",1)
ZMGX HGFEDCBA 1 
Goto RealReady

NoAmmo:
TNT1 A 0 A_PlaySound("Weapons/Empty")
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Takeinventory("ADSmode",1)
Goto RealReady

Reload:
TNT1 A 0 A_JumpIfInventory("MGAMMO",1,"Reload2")
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Takeinventory("Reloading",1)
TNT1 A 0 A_Takeinventory("ADSmode",1)
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_JumpIfInventory("MGAmmo",50,"InsertBullets")
TNT1 A 0 A_JumpIfInventory("MGAmmoReserve",1,3)
Goto NoAmmo
tnt1 aaa 0
ZMGR ABCDEFGHIJK 1 
ZGR1 ABCDE 2
tnt1 a 0 A_PlaySound("MG42_OUT")
ZGR1 FGHIJ 2 
tnt1 a 0 A_FireCustomMissile("MG42EmptyDrum",5,0,8,-9)
tnt1 a 0 a_takeInventory("MGMagCounter",50)
ZGR2 KK 3
ZGR2 KIHGF 2 
tnt1 a 0 A_PlaySound("MG42_in")
ZGR2 EDCBA 2 
ZMGR MLKJIHGFE 1 
ZMR3 ABCD 2 
tnt1 a 0 A_PlaySound("MG42_click")
ZMR3 EFGHIJ 2
ZMGR CBA 1 

InsertBullets:
TNT1 A 0 A_JumpIfInventory("MGAMMO",50,"RealReady")
TNT1 A 0 A_JumpIfInventory("MGAmmoReserve",1,"AmmoIn")
Goto RealReady

AmmoIn:
TNT1 A 0 A_Giveinventory("MGAmmo",1)
TNT1 A 0 A_Takeinventory("MGAmmoReserve",1)
Goto InsertBullets

Spawn:
MGPK A -1
Stop

Reload2:
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Takeinventory("Reloading",1)
TNT1 A 0 A_Takeinventory("ADSmode",1)
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_JumpIfInventory("MGAmmo",50,"InsertBullets")
TNT1 A 0 A_JumpIfInventory("MGAmmoReserve",1,3)
Goto NoAmmo
TNT1 AAA 0
ZMGR ABCDEFGHIJKLM 1 
ZGR2 ABC 2
tnt1 a 0 A_PlaySound("MG42_OUT")
ZGR2 DEFGHIJK 2 
TNT1 A 0 A_JumpIfInventory("MGMagCounter",50,"ReleaseMag")
Goto ContinueReload

ReleaseMag:
tnt1 a 0 A_FireCustomMissile("MG42EmptyDrum",5,0,8,-9)
tnt1 a 0 a_takeInventory("MGMagCounter",50)

ContinueReload:
ZGR2 KK 5
ZGR2 KIHGF 2 
tnt1 a 0 A_PlaySound("MG42_in")
ZGR2 EDCBA 2 
ZMGR MLKJIHGFEDCBA 1 
Goto InsertBullets

DoKick:
TNT1 A 0
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Takeinventory("ADSmode",1)
TNT1 A 0 A_PlaySound("KICK")
TNT1 A 0 SetPlayerProperty(0,1,0)
KICK BCD 1
RIFF A 0 A_FireCustomMissile("KickAttack", 0, 0, 0, -7)
KICK H 4
KICK A 0 A_Takeinventory("Kicking",1)
KICK IGFEDCBA 1
TNT1 A 0 SetPlayerProperty(0,0,0)
Goto RealReady

Taunt:
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 5
FUCK A 2
TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 0, 0, -1, 0)
TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", -9, 0, -1, 0)
TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 9, 0, -1, 0)
FUCK B 2 A_PlaySound("FUCK", 1)
FUCK C 2 A_AlertMonsters
FUCK D 15 A_Takeinventory("Taunting",1)
FUCK CBA 5
TNT1 A 5
Goto RealReady

LaunchGrenade:	
TNT1 A 0
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_TakeInventory("LaunchGrenade", 1)
TNT1 A 0 A_JumpIfInventory("GrenadeAmmo", 1, 1)
Goto NoGrenade
NGRA ABCD 2
TNT1 A 0 A_playSound("Pick/granate")
NGRA DD 2
TNT1 A 0 A_Jump(90,2)
TNT1 A 0 A_PlaySound("*grenadecall", CHAN_VOICE)
 NGRA DEFG 2
TNT1 A 0 A_PLaySound ("Launch/granate")
TNT1 A 0 A_FireCustomMissile("HandGrenade2", random(-3,3), 1, 0, 0, 0, 0)
GRWF STUVW 2 
TNT1 A 0 A_TakeInventory("GrenadeAmmo", 1)
TNT1 A 1 
TNT1 A 0 A_TakeInventory("LaunchGrenade", 1)
TNT1 A 0 A_Takeinventory("BWgrenade",1)
Goto RealReady

NoGrenade:
TNT1 A 0
TNT1 A 0 A_Takeinventory("Zoomed",1)
TNT1 A 0 A_Takeinventory("ADSmode",1)
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Print("No Grenades Left!")
TNT1 A 0 A_Takeinventory("BWgrenade",1)
Goto RealReady



KnifeAttack:
TNT1 A 0 A_ZoomFactor(1.0)
TNT1 A 0 A_Jump(90,2)
TNT1 A 0 A_PlaySound("*taunt", CHAN_VOICE)
KNIF ABCDE 1
KNIF F 1 A_PlaySound("weapons/wknife")
KNIF F 0 A_Custompunch(16,0,1,"KnifePuff")
KNIF GHI 1 
TNT1 A 0 A_Takeinventory("Meleeattack",1)
GOTO RealREADY

}
}


ACTOR Mgammo : Ammo
{
   Inventory.Amount 0
   Inventory.MaxAmount 50
   Ammo.BackpackAmount 0
   Ammo.BackpackMaxAmount 50
}

ACTOR MGMagCounter : Ammo
{
   Inventory.Amount 0
   Inventory.MaxAmount 50
   Ammo.BackpackAmount 0
   Ammo.BackpackMaxAmount 50
}




