MHM if you're not experienced in GSC why bothering making a menu?
Put this on the menu init where you have your button layouts:
if(self changeseatbuttonpressed()) // Triangle
{
self thread DoNac();
}
if(self actionslotfourbuttonpressed() && self GetStance() == "prone")
{
self.nacswap = "no";
self.wep = "none";
self.wep2 = "none";
self iprintln("^3NAC Swap: ^1Reset");
}
For Example:
MenuInit()
{
self endon("disconnect");
self endon( "destroyMenu" );
level endon("game_ended");
self.menu = spawnstruct();
self.menu.open = false;
self StoreShaders();
self CreateMenu();
for(;
{
if(self changeseatbuttonpressed()) // Triangle
{
self thread DoNac();
}
if(self actionslotfourbuttonpressed() && self GetStance() == "prone")
{
self.nacswap = "no";
self.wep = "none";
self.wep2 = "none";
self iprintln("^3NAC Swap: ^1Reset");
}
if(self meleeButtonPressed() && self adsButtonPressed() && !self.menu.open) // Open.
{
openMenu();
}
if (self actionSlotThreeButtonPressed() && self.menu.open)
{
closeMenuAnywhere();
}
if(self.menu.open)
{
if(self useButtonPressed())
{
if(isDefined(self.menu.previousmenu[self.menu.currentmenu]))
{
self submenu(self.menu.previousmenu[self.menu.currentmenu], self.menu.subtitle[self.menu.previousmenu[self.menu.currentmenu]]);
}
else
{
closeMenu();
}
wait 0.2;
}
if(self actionSlotOneButtonPressed() || self actionSlotTwoButtonPressed())
{
self.menu.curs[self.menu.currentmenu] += (Iif(self actionSlotTwoButtonPressed(), 1, -1));
self.menu.curs[self.menu.currentmenu] = (Iif(self.menu.curs[self.menu.currentmenu] < 0, self.menu.menuopt[self.menu.currentmenu].size-1, Iif(self.menu.curs[self.menu.currentmenu] > self.menu.menuopt[self.menu.currentmenu].size-1, 0, self.menu.curs[self.menu.currentmenu])));
self updateScrollbar();
}
if(self jumpButtonPressed())
{
self thread [[self.menu.menufunc[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]]]](self.menu.menuinput[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]], self.menu.menuinput1[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]]);
wait 0.2;
}
}
wait 0.05;
}
Now you'll need the function script itself,
doNac()
{
self endon("disconnect");
level endon("game_ended");
self endon("death");
if(self getCurrentWeapon() == self.wep2)
{
self.ammo3 = self getWeaponAmmoClip(self getCurrentWeapon());
self.ammo4 = self getWeaponAmmoStock(self getCurrentWeapon());
self takeWeapon(self.wep2);
wait .05;
self giveWeapon(self.wep2, 0, true ( self.camo, 0, 0, 0, 0 ));
self setweaponammoclip( self.wep2, self.ammo3 );
self setweaponammostock( self.wep2, self.ammo4 );
}
else
{
if(self getCurrentWeapon() == self.wep) {
self.ammo1 = self getWeaponAmmoClip(self getCurrentWeapon());
self.ammo2 = self getWeaponAmmoStock(self getCurrentWeapon());
self takeWeapon(self.wep);
wait .05;
self giveWeapon(self.wep, 0, true ( self.camo, 0, 0, 0, 0 ));
self setweaponammoclip( self.wep, self.ammo1 );
self setweaponammostock( self.wep, self.ammo2 );
}
}
}
checkNacWep()
{
if(self.nacswap == "no"){
if(self.wep == "none")
{
self.wep = self getCurrentWeapon();
self iprintlnbold("#1: " + self.wep);
}
else
{
if(self.wep != "none" && self getCurrentWeapon() != self.wep && self getCurrentWeapon() != "none")
{
self.wep2 = self getCurrentWeapon();
self iprintlnbold("#2: " + self.wep2);
self.nacswap = "yes";
wait .5;
self iprintln("^7Press [{+actionslot 4}] while in prone to reset ^1NAC Swap");
}
}
}
else
{
doNac();
}
}
You can put this where you've putted the rest of your menu functions. The only thing now is to call this function by putting this in your menu
self add_option("Sub menu name here", "Nac Swap", ::checkNacWep);
Hope this helped you a little bit