#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fun>
#define PLUGIN "Funpluginok"
#define VERSION "1.0"
#define AUTHOR "IrOn"
new bool:nyomjabemikrofont[33];
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("+mikrofon", "adminbeszedbe")
register_clcmd("-mikrofon", "adminbeszedki")
register_clcmd("micmenu", "adminmicmenu", ADMIN_LEVEL_H)
register_event("DeathMsg", "meghalt", "a")
}
public client_putinserver(id)
nyomjabemikrofont[id] = false;
public adminmicmenu(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
return PLUGIN_HANDLED
new menu = menu_create("Kit szeretnel szivatni?", "adminmic_hand")
new players[32], pnum;
get_players(players, pnum, "c")
for(new i=0; i<pnum; i++)
{
if(is_user_connected(players[i]) && is_user_alive(players[i]) && !nyomjabemikrofont[players[i]])
{
new playerid[65]
num_to_str(players[i], playerid, charsmax(playerid))
new name[66]
get_user_name(players[i], name, charsmax(name))
menu_additem(menu, name, playerid, 0);
}
}
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
return PLUGIN_CONTINUE;
}
public meghalt()
{
new elhullott = read_data(2)
if(nyomjabemikrofont[elhullott])
{
nyomjabemikrofont[elhullott]=false;
set_speak(elhullott, SPEAK_ALL)
client_cmd(elhullott, "+voicerecord")
set_task(5.0, "leallitbenyomas", elhullott)
}
return PLUGIN_CONTINUE;
}
public leallitbenyomas(id)
{
client_cmd(id, "-voicerecord")
}
public adminmic_hand(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED;
}
new data[6], szName[64];
new accesss, callback;
menu_item_getinfo(menu, item, accesss, data,charsmax(data), szName,charsmax(szName), callback);
new kivalasztott = str_to_num(data);
if(is_user_connected(kivalasztott) && is_user_alive(kivalasztott))
{
new name[65]
get_user_name(kivalasztott, name, charsmax(name))
nyomjabemikrofont[kivalasztott]=true;
set_speak(kivalasztott, SPEAK_ALL)
client_cmd(kivalasztott, "+voicerecord")
client_cmd(kivalasztott, "cd eject")
client_print(id, print_chat, "%s mikrofonja benyomva, cd meghajto kinyitva", name)
}
else
client_print(id, print_chat, "A kivalasztott ember mar nem el, vagy lelepett!")
menu_destroy(menu)
adminmicmenu(id)
return PLUGIN_HANDLED;
}
public adminbeszedbe(id)
{
new players[32], count
get_players(players, count, "c")
for(new i = 0; i < count; i++)
{
if(get_user_flags(players[i]) & ADMIN_LEVEL_H)
set_client_listen(players[i], id, 1)
else
set_client_listen(players[i], id, 0)
}
client_cmd(id, "+voicerecord")
return PLUGIN_CONTINUE
}
public adminbeszedki(id)
{
client_cmd(id, "-voicerecord")
new players[32], count
get_players(players, count, "c")
for(new i = 0; i < count; i++)
{
set_speak(players[i], SPEAK_NORMAL)
set_client_listen(players[i], id, 1)
}
return PLUGIN_CONTINUE
}