ACTOR MAT49 : BrutalWeapon
{
	Weapon.AmmoUse1 0
	Weapon.AmmoGive1 0
	Weapon.AmmoUse2 0
	Weapon.AmmoGive2 0
	YScale 0.6
	XScale 0.8
	Weapon.SelectionOrder 2500
	Weapon.AmmoType1 "762x25"
	Weapon.AmmoType2 "MAT49Ammo"
	Obituary "%o was shot down by %k's assault AKM."
    AttackSound "None"
    Inventory.PickupSound "CLIPIN"
	Inventory.Pickupmessage "You got an AK-47!"
    +WEAPON.NOALERT
	+WEAPON.NOAUTOFIRE
	+FORCEXYBILLBOARD
	Tag "MAT-49 SMG"
    Scale 0.8
	States
	{
 	Spawn:
		WAK4 A 1
		TNT1 A 0 A_SpawnItemEx("MAT49Weapon", 0, 0, 0, momx, momy, momz)
		Stop	
	
	Ready:
	Ready3:
		MATG A 1 A_WeaponReady(WRF_ALLOWRELOAD)
		MATG A 0 A_JumpIfInventory("TossGrenade",1,"TossGrenade")
        MATG A 0 A_JumpIfInventory("Reloading",1,"Reload")
		MATG A 0 A_JumpIfInventory("Kicking",1,"DoKick")
		"----" # 0 A_JumpIfInventory("UsedBandage", 1, "UseBandages")
		Loop
	
		
	Deselect:
		MATG A 0
		MATG A 0 A_TakeInventory("TossGrenade", 1)
        MATG A 0 A_TakeInventory("Reloading",1)
		MATG A 0 A_TakeInventory("Unloading",1)
        MATG A 0 A_ZoomFactor(1.0)
		MATG AAAAA 1 A_Lower
		TNT1 AAAAAAAAAAAAAAAAAA 0 A_Lower
		TNT1 A 1 A_Lower
		Wait

	Drop:
		RIFF A 0
		TNT1 A 0 A_TakeInventory("DropWeapon", 1)
		RIFF A 0 A_SpawnItemEx("AK47Weapon", 0, 0, 30, 10, 0, 2)
		TNT1 A 0 A_TakeInventory("AK47", 1)
		TNT1 A 0 A_TakeInventory("Slot2Weapon", 1)
		Goto Ready
		
	Select:
		MATG A 0
		MATG AAAAA 1 A_Raise
		TNT1 AAAAAAAAA 0 A_Raise
		Goto Ready3
	
    Fire:
        MATG A 0 A_JumpIfInventory("MAT49Ammo",1,2)
        Goto NoAmmo
        TNT1 AA 0
		MATG A 0 A_AlertMonsters
		MATG A 0 A_PlaySound("PISFIRE", 1)
		
		MATF A 1 A_FireBullets (3.0, 3.0, -1, 11, "HitPuff", FBF_NORANDOM)
		MATF B 1 A_FireCustomMissile("SmokeSpawner", random(-0.3,0.3), 0, 0, 0, 0, random(-0.3,0.3))
		MATG A 0 A_SpawnItemEx("PlayerMuzzle1",30,5,30)
        MATF A 0 A_FireCustomMissile("Tracer", random(-1,1), 0, 0, 0, 0, random(-1,1))
		MATG A 0 A_ZoomFactor(0.98)
		MATG A 0 A_SetPitch(pitch-0.3)
		MATG A 0 A_SetANgle(angle-0.1)
		MATG A 0 A_Takeinventory("MAT49Ammo",1)
		MATF C 1 A_FireCustomMissile("PistolCaseSpawn",5,0,6,-14)
		MATG A 0 A_SetPitch(pitch-0.3)
		MATG A 0 A_SetANgle(angle-0.1)
		MATG A 0 A_ZoomFactor(1.0)
		MATF D 0


		MATG A 0 A_JumpIfInventory("MAT49Ammo",1,2)
        Goto NoAmmo
        TNT1 AA 0
		MATG A 0 A_AlertMonsters
		MATG A 0 A_PlaySound("PISFIRE", 5)
		SMGG A 0 A_PlaySound("FARAKM", 7)
		
		MATF A 1 A_FireBullets (3.0, 3.0, -1, 11, "HitPuff", FBF_NORANDOM)
		MATF B 1 A_FireCustomMissile("SmokeSpawner", random(-0.3,0.3), 0, 0, 0, 0, random(-0.3,0.3))
		MATG A 0 A_SpawnItemEx("PlayerMuzzle1",30,5,30)
        MATF A 0 A_FireCustomMissile("Tracer", random(-1,1), 0, 0, 0, 0, random(-1,1))
		MATG A 0 A_ZoomFactor(0.98)
		MATG A 0 A_SetPitch(pitch-0.3)
		MATG A 0 A_SetANgle(angle-0.1)
		MATG A 0 A_Takeinventory("MAT49Ammo",1)
		MATF C 1 A_FireCustomMissile("PistolCaseSpawn",5,0,6,-14)
		MATG A 0 A_SetPitch(pitch-0.3)
		MATG A 0 A_SetANgle(angle-0.2)
		MATG A 0 A_ZoomFactor(1.0)
		MATF D 0
	
		MATG A 0 A_Refire
		Goto Ready3
	
     
	NoAmmo:
		MATG A 0
		MATG A 0 A_ZoomFactor(1.0)
		MATG A 0 A_Takeinventory("Zoomed",1)
		MATG A 0 A_Takeinventory("ADSmode",1)
		TNT1 A 0 A_PlaySound("weapons/empty", 4)
		TNT1 A 0 A_giveinventory("MAT49FiredUntilEmpty", 1)
	NoAmmo2:
		MATG A 0 A_JumpIfInventory("TossGrenade",1,"TossGrenade")
        MATG A 0 A_JumpIfInventory("Reloading",1,"Reload")
		MATG A 0 A_JumpIfInventory("Kicking",1,"DoKick")
		MATG A 5 A_WeaponReady(WRF_ALLOWRELOAD | WRF_NOPRIMARY)
		MATG A 0 A_JumpIfInventory("Reloading",1,"Reload")
		TNT1 A 0 A_JumpIfInventory("NoAutoReload", 1, "NoAmmo2")
		MATG A 0 A_JumpIfInventory("762x25",1,"Reload")
		Goto Ready3
	
    Reload:
		MATG A 1 A_WeaponReady
		MATG A 0 A_ZoomFactor(1.0)
		MATG A 0 A_Takeinventory("Reloading",1)
		MATG A 0 A_Takeinventory("ADSmode",1)
		MATG A 0 A_Takeinventory("Zoomed",1)
		MATG A 0 A_JumpIfInventory("MAT49Ammo",30,"FinishReload")
        MATG A 0 A_JumpIfInventory("762x25",1,3)
        Goto FinishReload
        TNT1 AAA 0
		MATG A 0 A_Takeinventory("Zoomed",1)
		MATG A 0 A_GiveInventory ("Pumping", 1)
		MATG A 0 A_Takeinventory("Reloading",1)
		
		MATR A 0
        MATR ABCDDD 1  A_JumpIfInventory("Kicking",1,"DoKick")
		TNT1 A 0 A_PLaySound("RELO1", 3)
		MATR EFGHI 1
		TNT1 A 0 A_FireCustomMissile("EmptyClipSpawn",-5,0,8,-4)
		MATR J 10
        MATR I 1
		TNT1 A 0 A_PLaySound("RELO2", 4)
		MATR HGFED 1
		MATR D 8
		Goto InsertBullets
		
		
	InsertBullets:
		TNT1 AAAA 0
		MATG A 0 A_JumpIfInventory("MAT49Ammo",35,"FinishReload")
		MATG A 0 A_JumpIfInventory("762x25",1,3)
		Goto FinishReload
        TNT1 AAAAAA 0
		MATG A 0 A_Giveinventory("MAT49Ammo",1)
		MATG A 0 A_Takeinventory("762x25",1)
		Goto InsertBullets
		
		TNT1 AAAAAAAAAA 0
		MATG A 0 A_Takeinventory("Reloading",1)
        Goto FinishReload	
		TNT1 AAAA 0
		MATG A 0 A_Takeinventory("Reloading",1)
        Goto FinishReload
		
	FinishReload:
		TNT1 A 0
		TNT1 A 0 A_JumpIfInventory("MAT49FiredUntilEmpty", 1, "Cook")
		MATR CBA 1
		MATG A 1
		MATR A 0 A_Takeinventory("HasUnloaded",1)
		Goto Ready3
	Cook:
		MATR CBA 1
		MATR KL 1
		TNT1 A 0 A_PlaySound("RELO4", 1)
		MATR L 4
		MATR MNNNNNML 1
		MATR L 4
		MATR A 0 A_Takeinventory("MAT49FiredUntilEmpty",1)
		MATR KA 1
		Goto Ready3
	}
}

ACTOR MAT49Ammo : Ammo
{
   Inventory.Amount 0
   Inventory.MaxAmount 35
   Ammo.BackpackAmount 0
   Ammo.BackpackMaxAmount 35
   Inventory.Icon "WAK4A0"
}