Ищу меню разблокировки для Zombie Plague
На Лвл+ $
Покупка идет на карту как у диаса
Пример: Choose Weapon 1.5
На подобии этого
Gl0ckee писал(а): Мне нужен код для плагина что бы что-то было по очереди. спасибо
Модератор: Leonidddd
// Информация
// 0.1 - Создание меню
// 0.5 - Меню оружий (Free Weapons)
// 1.0 - Релиз первой версии
// 1.1 - Переход на след. меню через нативы
// 1.2 - Переход на Левел Систему (Открытие новых оружий с получением нового уровня)
// 1.5 - Исправление недочётов
// 1.6 - Переход с Левел Системы на Денежную Систему (Открытие новых оружий на всю карту за оплату денег)
// 2.0 - Релиз второй версии
// 2.1 - Выбор валюты
// 2.1.1 - Звуки + Вывод сообщения по середине
// 2.1.2 - Цены в пунктах меню через квары
// Авторы
// TeRKe (TERKECOREJZ) - Идея
// :3 (misna) - Код открытий оружий на карту за деньги (Как у Dias'a)
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <fun>
#include <fakemeta>
#include <zombieplague>
#include <zp_buymenu>
#define NO_MONEY "Нехвотает денег!"
#define PREFIX_CHAT "Unlock System"
// Выбор валюты
// Чтобы всё нормально работало, надо отключить все валюты кроме той, которую вы хотите использовать. Чтобы выключить валюту надо всего лишь перед валютой написать "//"
// ZP 4.3 Аммо-Паки (ZP 4.3 Ammo-Pack's)
// #define set_Money zp_set_user_ammo_packs
// #define get_Money zp_get_user_ammo_packs
// #define name_Money "Паки"
// Обычные Деньги $ (Default Money $)
#define set_Money zp_cs_set_user_money
#define get_Money zp_cs_get_user_money
#define name_Money "$"
#define PLUGIN "[US] Unlock System"
#define VERSION "2.1.2"
#define AUTHOR "TeRKe / :3"
new menu, menu2 , menu3
new SayText
enum _:Primary_Shop
{
SFMG
}
enum _:Secondary_Shop
{
Balrog1
}
enum _:Knife_Shop
{
Dual_Katana
}
new g_Shop[33][Primary_Shop];
new g_Shop2[33][Secondary_Shop];
new g_Shop3[33][Knife_Shop];
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
// Открытие меню при возраждении
RegisterHam(Ham_Spawn, "player", "Spawn_post", 1)
// Комадны вызова
register_clcmd("hero_wpn_menu", "clcmd_menu")
register_clcmd("hero_wpn_menu2", "clcmd_menu2")
register_clcmd("hero_knf_menu", "clcmd_menu3")
// Цены основных оружий
register_cvar("cost_sfmg", "14600") // Avalanche
// Цены дополнительных оружий
register_cvar("cost_balrog1", "3600") // Balrog-I
// Цены ножей
register_cvar("cost_dual_katana", "3200") // Dual Katana
// Колор Чат
SayText = get_user_msgid("SayText")
}
public Spawn_post(id)
{
if(is_user_alive(id) && is_user_connected(id) && !zp_get_user_zombie(id))
{
primary_wpn(id)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public clcmd_menu(id)
{
if(is_user_alive(id) && !zp_get_user_zombie(id) && !zp_get_user_survivor(id))
{
primary_wpn(id)
return PLUGIN_HANDLED
}
else
{
print_col_chat(id, "!g[%s] !yДанное меню только для !gЛюдей!", PREFIX_CHAT)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public clcmd_menu2(id)
{
if(is_user_alive(id) && !zp_get_user_zombie(id) && !zp_get_user_survivor(id))
{
secondary_wpn(id)
return PLUGIN_HANDLED
}
else
{
print_col_chat(id, "!g[%s] !yДанное меню только для !gЛюдей!", PREFIX_CHAT)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public clcmd_menu3(id)
{
if(is_user_alive(id) && !zp_get_user_zombie(id) && !zp_get_user_survivor(id))
{
knife_menu(id)
return PLUGIN_HANDLED
}
else
{
print_col_chat(id, "!g[%s] !yДанное меню только для !gЛюдей!", PREFIX_CHAT)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public primary_wpn(id)
{
new buffer[512]
menu = menu_create("Купить основное оружие", "primary_weapon")
formatex(buffer, charsmax(buffer), "M4A1 Carbine \r(\wUnlocked\r)")
menu_additem(menu, buffer, "1")
formatex(buffer, charsmax(buffer), "AK-47 \r(\wUnlocked\r)")
menu_additem(menu, buffer, "2")
if(g_Shop[id][SFMG] == 1)
{
formatex(buffer, charsmax(buffer), "Avalanche \r(\wUnlocked\r)")
menu_additem(menu, buffer, "3")
}
else if(get_Money(id) >= get_cvar_num("cost_sfmg"))
{
formatex(buffer, charsmax(buffer), "Avalanche \r(\wLocked\r) \y%d%s", get_cvar_num("cost_sfmg"), name_Money);
menu_additem(menu, buffer, "3")
}
else if(get_Money(id) <= get_cvar_num("cost_sfmg"))
{
formatex(buffer, charsmax(buffer), "Avalanche \r(\wLocked\r) \d%d%s", get_cvar_num("cost_sfmg"), name_Money);
menu_additem(menu, buffer, "3")
}
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
return PLUGIN_HANDLED
}
public primary_weapon(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[15], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data,15, iName, 64, callback);
new key = str_to_num(data)
switch(key)
{
case 1:
{
give_item(id, "weapon_m4a1")
print_col_chat(id, "!g[%s] !yВы взяли автомат !gM4A1", PREFIX_CHAT)
secondary_wpn(id)
return PLUGIN_HANDLED
}
case 2:
{
give_item(id, "weapon_ak47")
print_col_chat(id, "!g[%s] !yВы взяли автомат !gAK-47", PREFIX_CHAT)
secondary_wpn(id)
return PLUGIN_HANDLED
}
case 3:
{
if(g_Shop[id][SFMG] == 1)
{
zp_force_buy_extra_item(id, zp_get_extra_item_id("SF-1 MG"), 3)
print_col_chat(id, "!g[%s] !yВы взяли пулемёт !gAvalanche", PREFIX_CHAT)
secondary_wpn(id)
return PLUGIN_HANDLED
}
else if(get_Money(id) >= get_cvar_num("cost_sfmg"))
{
g_Shop[id][SFMG] = 1;
zp_force_buy_extra_item(id, zp_get_extra_item_id("SF-1 MG"), 3)
print_col_chat(id, "!g[%s] !yВы купили пулемёт !gAvalanche", PREFIX_CHAT)
set_Money(id, get_Money(id) - get_cvar_num("cost_sfmg"))
client_cmd(id, "spk events/enemy_died.wav")
secondary_wpn(id)
return PLUGIN_HANDLED
}
else if(get_Money(id) <= get_cvar_num("cost_sfmg"))
{
print_col_chat(id, "!g[%s] !yНадо !g%d$ !yчтоб купить !gAvalanche", get_cvar_num("cost_sfmg"), PREFIX_CHAT)
client_cmd(id, "spk events/friend_died.wav")
client_print(id, print_center, NO_MONEY)
primary_wpn(id)
return PLUGIN_HANDLED
}
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public secondary_wpn(id)
{
menu2 = menu_create("Купить дополнительное оружие", "secondary_weapon")
new buffer[512]
formatex(buffer, charsmax(buffer), "Desert Eagle \r(\wUnlocked\r)")
menu_additem(menu, buffer, "1")
formatex(buffer, charsmax(buffer), "Heckler & Koch USP \r(\wUnlocked\r)")
menu_additem(menu, buffer, "2")
formatex(buffer, charsmax(buffer), "Beretta 92G Elite II \r(\wUnlocked\r)")
menu_additem(menu, buffer, "3")
if(g_Shop2[id][Balrog1] == 1)
{
formatex(buffer, charsmax(buffer), "Balrog-I \r(\wUnlocked\r)")
menu_additem(menu, buffer, "4")
}
else if(get_Money(id) >= get_cvar_num("cost_balrog1"))
{
formatex(buffer, charsmax(buffer), "Balrog-I \r(\wLocked\r) \y%d%s", get_cvar_num("cost_balrog1"), name_Money);
menu_additem(menu, buffer, "4")
}
else if(get_Money(id) <= get_cvar_num("cost_balrog1"))
{
formatex(buffer, charsmax(buffer), "Balrog-I \r(\wLocked\r) \d%d%s", get_cvar_num("cost_balrog1"), name_Money);
menu_additem(menu, buffer, "4")
}
menu_setprop(menu2, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu2, 0)
return PLUGIN_HANDLED
}
public secondary_weapon(id, menu2, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu2)
return PLUGIN_HANDLED
}
new data[15], iName[64]
new access, callback
menu_item_getinfo(menu2, item, access, data,15, iName, 64, callback)
new key = str_to_num(data)
switch(key)
{
case 1:
{
give_item(id, "weapon_deagle")
print_col_chat(id, "!g[%s] !yВы взяли пистолет !gDesert Eagle", PREFIX_CHAT)
knife_menu(id)
return PLUGIN_HANDLED
}
case 2:
{
give_item(id, "weapon_usp")
print_col_chat(id, "!g[%s] !yВы взяли пистолет !gHeckler & Koch USP", PREFIX_CHAT)
knife_menu(id)
return PLUGIN_HANDLED
}
case 3:
{
give_item(id, "weapon_elite")
print_col_chat(id, "!g[%s] !yВы взяли пистолеты !gBeretta 92G Elite II", PREFIX_CHAT)
knife_menu(id)
return PLUGIN_HANDLED
}
case 4:
{
if(g_Shop2[id][Balrog1] == 1)
{
zp_force_buy_extra_item(id, zp_get_extra_item_id("Balrog-I"), 2)
print_col_chat(id, "!g[%s] !yВы взяли пистолет !gBalrog-I", PREFIX_CHAT)
knife_menu(id)
return PLUGIN_HANDLED
}
else if(get_Money(id) >= get_cvar_num("cost_balrog1"))
{
g_Shop2[id][Balrog1] = 1;
print_col_chat(id, "!g[%s] !yВы купили пистолет !gBalrog-I", PREFIX_CHAT)
set_Money(id, get_Money(id) - get_cvar_num("cost_balrog1"))
client_cmd(id, "spk events/enemy_died.wav")
zp_force_buy_extra_item(id, zp_get_extra_item_id("Balrog-I"), 1)
knife_menu(id)
return PLUGIN_HANDLED
}
else if(get_Money(id) <= get_cvar_num("cost_balrog1"))
{
print_col_chat(id, "!g[%s] !yНадо !g%d$ !yчтоб купить пистолет !gBalrog-I", get_cvar_num("cost_balrog1"), PREFIX_CHAT)
client_cmd(id, "spk events/friend_died.wav")
client_print(id, print_center, NO_MONEY)
secondary_wpn(id)
return PLUGIN_HANDLED
}
}
}
menu_destroy(menu2)
return PLUGIN_HANDLED
}
public knife_menu(id)
{
menu3 = menu_create("Купить нож", "knife_weapon")
new buffer[512]
formatex(buffer, charsmax(buffer), "Seal Knife \r(\wUnlocked\r)")
menu_additem(menu, buffer, "1")
if(g_Shop3[id][Dual_Katana] == 1)
{
formatex(buffer, charsmax(buffer), "Dual Katana \r(\wUnlocked\r)")
menu_additem(menu, buffer, "2")
}
else if(get_Money(id) >= get_cvar_num("cost_dual_katana"))
{
formatex(buffer, charsmax(buffer), "Dual Katana \r(\wLocked\r) \y%d%s", get_cvar_num("cost_dual_katana"), name_Money);
menu_additem(menu, buffer, "2")
}
else if(get_Money(id) <= get_cvar_num("cost_dual_katana"))
{
formatex(buffer, charsmax(buffer), "Dual Katana \r(\wLocked\r) \d%d%s", get_cvar_num("cost_dual_katana"), name_Money);
menu_additem(menu, buffer, "2")
}
menu_setprop(menu3, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu3, 0)
return PLUGIN_HANDLED
}
public knife_weapon(id, menu3, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu3)
return PLUGIN_HANDLED
}
new data[15], iName[64]
new access, callback
menu_item_getinfo(menu3, item, access, data,15, iName, 64, callback)
new key = str_to_num(data)
switch(key)
{
case 1:
{
give_item(id, "weapon_knife")
print_col_chat(id, "!g[%s] !yВы взяли нож !gSeal Knife", PREFIX_CHAT)
give_item(id, "weapon_hegrenade")
return PLUGIN_HANDLED
}
case 2:
{
if(g_Shop3[id][Dual_Katana] == 1)
{
zp_force_buy_extra_item(id, zp_get_extra_item_id("Dual Katana"), 1)
print_col_chat(id, "!g[%s] !yВы взяли нож !gDual Katana", PREFIX_CHAT)
give_item(id, "weapon_hegrenade")
return PLUGIN_HANDLED
}
else if(get_Money(id) >= get_cvar_num("cost_dual_katana"))
{
g_Shop3[id][Dual_Katana] = 1;
zp_force_buy_extra_item(id, zp_get_extra_item_id("Dual Katana"), 1)
print_col_chat(id, "!g[%s] !yВы купили нож !gDual Katana", PREFIX_CHAT)
set_Money(id, get_Money(id) - get_cvar_num("cost_dual_katana"))
give_item(id, "weapon_hegrenade")
client_cmd(id, "spk events/enemy_died.wav")
return PLUGIN_HANDLED
}
else if(get_Money(id) <= get_cvar_num("cost_dual_katana"))
{
print_col_chat(id, "!g[%s] !yНадо !g%d$ !yчтоб купить нож !gDual Katana", get_cvar_num("cost_dual_katana"), PREFIX_CHAT)
client_cmd(id, "spk events/friend_died.wav")
client_print(id, print_center, NO_MONEY)
knife_menu(id)
return PLUGIN_HANDLED
}
}
}
menu_destroy(menu3)
return PLUGIN_HANDLED
}
stock print_col_chat(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!g", "^4"); // Green Color
replace_all(msg, 190, "!y", "^1"); // Default Color ()
replace_all(msg, 190, "!t", "^3"); // Team Color
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, SayText, _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
public zp_user_infected_post(id, infector)
{
menu_cancel(id)
}
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10