View Single Post
BassPower
Member
Join Date: Mar 2011
Location: Lithuania
Old 02-14-2018 , 06:49   Re: [INS] Guns Menu - modifacation
Reply With Quote #4

Quote:
#pragma semicolon 1
#include <sourcemod>

#define PLUGIN_VERSION "1.0"

int MARINES = 1;
int INSURGENTS = 2;

public void OnPluginStart()
{
CreateConVar("ins_guns2_version", PLUGIN_VERSION, "INS Gun Menu Version", FCVAR_SPONLY | FCVAR_REPLICATED | FCVAR_NOTIFY);
RegConsoleCmd("sm_guns", WeaponMenu);
RegConsoleCmd("guns", WeaponMenu);
}

public void OnMapStart()
{
char mapname[64];
GetCurrentMap(mapname, sizeof(mapname));
if (strcmp(mapname, "ins_karam") == 0 || strcmp(mapname, "ins_baghdad") == 0)
{
INSURGENTS = 1;
MARINES = 2;
}
else
{
MARINES = 1;
INSURGENTS = 2;
}
}

public Action WeaponMenu(int client, int args)
{
Weapons(client);

return Plugin_Handled;
}

public Action Weapons(int clientId) {

int team = GetClientTeam(clientId);
if (team == INSURGENTS)
{
Handle menu = CreateMenu(WeaponMenuHandlerINS);
SetMenuTitle(menu, "Marines Gun Menu");
AddMenuItem(menu, "option1", "M4A1");
AddMenuItem(menu, "option2", "M16A4");
AddMenuItem(menu, "option3", "M40A1");
AddMenuItem(menu, "option4", "M249");
AddMenuItem(menu, "option5", "M590");
AddMenuItem(menu, "option6", "MK18");
AddMenuItem(menu, "option7", "MP5K");
SetMenuExitButton(menu, true);
DisplayMenu(menu, clientId, 15);
}
else if (team == MARINES)
{
Handle menu = CreateMenu(WeaponMenuHandlerUS);
SetMenuTitle(menu, "Insurgents Gun Menu");
AddMenuItem(menu, "option1", "AKM");
AddMenuItem(menu, "option2", "FAL");
AddMenuItem(menu, "option2", "AKS-74U");
AddMenuItem(menu, "option3", "RPK");
AddMenuItem(menu, "option4", "TOZ");
AddMenuItem(menu, "option5", "AK-74");
AddMenuItem(menu, "option7", "Mosin");
SetMenuExitButton(menu, true);
DisplayMenu(menu, clientId, 15);
}
return Plugin_Handled;
}

public WeaponMenuHandlerUS(Handle menu, MenuAction action, int client, int itemNum)
{
int flags = GetCommandFlags("give_weapon");
SetCommandFlags("give_weapon", flags & ~FCVAR_CHEAT);

if (action == MenuAction_Select)
{
switch (itemNum)
{
case 0:
{
FakeClientCommand(client, "give_weapon m4a1");
}
case 1:
{
FakeClientCommand(client, "give_weapon m16a4");
}
case 2:
{
FakeClientCommand(client, "give_weapon m40a1");
}
case 3:
{
FakeClientCommand(client, "give_weapon m249");
}
case 4:
{
FakeClientCommand(client, "give_weapon m590");
}
case 5:
{
FakeClientCommand(client, "give_weapon mk18");
}
case 6:
{
FakeClientCommand(client, "give_weapon mp5k");
}
}
}
SetCommandFlags("give_weapon", flags);
}

public int WeaponMenuHandlerINS(Handle menu, MenuAction action, int client, int itemNum)
{
int flags = GetCommandFlags("give_weapon");
SetCommandFlags("give_weapon", flags & ~FCVAR_CHEAT);

if (action == MenuAction_Select)
{
switch (itemNum)
{
case 0:
{
FakeClientCommand(client, "give_weapon akm");
}
case 1:
{
FakeClientCommand(client, "give_weapon fal");
}
case 2:
{
FakeClientCommand(client, "give_weapon aks74u");
}
case 3:
{
FakeClientCommand(client, "give_weapon rpk");
}
case 4:
{
FakeClientCommand(client, "give_weapon toz");
}
case 5:
{
FakeClientCommand(client, "give_weapon ak74");
}
case 6:
{
FakeClientCommand(client, "give_weapon mosin");
}
}
}
SetCommandFlags("give_weapon", flags);
}
BassPower is offline