#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <hamsandwich>
#include <dhudmessage>
#define PLUGIN "FegyoMenu"
#define VERSION "1.0"
#define AUTHOR "Silent"
#define TASKID 2000
const NETOLTS = ((1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4))
new g_onoff
new const g_MaxAmmo[] =
{
0,
52, //CSW_P228
0,
90, //CSW_SCOUT
0, //CSW_HEGRENADE
32, //CSW_XM1014
0, //CSW_C4
100,//CSW_MAC10
90, //CSW_AUG
0, //CSW_SMOKEGRENADE
120,//CSW_ELITE
100,//CSW_FIVESEVEN
100,//CSW_UMP45
90, //CSW_SG550
90, //CSW_GALIL
90, //CSW_FAMAS
100,//CSW_USP
120,//CSW_GLOCK18
30, //CSW_AWP
120,//CSW_MP5NAVY
200,//CSW_M249
32, //CSW_M3
90, //CSW_M4A1
120,//CSW_TMP
90, //CSW_G3SG1
0, //CSW_FLASHBANG
35, //CSW_DEAGLE
90, //CSW_SG552
90, //CSW_AK47
0, //CSW_KNIFE
100//CSW_P90
}
new g_Timer[33];
new gWPCT;
new gWPTE;
new bool:buyblock[33]
new bool:pushed[33];
new const a[] = "csomagot kértél."
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "player", "FegyoMenu",1)
register_logevent("logevent_end", 2, "1=Round_End");
register_logevent("start",2,"1=Round_Start")
g_onoff = register_cvar("amx_orokloszer","0")
register_event("CurWeapon" , "Event_CurWeapon" , "be" , "1=1" );
set_cvar_num("mp_freezetime",0)
register_clcmd("buy", "block")
}
public block(id)
{
if(buyblock[id] == true)
{
client_print(id, print_chat, "Vasarlas blokkolva!")
return PLUGIN_HANDLED
}
}
public logevent_end()
{
gWPCT = 0;
gWPTE = 0;
new players[32], count;
get_players(players, count);
for(new i=0; i<count; i++)
{
new id = players[i];
pushed[id] = false;
buyblock[id] = true
}
}
public start()
{
new players[32], count;
get_players(players, count);
for(new i=0; i<count; i++)
{
new id = players[i];
pushed[id] = false;
g_Timer[id] = 16;
}
}
public FegyoMenu(id)
{
if( !task_exists(TASKID) )
{
g_Timer[id] = 16;
set_task( 1.0, "szamol", TASKID, _, _, "b")
}
new szMenu[128];
formatex(szMenu, charsmax(szMenu), "\r`RemiX.# Only Dust2 \d~ \rVálasz Fegyvert\d!^n\d[%i Másodperc]", g_Timer )
if(!user_has_weapon(id, CSW_C4))
{
new menu = menu_create(szMenu, "handler");
strip_user_weapons(id);
menu_additem(menu, "\wNem kérek fegyvert","0",0)
menu_additem(menu, "\yM4A1 Csomag.", "1", 0);
menu_additem(menu, "\yAK47 Csomag.", "2", 0);
menu_additem(menu, "\yAWP Csomag.\d [\rElső 4 embernek\d]", "3", 0);
menu_additem(menu, "\yMachineGun Csomag.", "4", 0);
menu_additem(menu, "\yAUG Csomag.", "5", 0);
menu_additem(menu, "\yFAMAS Csomag.", "6", 0);
menu_additem(menu, "\yGalil Csomag.", "7", 0);
menu_additem(menu, "\ySMG Csomag.", "8", 0);
menu_additem(menu, "\yAutoshotgun Csomag.", "9", 0);
menu_additem(menu, "\yShotgun Csomag.", "10", 0);
menu_additem(menu, "\yScout Csomag.", "11", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu);
}
else
{
new menu = menu_create(szMenu, "handler");
menu_additem(menu, "\wNem kérek fegyvert","0",0)
menu_additem(menu, "\yM4A1 Csomag.", "1", 0);
menu_additem(menu, "\yAK47 Csomag.", "2", 0);
menu_additem(menu, "\yAWP Csomag.\d [\rElső 4 embernek\d]", "3", 0);
menu_additem(menu, "\yMachineGun Csomag.", "4", 0);
menu_additem(menu, "\yAUG Csomag.", "5", 0);
menu_additem(menu, "\yFAMAS Csomag.", "6", 0);
menu_additem(menu, "\yGalil Csomag.", "7", 0);
menu_additem(menu, "\ySMG Csomag.", "8", 0);
menu_additem(menu, "\yAutoshotgun Csomag.", "9", 0);
menu_additem(menu, "\yShotgun Csomag.", "10", 0);
menu_additem(menu, "\yScout Csomag.", "11", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu);
}
}
public handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
if(g_Timer[id] == 0)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 0:
{
pushed[id] = true;
buyblock[id] = false
print_color(id, "!g[`RemiX.# OnlyDust2]!t Nem kértél semmit.");
}
case 1:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "weapon_m4a1");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy M4A1 csomagot.",a);
}
case 2:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "weapon_ak47");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy AK47 csomagot.",a);
}
case 3:
{
new CsTeams:userTeam = cs_get_user_team(id);
if(userTeam == CS_TEAM_CT)
{
if(gWPCT < 2)
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_awp");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy AWP csomagot.",a);
gWPCT++
}
else
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.20, 1, 6.0, 12.0)
show_dhudmessage(id, "Egy csapatban maximum 2 játékos AWPzhet!")
FegyoMenu(id);
}
}
if(userTeam == CS_TEAM_T)
{
if(gWPTE < 2)
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_awp");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!y AWP!t %s",a);
gWPTE++
}
else
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.20, 1, 6.0, 12.0)
show_dhudmessage(id, "Egy csapatban maximum 2 játékos AWPzhet!")
FegyoMenu(id);
}
}
}
case 4:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "weapon_m249");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy MACHINEGUN csomagot.",a);
}
case 5:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_aug");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy AUG csomagot.",a);
}
case 6:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_famas");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy FAMAS csomagot.",a);
}
case 7:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_galil");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy GALIL csomagot.",a);
}
case 8:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_mp5navy");
give_item(id, "ammo_9mm");
give_item(id, "ammo_9mm");
give_item(id, "ammo_9mm");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy MP5 csomagot.",a);
}
case 9:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_xm1014");
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy AUTOSHOTGUN csomagot.",a);
}
case 10:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_m3");
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy SHOTGUN csomagot.",a);
}
case 11:
{
give_player_grenades(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae")
give_item(id, "weapon_scout");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
pushed[id] = true;
print_color(id, "!g[`RemiX.# OnlyDust2]!t Kaptál egy SCOUT csomagot.",a);
}
}
return PLUGIN_HANDLED;
}
stock give_player_grenades(index)
{
give_item(index, "weapon_hegrenade");
give_item(index, "weapon_flashbang");
give_item(index, "weapon_flashbang");
give_item(index, "weapon_smokegrenade");
give_item(index, "item_thighpack");
give_item(index, "item_assaultsuit");
}
public szamol(id)
{
g_Timer[id]--
new iPlayers[32], iNum, d;
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
d = iPlayers[i]
if(!pushed[d])
FegyoMenu(d);
}
if( g_Timer[id] <= 0 )
{
remove_task(TASKID);
}
}
public Event_CurWeapon( id )
{
if(get_pcvar_num(g_onoff) == 1)
{
if(is_user_alive(id))
{
new fegyver = read_data(2)
if( !( NETOLTS & (1<<fegyver) ) )
{
cs_set_user_bpammo(id, fegyver, g_MaxAmmo[fegyver]);
}
}
}
}
stock print_color(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
replace_all(msg, 190, "á", "á")
replace_all(msg, 190, "é", "Ă©")
replace_all(msg, 190, "í", "Ă")
replace_all(msg, 190, "ó", "Ăł")
replace_all(msg, 190, "ö", "ö")
replace_all(msg, 190, "ő", "Ĺ‘")
replace_all(msg, 190, "ú", "Ăş")
replace_all(msg, 190, "ü", "ĂĽ")
replace_all(msg, 190, "ű", "ű")
replace_all(msg, 190, "Á", "Ă")
replace_all(msg, 190, "É", "É")
replace_all(msg, 190, "Í", "ĂŤ")
replace_all(msg, 190, "Ó", "Ă“")
replace_all(msg, 190, "Ö", "Ă–")
replace_all(msg, 190, "Ő", "Ĺ")
replace_all(msg, 190, "Ú", "Ăš")
replace_all(msg, 190, "Ü", "Ăś")
replace_all(msg, 190, "Ű", "Ĺ°")
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i])
write_string(msg)
message_end()
}
}
}
return PLUGIN_HANDLED
}