SMA:
- | Afiseaza codul
#include <amxmodx> #include <cstrike> #include <fun> #define PLUGIN "Weapons" #define VERSION "1.0" #define AUTHOR "Andrei" //Multumesc lui four. pentru ajutorul acordat la creearea pluginului. stock const messages[][] = { "* Pentru a putea cumpara arme tastati in chat /weapons" } new bool:use[33] new bool:user[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /weapons", "info") register_clcmd("say_team /weapons", "info") register_event("HLTV", "Event_NewRound", "a", "1=0", "2=0") register_event("HLTV", "Event_GrenadeNewRound", "a", "1=0", "2=0") } public info (id) { if(is_user_alive(id)) { new menu = menu_create("Menu Weapons" , "menu_handler") menu_additem(menu, "Weapons", "1") menu_additem(menu, "Grenades", "2") menu_setprop(menu, MPROP_EXITNAME, "Exit") menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } return 1 } public Event_NewRound() { arrayset(use,false,33) } public Event_GrenadeNewRound() { arrayset(user,false,33) } public menu_handler(id,menu,item) { /*if(use[id]) { client_print(id, print_chat, "Meniul poate fi folosit doar o data pe runda !"); return PLUGIN_HANDLED; }*/ if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback new money = cs_get_user_money(id) menu_item_getinfo(menu, item, access, data,5,iName,63,callback) new key=str_to_num(data) switch(key) { case 1: { weapons_menu(id); } case 2: { grenades_menu(id); } } return PLUGIN_HANDLED } public weapons_menu(id) { if(cs_get_user_team(id) & CS_TEAM_CT) { if(is_user_alive(id)) { new menu = menu_create("Menu Weapons CT" , "menu_ct") menu_additem(menu, "Famas + Deagle \y3000$", "1") menu_additem(menu, "M4A1 + Deagle \y3500$", "2") menu_additem(menu, "AWP + Deagle \y5500$", "3") menu_setprop(menu, MPROP_EXITNAME, "Exit") menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } return 1 } else if(cs_get_user_team(id) & CS_TEAM_T) { if(is_user_alive(id)) { new menu = menu_create("Menu Weapons T" , "menu_t") menu_additem(menu, "Galil + Deagle \y3000$", "1") menu_additem(menu, "AK47 + Deagle \y3500$", "2") menu_additem(menu, "AWP + Deagle \y5500$", "3") menu_setprop(menu, MPROP_EXITNAME, "Exit") menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } } return 1 } public menu_ct(id,menu,item) { if(use[id]) { client_print(id, print_chat, "Poti cumpara doar o arma pe runda !"); return PLUGIN_HANDLED; } if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback new money = cs_get_user_money(id) menu_item_getinfo(menu, item, access, data,5,iName,63,callback) new key=str_to_num(data) switch(key) { case 1: { if(cs_get_user_money(id) >=3000) { cs_set_user_money(id, money - 3000) give_item(id, "weapon_famas"); give_item(id, "weapon_deagle"); //cs_set_weapon_ammo(id, 25); cs_set_user_bpammo(id, CSW_FAMAS, 90) cs_set_user_bpammo(id, CSW_DEAGLE, 35); give_item(id, "item_thighpack" ); client_print(id, print_chat, "You have buy Famas + Deagle. Good luck & have fun !"); use[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } case 2: { if(cs_get_user_money(id) >=3500) { cs_set_user_money(id, money - 3500) give_item(id, "weapon_m4a1"); give_item(id, "weapon_deagle"); cs_set_user_bpammo(id, CSW_M4A1, 90) cs_set_user_bpammo(id, CSW_DEAGLE, 35); give_item ( id, "item_thighpack" ); client_print(id, print_chat, "You have buy M4A1 + Deagle. Good luck & have fun !"); use[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } case 3: { if(cs_get_user_money(id) >=5500) { cs_set_user_money(id, money - 5500) give_item(id, "weapon_awp"); give_item(id, "weapon_deagle"); //cs_set_weapon_ammo(id, 10); cs_set_user_bpammo(id, CSW_AWP, 30) cs_set_user_bpammo(id, CSW_DEAGLE, 35); give_item ( id, "item_thighpack" ); client_print(id, print_chat, "You have buy AWP + Deagle. Good luck & have fun !"); use[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } } return PLUGIN_HANDLED } public menu_t(id,menu,item) { if(use[id]) { client_print(id, print_chat, "Poti cumpara doar o arma pe runda !"); return PLUGIN_HANDLED; } if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback new money = cs_get_user_money(id) menu_item_getinfo(menu, item, access, data,5,iName,63,callback) new key=str_to_num(data) switch(key) { case 1: { if(cs_get_user_money(id) >=3000) { cs_set_user_money(id, money - 3000) give_item(id, "weapon_galil"); give_item(id, "weapon_deagle"); //cs_set_weapon_ammo(id, 35); cs_set_user_bpammo(id, CSW_GALIL, 90) cs_set_user_bpammo(id, CSW_DEAGLE, 35); client_print(id, print_chat, "You have buy Galil + Deagle. Good luck & have fun !"); use[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } case 2: { if(cs_get_user_money(id) >=3500) { cs_set_user_money(id, money - 3500) give_item(id, "weapon_ak47"); give_item(id, "weapon_deagle"); cs_set_user_bpammo(id, CSW_AK47, 90) cs_set_user_bpammo(id, CSW_DEAGLE, 35); client_print(id, print_chat, "You have buy AK47 + Deagle. Good luck & have fun !"); use[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } case 3: { if(cs_get_user_money(id) >=5500) { cs_set_user_money(id, money - 5500) give_item(id, "weapon_awp"); give_item(id, "weapon_deagle"); //cs_set_weapon_ammo(id, 10); cs_set_user_bpammo(id, CSW_AWP, 30) cs_set_user_bpammo(id, CSW_DEAGLE, 35); client_print(id, print_chat, "You have buy AWP + Deagle. Good luck & have fun !"); use[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } } return PLUGIN_HANDLED } public grenades_menu(id) { if(is_user_alive(id)) { new menu = menu_create("Menu Grenades" , "menu_grenades") menu_additem(menu, "HE \y300$", "1") menu_additem(menu, "Flashbang x2 \y400$", "2") menu_additem(menu, "Smoke \y300$", "3") menu_setprop(menu, MPROP_EXITNAME, "Exit") menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } return 1 } public menu_grenades(id, menu, item ) { if(user[id]) { client_print(id, print_chat, "Poti cumpara doar o grenada pe runda !"); return PLUGIN_HANDLED; } if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new access, callback new money = cs_get_user_money(id) menu_item_getinfo(menu, item, access, data,5,iName,63,callback) new key=str_to_num(data) switch(key) { case 1: { if(cs_get_user_money(id) >=300) { cs_set_user_money(id, money - 300) give_item(id, "weapon_hegrenade"); client_print(id, print_chat, "You have buy HE Grenade. Good luck & have fun !"); user[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } case 2: { if(cs_get_user_money(id) >= 400) { cs_set_user_money(id, money - 400) give_item(id, "weapon_flashbang"); give_item(id, "weapon_flashbang"); client_print(id, print_chat, "You have buy Flashbang Grenades. Good luck & have fun !"); user[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } case 3: { if(cs_get_user_money(id) >= 300) { cs_set_user_money(id, money - 300) give_item(id, "weapon_smokegrenade"); client_print(id, print_chat, "You have buy Smoke Grenade. Good luck & have fun !"); user[id]=true; } else client_print(id, print_chat, "You don't have enough money!") } } return PLUGIN_HANDLED }
1. Sa am un buton "9.Inapoi" dupa ce intru in meniul Weapons si Grenades.
Cum e acum: http://imgur.com/a/Xpcip
Cum vreau sa apara: http://imgur.com/a/ide4k
La fel sa fie si la meniul de T si la grenade
2. In runda 1 pot cumpara doar o arma, ArmaX. In runda 2 cumpar alta arma, ArmaY, insa ArmaX ramane.
Poza: http://imgur.com/a/gygyn
Daca runda asta am M4 si supravietuiesc, next round daca aleg AWP, M4 sa se dropeze / sa se stearga ramanand doar AWP.
Idem si pentru meniul de terro.
Aceasta restrictie sa fie pentru tot meniul Weapons.
PS. Daca sma-ul arata "urat" pentru voi, imi cer scuze dar sunt incepator. Meniul cat de cat merge. Accept orice sfat / critica pentru a ma imbunatati :)