Cześć posiadam plugin by DarkGL tzn admin aim, jak zrobić żeby zwykły użytkownik mogł go używać?
Proszę o modyfikacje
Kto pomoże daje 5 like'ow
#include <amxmodx> #include <amxmisc> #include <fakemeta> #define PLUGIN "Shot Administration" #define VERSION "1.2" #define AUTHOR "Nomexous & DarkGL" /* Version 1.0 - Initial release. Version 1.1 - Small optimization with the menu. Version 1.2 - Optymalized */ new bool:bAim[33]; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("amx_admin_aim", "conjure_menu", ADMIN_SLAY, "Displays admin aim menu.") register_forward(FM_TraceLine, "fw_traceline") register_forward(FM_TraceHull, "fw_tracehull", 1) } public client_disconnect(id) bAim[id] = false; public conjure_menu(id, level, cid) { if (cmd_access(id, level, cid, 1)) { build_menu(id) } return PLUGIN_HANDLED } // For some reason, they don't allow default argument items in public functions. stock build_menu(id, page = 0) { new menu = menu_create("Admin Aim menu", "menu_handler") static players[32], num, szName[64], cmd[5], itemtxt[60] get_players(players, num) for (new i = 0; i < num; i++) { if(!is_user_connected(players[i])) continue; get_user_name(players[i], szName, charsmax(szName)) num_to_str(players[i],cmd,charsmax(cmd)); formatex(itemtxt, 59, "%s %s", szName, bAim[players[i]] ? "\yON":"\rOFF") menu_additem(menu, itemtxt, cmd) } menu_display(id, menu, page) } public menu_handler(id, menu, item) { if(item == MENU_EXIT){ menu_destroy(menu) return ; } static cmd[5], callback, access, pid menu_item_getinfo(menu, item, access, cmd, 4, _, _, callback) pid = str_to_num(cmd) if (is_user_connected(pid)) { bAim[pid] = !bAim[pid]; } menu_destroy(menu) build_menu(id, item / 7) } public fw_traceline(Float:start[3], Float:end[3], conditions, id, ptr) { return process_trace(id, ptr) } public fw_tracehull(Float:start[3], Float:end[3], conditions, hull, id, ptr) { return process_trace(id, ptr) } public process_trace(id, ptr) { if (!is_user_alive(id) || !bAim[id]) return FMRES_IGNORED new target = get_tr2(ptr, TR_pHit) if (!is_user_alive(target)) return FMRES_IGNORED new Float:origin[3], Float:angles[3] engfunc(EngFunc_GetBonePosition, target, 8, origin, angles) set_tr2(ptr, TR_vecEndPos, origin) set_tr2(ptr, TR_iHitgroup, HIT_HEAD) return FMRES_IGNORED }
Użytkownik xXxBoy4GirlxXx edytował ten post 21.11.2014 21:38