Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <fakemeta>
#include <fun>
#include <zombieplague>
#include <menu_button>
new g_item1[33], g_item2[33], g_item3[33], g_item4[33], g_item5[33]
native Get_m32(id)
native GetBuffM3(id)
native GetClaymoreMine(id)
native geating_strike(id)
#define MENU_OFF "ZE_XMAN/off.wav"
#define MAX_CLIENTS 32
new gl_vhook[MAX_CLIENTS + 1];
const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0
new g_iGlobalka;
public plugin_init()
{
register_plugin ("[ZP] VIP menu", "1.2" , "CS-FADE.RU" )
register_menu("X Menu", KEYSMENU, "menu_main")
register_clcmd("deluxe_menu", "deluxe_menu")
register_dictionary("zombie_plague.txt")
register_logevent("fw_new_round", 2, "1=Round_Start")
g_iGlobalka = get_maxplayers()
}
public plugin_precache()
{
precache_sound(MENU_OFF)
}
public deluxe_menu(id)
{
static menu[512], userflags
new len
userflags = get_user_flags(id)
if(userflags & ADMIN_LEVEL_G)
{
len += formatex(menu[len], charsmax(menu) - len, "%s %L", UTIL_MenuButton(), id, "ZP_SERVER_NAME")
len += formatex(menu[len], charsmax(menu) - len, "\r[\y#\r] \wAdmin Menu \d[ZE]^n^n")
if(g_item1[id] == 0)
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y1\r] \r[\wTake\r]\y M3 SHARK^n" )
else len += formatex(menu[len] , charsmax(menu) - len , "\r[\y1\r] \d[Take] M3 SHARK^n" )
if(g_item2[id] == 0)
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y2\r] \r[\wTake\r]\y M32 MGL^n" )
else len += formatex(menu[len] , charsmax(menu) - len , "\r[\y2\r] \d[Take] M32 MGL^n" )
if(g_item3[id] == 0)
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y3\r] \r[\wTake\r]\y ClayMore Mine^n^n" )
else len += formatex(menu[len] , charsmax(menu) - len , "\r[\y3\r] \d[Take] ClayMore Mine^n^n" )
if(g_item4[id] == 0)
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y4\r] \wTake \r[\yAirstrike\r]^n^n" )
else len += formatex(menu[len] , charsmax(menu) - len , "\r[\y4\r] \dTake [Airstrike]^n^n" )
if(g_item5[id] == 0)
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y5\r] \wTake \r[\y+50\r] \wBonus^n^n" )
else len += formatex(menu[len] , charsmax(menu) - len , "\r[\y5\r] \dTake [+50] Bonus^n^n" )
len += formatex(menu[len] , charsmax(menu) - len , "^n\r[\y0\r] \wExit" )
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%s %L", UTIL_MenuButton(), id, "ZP_SERVER_NAME")
len += formatex(menu[len], charsmax(menu) - len, "\r[\y#\r] \wMenu DELUXE \d[4 $]^n^n")
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y1\r] \d[Take] M3 SHARK^n" )
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y2\r] \d[Take] M32 MGL^n" )
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y3\r] \d[Take] ClayMore Mine^n^n" )
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y4\r] \d[Take] Airstrike^n^n" )
len += formatex(menu[len] , charsmax(menu) - len , "\r[\y5\r] \d[Take] [+50] Bonus^n^n" )
len += formatex(menu[len] , charsmax(menu) - len , "^n\r[\y0\r] \wExit" )
len += formatex(menu[len] , charsmax(menu) - len,"^n\yYou are not \rDeluxe!")
}
set_pdata_int(id , 205 , 0 )
show_menu(id, KEYSMENU , menu , -1 , "X Menu" )
}
public menu_main(id,key)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED;
static userflags
userflags = get_user_flags(id)
if(!(userflags & ADMIN_LEVEL_G))
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y You are not !tDeluxe. !yBuy here !tFaceBook: !g%L", id, "GRUPPA", id, "GRUPPA")
return 1
}
else if(!is_user_alive(id))
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y Not available for the dead.", id, "GRUPPA")
return 1
}
switch (key)
{
case 0: //M3 SHARK
{
if(!is_user_connected(id))
return PLUGIN_HANDLED;
else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
{
ChatColor(id, "!g[%L]!y Only available !tHuman!y.", id, "GRUPPA")
return PLUGIN_HANDLED;
}
else if(g_item1[id] == 0)
{
g_item1[id] = 1;
GetBuffM3(id);
}
else
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y You can take only once per round.", id, "GRUPPA");
return PLUGIN_HANDLED;
}
}
case 1: //M32
{
if(!is_user_connected(id))
return PLUGIN_HANDLED;
else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
{
ChatColor(id, "!g[%L]!y Only available !tHuman!y.", id, "GRUPPA")
return PLUGIN_HANDLED;
}
else if(g_item2[id] == 0)
{
g_item2[id] = 1;
Get_m32(id);
}
else
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y You can take only once per round.", id, "GRUPPA");
return PLUGIN_HANDLED;
}
}
case 2: //ClarMore
{
if(!is_user_connected(id))
return PLUGIN_HANDLED;
else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
{
ChatColor(id, "!g[%L]!y Only available !tHuman!y.", id, "GRUPPA")
return PLUGIN_HANDLED;
}
else if(g_item3[id] == 0)
{
g_item3[id] = 1;
GetClaymoreMine(id);
}
else
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y You can take only once per round.", id, "GRUPPA");
return PLUGIN_HANDLED;
}
}
case 3: //Авиудар
{
if(!is_user_connected(id))
return PLUGIN_HANDLED;
else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
{
ChatColor(id, "!g[%L]!y Only available !tHuman!y.", id, "GRUPPA")
return PLUGIN_HANDLED;
}
else if(g_item4[id] == 0)
{
g_item4[id] = 1;
geating_strike(id);
}
else
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y You can take only once per round.", id, "GRUPPA");
return PLUGIN_HANDLED;
}
}
case 4:
{
if(!is_user_connected(id))
return PLUGIN_HANDLED;
else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
{
ChatColor(id, "!g[%L]!y Only available !tHuman!y.", id, "GRUPPA")
return PLUGIN_HANDLED;
}
else if(g_item5[id] == 0)
{
g_item5[id] = 1;
zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + 50);
deluxe_menu(id)
}
else
{
client_cmd(id, "spk ^"%s^"", MENU_OFF)
ChatColor(id, "!g[%L]!y You can take only once per round.", id, "GRUPPA");
return PLUGIN_HANDLED;
}
}
}
return PLUGIN_HANDLED;
}
public plugin_natives()
{
register_native("GetVHook", "func_GetVHook", 1);
}
public func_GetVHook(iPlayer)
return gl_vhook[iPlayer];
public fw_new_round()
{
for(new id = 1; id <= g_iGlobalka; id++)
{
if(g_item1[id] > 0)
{
g_item1[id] -= 1
}
if(g_item2[id] > 0)
{
g_item2[id] -= 1
}
if(g_item3[id] > 0)
{
g_item3[id] -= 1
}
if(g_item4[id] > 0)
{
g_item4[id] -= 1
}
if(g_item5[id] > 0)
{
g_item5[id] -= 1
}
}
}
stock ChatColor(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")
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();
}
}
}
}