Mam swój :
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <fakemeta>
#include <cstrike>
#define PLUGIN "Menu admina/noże"
#define VERSION "1.0"
#define AUTHOR "N!ree"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /noze","AwesomeMenu",ADMIN_BAN,"Plugin Autorstwa N!ree")
}
public AwesomeMenu(id)
{
if(is_user_connected(id) && get_user_flags(id) & ADMIN_BAN)
{
new menu = menu_create("Menu admina by N!ree", "menu_handler")
menu_additem(menu, "#1 Runda na Noze", "1", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}
}
public menu_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
new key = str_to_num(data)
new nick[32]
get_user_name(id,nick,31)
switch(key)
{
case 1:
{
if(is_user_alive(id))
{
client_printcolor(id, "\g ADMIN: %s ustawił rundę na noże", nick)
menu_destroy(menu)
new Weapons[32]
new numWeapons, i, wId
get_user_weapons(id, Weapons, numWeapons)
for (i=0; i<numWeapons; i++)
{
wId = Weapons[i]
if (wId==CSW_KNIFE || wId==CSW_C4)
continue
//fm_strip_user_gun(id, wId)
//ham_strip_weapon(id, wId)
strip_user_weapons(id);
//bool:fm_strip_user_gun( index, wid = 0, const wname[] = "" )
}
//engclient_cmd(id, "weapon_knife")
give_item(id, "weapon_knife");
return PLUGIN_HANDLED
}
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
stock client_printcolor(id,const input[], any:...)
{
new msg[191], players[32], count = 1;
vformat(msg,190,input,3);
replace_all(msg,190,"\g","^4");// green
replace_all(msg,190,"\n","^1");// normal
replace_all(msg,190,"\t","^3");// team
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();
}
}
Ale nie jestem pewien co do jego optymalności i działalności.
Proszę o pomoc.
Pozdrawiam.