4ªU;nutscripts/vscripts/autorunscript_1'(:[ÿå ÿÿlocal m60_ammo_max = 800 local m60_clip_max = 200 local gl_clip_max = 1 function Init(){ printl("Grenade launcher and m60 can pick up ammunition") printl("Prevent M60 Drop on empty clip") if (Convars.GetFloat("ammo_M60_max") < 1){ Convars.SetValue("ammo_M60_max",m60_ammo_max) } } function Precache(){} function Think(){ foreach (v in QTGLIB.PLY.GetAll()){ local w = v.GetActiveWeapon() if (IsValid(w) && w.GetClass() == "weapon_rifle_m60"){ if (w.GetClip() <= 1){ local ups = w.GetUpgrades() if (ups > 0 && ups != 4){ if (ups > 3){ w.SetUpgrades(4) } else { w.SetUpgrades(0) } w.SetNPInt("m_nUpgradedPrimaryAmmoLoaded",0) } w.SetClip(0) } } } } function OnGameEvent_item_pickup(p){ if (!("userid" in p)) return local e = ent(p.userid) if (!IsValid(e)) return local w = e.GetActiveWeapon() if (!IsValid(w)) return if (w.GetClass() == "weapon_rifle_m60" && w.GetClip() != m60_clip_max){ m60_clip_max = w.GetClip() } if (w.GetClass() == "weapon_grenade_launcher" && w.GetClip() != gl_clip_max){ gl_clip_max = w.GetClip() } } function OnGameEvent_receive_upgrade(p){ if (!("userid" in p) || !("upgrade" in p)) return local e = ent(p.userid) if (!IsValid(e)) return local ws = e.GetWeapons() local w = e.GetWeapon("weapon_rifle_m60") if (!w) return local ups = w.GetUpgrades() if (ups > 0 && ups != 4){ w.AddAmmo(w.GetClip()) w.SetNPInt("m_nUpgradedPrimaryAmmoLoaded",m60_clip_max) w.SetClip(m60_clip_max) } } function OnGameEvent_ammo_pile_weapon_cant_use_ammo(p){ if (!("userid" in p)) return local e = ent(p.userid) if (!IsValid(e)) return local w = e.GetWeapon("weapon_rifle_m60") local w2 = e.GetWeapon("weapon_grenade_launcher") if (!w && !w2) return if (w){ local ammomax = Convars.GetFloat("ammo_M60_max") if (w.GetAmmo() < ammomax || (m60_clip_max-w.GetClip()) > 0){ w.AddAmmo(ammomax-w.GetAmmo()+(m60_clip_max-w.GetClip())) e.EmitSound("Player.PickupWeapon") } } if (w2){ local ammomax = Convars.GetFloat("ammo_GRENADELAUNCHER_max") if (w2.GetAmmo() < ammomax || (gl_clip_max-w2.GetClip()) > 0){ w2.AddAmmo(ammomax-w2.GetAmmo()+(gl_clip_max-w2.GetClip())) e.EmitSound("Player.PickupWeapon") } } }