Removing MMS & Target Finder Attachments [Bo2]
-
Kalitos said in Removing MMS & Target Finder Attachments [Bo2]:
@Vexbane I was finally able to get it to work in a TDM mode, I tried it a bit, doing what you mentioned.
/* * Black Ops 2 - GSC Studio by iMCSx * * Creator : Kalitos * Project : Restriccion de armas * Mode : Multiplayer * Date : 2020/04/05 - 13:35:30 * */ #include maps\mp\_utility; #include common_scripts\utility; #include maps\mp\gametypes\_hud_util; #include maps\mp\gametypes\_hud_message; init() { level.loadoutkillstreaksenabled = false; level.AttachmentRestrict="+rangefinder,+mms"; level.WeaponRestrict= "mp7_mp"; game["strings"]["change_class"] = undefined; level thread onPlayerConnect(); } onPlayerConnect() { for(;;) { level waittill("connected", player); player thread onPlayerSpawned(); player thread doChangeClass(); } } onPlayerSpawned() { self endon("disconnect"); level endon("game_ended"); for(;;) { self waittill("spawned_player"); if(!isDefined(self.isFirstSpawn)) { self iprintln("^5Black Ops 2 - Script ^7| ^5Weapons ^7and ^5attachments ^7restriction ^5| ^7By: ^2Kalitos"); self.isFirstSpawn=true; } } } doChangeClass() { self endon("disconnect"); level endon("game_ended"); self.OldPrimaryWeapon=""; self.OldSecondaryWeapon=""; for(;;) { self waittill_any("changed_class", "spawned_player"); //if ( level.inGracePeriod && !self.hasDoneCombat ) // used weapons check? //{ //self iprintln("Se ha iniciado el monitor de cambio de clase"); //player.checkChangeClass = true; changeWeaponsOnClass(); self notify ("change_class_complete"); //} //self iprintln("Periodo de gracia : " + level.inGracePeriod + ", Ha hecho combate: " + self.hasDoneCombat); } } getNumClass(class) { if ( issubstr( class, "CLASS_CUSTOM" ) ) { switch ( class ) { case "CLASS_CUSTOM1": class_num1=0; break; case "CLASS_CUSTOM2": class_num1=1; break; case "CLASS_CUSTOM3": class_num1=2; break; case "CLASS_CUSTOM4": class_num1=3; break; case "CLASS_CUSTOM5": class_num1=4; break; case "CLASS_CUSTOM6": class_num1=5; break; case "CLASS_CUSTOM7": class_num1=6; break; case "CLASS_CUSTOM8": class_num1=7; break; case "CLASS_CUSTOM9": class_num1=8; break; case "CLASS_CUSTOM10": class_num1=9; break; default : break; } return class_num1; } else { return level.classtoclassnum[class ]; } } changeWeaponsOnClass() { //self endon("disconnect"); //level endon("game_ended"); //self endon("round_ended"); self endon("change_class_complete"); class_num1 = getNumClass(self.class); weaponP = self getloadoutweapon( class_num1, "primary" ); weaponS = self getloadoutweapon( class_num1, "secondary" ); //self iprintln(weaponP + " :: " + weaponS); //self getloadoutitem( class_num, "primarygrenadecount" ); if(self.OldPrimaryWeapon!=""){ self takeWeapon(self.OldPrimaryWeapon); } if(self.OldSecondaryWeapon!=""){ self takeWeapon(self.OldSecondaryWeapon); } NWeaponP= getClearWeaponAttachment(weaponP,"P"); // Remove all attachment restrict NweaponS= getClearWeaponAttachment(weaponS,"S"); // Remove all attachment restrict //self iprintln("Arma primaria: "+ self.OldPrimaryWeapon + ", Arma secundaria: " + self.OldSecondaryWeapon); //if(NWeaponP!=weaponP) //{ self takeWeapon(weaponP); self giveWeapon(NWeaponP); self switchToWeapon(NWeaponP); //} //if(NWeaponS!=weaponS) //{ wait 0.50; self takeWeapon(weaponS); self giveWeapon(NWeaponS); //}else //{ restriccionAt = strTok(level.AttachmentRestrict,","); arrayWeapon = strTok(Weapon,"+"); if(isInArray(arrayWeapon,"+dw")) // If pistol has +dw { if (getWeaponClassOfArray(weaponS) == "weapon_pistol" && getSizeArrayWeaponSrTok(weaponS)==1) { self takeWeapon(weaponS); self giveWeapon("beretta93r_mp"); } } //} } getSizeArrayWeaponSrTok(array) { arrayWeapon = strTok(array,"+"); return arrayWeapon.size; } getWeaponClassOfArray(Weapon) { arrayWeapon = strTok(Weapon,"+"); return getWeaponClass(arrayWeapon[0]); } getClearWeaponAttachment(Weapon,PorS) { restriccionAt = strTok(level.AttachmentRestrict,","); arrayWeapon = strTok(Weapon,"+"); NewWeapon = ""; if (checkWeaponNotAllowed(Weapon)==1) // If is a weapon restrict { arrayWeapon[0]= getWeaponAllowed(Weapon); // Replace weapon with aleatory weapon allowed ( Same Type that weapon restrict ) } for (j=0;j< arrayWeapon.size; j++) { if(j==0) // Is the weapon { temp=arrayWeapon[j]; }else { temp="+"+arrayWeapon[j]; } if(!isInArray(restriccionAt, temp)) { NewWeapon=NewWeapon+temp; } } if(PorS=="P"){ self.OldPrimaryWeapon=NewWeapon; }else{ self.OldSecondaryWeapon=NewWeapon; } return NewWeapon; } checkWeaponNotAllowed(Weapon) { if(level.WeaponRestrict==""){ return 0; } restriccionWeapon = strTok(level.WeaponRestrict,","); arrayWeapon = strTok(Weapon,"+"); if(isInArray(restriccionWeapon, arrayWeapon[0])) { return 1; } return 0; } getWeaponAllowed(Weapon) { restriccionWeapon = strTok(level.WeaponRestrict,","); arrayWeapon = strTok(Weapon,"+"); arrayWeaponAllowed=WeaponsArray(getWeaponClass(arrayWeapon[0])); randomWeapon= ""; while(true) { randomWeaponIndex = randomInt(arrayWeaponAllowed.size); randomWeapon = arrayWeaponAllowed[randomWeaponIndex]; if(!isInArray(restriccionWeapon,randomWeapon)) { break; } } return randomWeapon; } WeaponsArray(category) { level.WeaponArray["All"][0] = "tar21_mp"; level.WeaponArray["All"][1] = "type95_mp"; level.WeaponArray["All"][2] = "sig556_mp"; level.WeaponArray["All"][3] = "sa58_mp"; level.WeaponArray["All"][4] = "hk416_mp"; level.WeaponArray["All"][5] = "scar_mp"; level.WeaponArray["All"][6] = "saritch_mp"; level.WeaponArray["All"][7] = "xm8_mp"; level.WeaponArray["All"][8] = "an94_mp"; level.WeaponArray["All"][9] = "peacekeeper_mp"; level.WeaponArray["All"][10] = "870mcs_mp"; level.WeaponArray["All"][11] = "saiga12_mp"; level.WeaponArray["All"][12] = "ksg_mp"; level.WeaponArray["All"][13] = "srm1216_mp"; level.WeaponArray["All"][14] = "mk48_mp"; level.WeaponArray["All"][15] = "qbb95_mp"; level.WeaponArray["All"][16] = "lsat_mp"; level.WeaponArray["All"][17] = "hamr_mp"; level.WeaponArray["All"][18] = "mp7_mp"; level.WeaponArray["All"][19] = "pdw57_mp"; level.WeaponArray["All"][20] = "vector_mp"; level.WeaponArray["All"][21] = "insas_mp"; level.WeaponArray["All"][22] = "qcw05_mp"; level.WeaponArray["All"][23] = "evoskorpion_mp"; level.WeaponArray["All"][24] = "svu_mp"; level.WeaponArray["All"][25] = "dsr50_mp"; level.WeaponArray["All"][26] = "ballista_mp"; level.WeaponArray["All"][27] = "as50_mp"; level.WeaponArray["All"][28] = "fiveseven_mp"; level.WeaponArray["All"][29] = "fnp45_mp"; level.WeaponArray["All"][30] = "beretta93r_mp"; level.WeaponArray["All"][31] = "judge_mp"; level.WeaponArray["All"][32] = "kard_mp"; level.WeaponArray["All"][33] = "smaw_mp"; level.WeaponArray["All"][34] = "usrpg_mp"; level.WeaponArray["All"][35] = "fhj18_mp"; level.WeaponArray["All"][36] = "crossbow_mp"; level.WeaponArray["All"][37] = "knife_ballistic_mp"; level.WeaponArray["All"][38] = "knife_held_mp"; level.WeaponArray["All"][39] = "frag_grenade_mp"; level.WeaponArray["All"][40] = "hatchet_mp"; level.WeaponArray["All"][41] = "sticky_grenade_mp"; level.WeaponArray["All"][42] = "satchel_charge_mp"; level.WeaponArray["All"][43] = "bouncingbetty_mp"; level.WeaponArray["All"][44] = "claymore_mp"; level.WeaponArray["All"][45] = "flash_grenade_mp"; level.WeaponArray["All"][46] = "smoke_center_mp"; level.WeaponArray["All"][47] = "concussion_grenade_mp"; level.WeaponArray["All"][48] = "emp_grenade_mp"; level.WeaponArray["All"][49] = "sensor_grenade_mp"; level.WeaponArray["All"][50] = "pda_hack_mp"; level.WeaponArray["All"][51] = "tactical_insertion_mp"; level.WeaponArray["All"][52] = "proximity_grenade_mp"; level.WeaponArray["Assault"][0] = "tar21_mp"; level.WeaponArray["Assault"][1] = "type95_mp"; level.WeaponArray["Assault"][2] = "sig556_mp"; level.WeaponArray["Assault"][3] = "sa58_mp"; level.WeaponArray["Assault"][4] = "hk416_mp"; level.WeaponArray["Assault"][5] = "scar_mp"; level.WeaponArray["Assault"][6] = "saritch_mp"; level.WeaponArray["Assault"][7] = "xm8_mp"; level.WeaponArray["Assault"][8] = "an94_mp"; level.WeaponArray["Assault"][9] = "peacekeeper_mp"; level.WeaponArray["Shotgun"][0] = "870mcs_mp"; level.WeaponArray["Shotgun"][1] = "saiga12_mp"; level.WeaponArray["Shotgun"][2] = "ksg_mp"; level.WeaponArray["Shotgun"][3] = "srm1216_mp"; level.WeaponArray["LMG"][0] = "mk48_mp"; level.WeaponArray["LMG"][1] = "qbb95_mp"; level.WeaponArray["LMG"][2] = "lsat_mp"; level.WeaponArray["LMG"][3] = "hamr_mp"; level.WeaponArray["SMG"][0] = "mp7_mp"; level.WeaponArray["SMG"][1] = "pdw57_mp"; level.WeaponArray["SMG"][2] = "vector_mp"; level.WeaponArray["SMG"][3] = "insas_mp"; level.WeaponArray["SMG"][4] = "qcw05_mp"; level.WeaponArray["SMG"][5] = "evoskorpion_mp"; level.WeaponArray["Sniper"][0] = "svu_mp"; level.WeaponArray["Sniper"][1] = "dsr50_mp"; level.WeaponArray["Sniper"][2] = "ballista_mp"; level.WeaponArray["Sniper"][3] = "as50_mp"; level.WeaponArray["Pistol"][0] = "fiveseven_mp"; level.WeaponArray["Pistol"][1] = "fnp45_mp"; level.WeaponArray["Pistol"][2] = "beretta93r_mp"; level.WeaponArray["Pistol"][3] = "judge_mp"; level.WeaponArray["Pistol"][4] = "kard_mp"; level.WeaponArray["Launcher"][0] = "smaw_mp"; level.WeaponArray["Launcher"][1] = "usrpg_mp"; level.WeaponArray["Launcher"][2] = "fhj18_mp"; level.WeaponArray["Special"][0] = "crossbow_mp"; level.WeaponArray["Special"][1] = "knife_ballistic_mp"; level.WeaponArray["Special"][2] = "knife_held_mp"; level.WeaponArray["Lethal"][0] = "frag_grenade_mp"; level.WeaponArray["Lethal"][1] = "hatchet_mp"; level.WeaponArray["Lethal"][2] = "sticky_grenade_mp"; level.WeaponArray["Lethal"][3] = "satchel_charge_mp"; level.WeaponArray["Lethal"][4] = "bouncingbetty_mp"; level.WeaponArray["Lethal"][5] = "claymore_mp"; level.WeaponArray["Tactical"][0] = "flash_grenade_mp"; level.WeaponArray["Tactical"][1] = "smoke_center_mp"; level.WeaponArray["Tactical"][2] = "concussion_grenade_mp"; level.WeaponArray["Tactical"][3] = "emp_grenade_mp"; level.WeaponArray["Tactical"][4] = "sensor_grenade_mp"; level.WeaponArray["Tactical"][5] = "pda_hack_mp"; level.WeaponArray["Tactical"][6] = "tactical_insertion_mp"; level.WeaponArray["Tactical"][7] = "proximity_grenade_mp"; if (category == "All") return level.WeaponArray["All"]; else if(category == "weapon_assault") return level.WeaponArray["Assault"]; else if(category == "weapon_shotgun") return level.WeaponArray["Shotgun"]; else if(category == "weapon_lmg") return level.WeaponArray["Assault"]; //Replace with assault if you block all LMG else if(category == "weapon_smg") return level.WeaponArray["SMG"]; else if(category == "weapon_sniper") return level.WeaponArray["Sniper"]; else if(category == "weapon_pistol") return level.WeaponArray["Pistol"]; else if(category == "weapon_launcher") return level.WeaponArray["Pistol"]; // Replace with pistol if you block all launchers else if(category == "weapon_special") return level.WeaponArray["Special"]; else if(category == "weapon_grenade") return level.WeaponArray["Lethal"]; else if(category == "Tactical") return level.WeaponArray["Tactical"]; }
Try it, and tell me.
Thank you, I will tomorrow, cheers
-
THANK YOU SO MUCH MUCHAS MUCHAS GRACIAS Kalitos working on a SnD server for my friends this is going to work great! If there is a way to get camos or if you add it i would love to know!
-
CalebKappa Well, if there is a way to obtain camouflages, there is, knowing how to program it, I personally was not interested in that part when carrying out the entire project. In the forum I remember reading a bit about camouflaging the main weapon, it would only be a matter of adapting it to the project.
-
Kalitos how do I get this file into the game?