#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <hamsandwich>
#define PLUGIN "Fegyvermenu" #define VERSION "1.0" #define AUTHOR "RaZzoR"
new const primary_weapons[][][] = { { "M4A1", "weapon_m4a1", "90" }, { "AK47", "weapon_ak47", "90" }, { "AUG", "weapon_aug", "90" }, { "SG552", "weapon_sg552", "90" }, { "GALIL", "weapon_galil", "90" }, { "FAMAS", "weapon_famas", "90" }, { "SCOUT", "weapon_scout", "90" }, { "AWP", "weapon_awp", "30" }, { "SG550", "weapon_sg550", "90" }, { "M249", "weapon_m249", "200" }, { "G3SG1", "weapon_g3sg1", "90" }, { "MP5NAVY", "weapon_mp5navy", "120" }, { "M3", "weapon_m3", "32" }, { "XM1014", "weapon_xm1014", "32" }, { "TMP", "weapon_tmp", "120" }, { "MAC10", "weapon_mac10", "100" }, { "P90", "weapon_p90", "100" } }
new const secondary_weapons[][][] = { { "USP", "weapon_usp", "100" }, { "GLOCK18", "weapon_glock18", "120" }, { "DEAGLE", "weapon_deagle", "35" }, { "P228", "weapon_p228", "52" }, { "ELITE", "weapon_elite", "120" }, { "FIVESEVEN", "weapon_fiveseven", "100" } }
new save_weapons[33][2], bool:save_menu[33] = false
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /fegyo", "clcmd_fegyo") RegisterHam(Ham_Spawn, "player", "Spawn", 1) }
public client_connect(id) { save_weapons[id][0] = 0 save_weapons[id][1] = 0 save_menu[id] = false }
public Spawn(id) { if(!is_user_alive(id)) return strip_user_weapons(id) give_item(id, "weapon_knife") if(save_menu[id] == true) give_previous_item(id) else open_weapon_menu(id) }
public clcmd_fegyo(id) { if(save_menu[id] == true) { client_print(id, print_chat, "Következő körben újra engedélyezve lesz a Fegyvermenü!") save_menu[id] = false } else client_print(id, print_chat, "A Fegyvermenü engedélyezve van már!") }
/* Main Menu */ public open_weapon_menu(id) { new menu = menu_create("Fegyvermenü:", "open_weapon_menu_handler") menu_additem(menu, "Új Fegyver", "0", 0) if(save_weapons[id][0] > 0 && save_weapons[id][1] > 0) { menu_additem(menu, "Előző Fegyver", "1", 0) menu_additem(menu, "Előző Fegyver + Mentés", "2", 0) } menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER) menu_display(id, menu, 0) return PLUGIN_HANDLED }
public open_weapon_menu_handler(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[64], szName[64] new access, callback menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) switch(item) { case 0: open_primary_menu(id) case 1: give_previous_item(id) case 2: { give_previous_item(id) save_menu[id] = true client_print(id, print_chat, "Ha engedélyezni szeretnéd a Fegyvermenüt, írd chatbe: '/fegyo' !") } } return PLUGIN_CONTINUE }
/* Primary Menu */ public open_primary_menu(id) { new i_data[64] new menu = menu_create("Elsődleges Fegyverek:", "open_primary_menu_handler") for(new i=0; i < sizeof(primary_weapons); i++) { num_to_str(i, i_data, sizeof(i_data)) menu_additem(menu, primary_weapons[i][0], i_data, 0) } menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER) menu_display(id, menu, 0) return PLUGIN_HANDLED }
public open_primary_menu_handler(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[64], szName[64] new access, callback menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) new key = str_to_num(data) new weapon_id = get_weaponid(primary_weapons[key][1]) new convert_to_num = str_to_num(primary_weapons[key][2]) give_item(id, primary_weapons[key][1]) cs_set_user_bpammo(id, weapon_id, convert_to_num) save_weapons[id][0] = key+1 open_secondary_menu(id) return PLUGIN_CONTINUE }
/* Secndary Menu */ public open_secondary_menu(id) { new i_data[64] new menu = menu_create("Másodlagos Fegyverek:", "open_secondary_menu_handler") for(new i=0; i < sizeof(secondary_weapons); i++) { num_to_str(i, i_data, sizeof(i_data)) menu_additem(menu, secondary_weapons[i][0], i_data, 0) } menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER) menu_display(id, menu, 0) return PLUGIN_HANDLED }
public open_secondary_menu_handler(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[64], szName[64] new access, callback menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) new key = str_to_num(data) new weapon_id = get_weaponid(secondary_weapons[key][1]) new convert_to_num = str_to_num(secondary_weapons[key][2]) give_item(id, secondary_weapons[key][1]) cs_set_user_bpammo(id, weapon_id, convert_to_num) give_item(id, "weapon_hegrenade") save_weapons[id][1] = key+1 return PLUGIN_CONTINUE }
public give_previous_item(id) { new pri_weapon_id = get_weaponid(primary_weapons[save_weapons[id][0]-1][1]) new pri_convert_to_num = str_to_num(primary_weapons[save_weapons[id][0]-1][2]) new sec_weapon_id = get_weaponid(secondary_weapons[save_weapons[id][1]-1][1]) new sec_convert_to_num = str_to_num(secondary_weapons[save_weapons[id][1]-1][2]) give_item(id, primary_weapons[save_weapons[id][0]-1][1]) cs_set_user_bpammo(id, pri_weapon_id, pri_convert_to_num) give_item(id, secondary_weapons[save_weapons[id][1]-1][1]) cs_set_user_bpammo(id, sec_weapon_id, sec_convert_to_num) give_item(id, "weapon_hegrenade") } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par } */
_________________
|