Everything works but when I unmute a player so he can talk it dosn't, he still cant talk
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#define PLUGIN "123"
#define VERSION "1.0"
#define AUTHOR "1234"
new bool:is_muted[33];
new g_maxplayers;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_forward(FM_Voice_SetClientListening, "fwd_voice_setclientlistening")
register_clcmd("say /mic", "cmdMenuMic", ADMIN_ALL);
g_maxplayers = get_maxplayers();
}
public client_putinserver(id){
is_muted[id] = true;
}
public cmdMenuMic(id){
if(!is_user_connected(id)){
return PLUGIN_HANDLED;
}
if(get_user_flags(id) & ADMIN_BAN || get_user_team(id) == 2){
static menu, name[32], i, num[7];
menu = menu_create("\yGive mic", "handled_give_mic");
for (i = 1; i <= g_maxplayers; i++){
if (!is_user_connected(i) || is_user_bot(i) || get_user_team(i) != 1 || !is_user_alive(i)){
continue;
}
get_user_name(i, name, charsmax(name));
num_to_str(i, num, charsmax(num));
menu_additem(menu, name, num);
}
menu_display(id, menu);
}
return PLUGIN_HANDLED;
}
public handled_give_mic(id, menu, item){
if (item == MENU_EXIT){
menu_destroy(menu);
return;
}
static access, num[7], target;
menu_item_getinfo(menu, item, access, num, charsmax(num), _, _, access);
target = str_to_num(num);
if (is_user_connected(id)){
if(is_muted[id]){
is_muted[id] = false;
client_print(0, print_chat, "No longer muted");
}
else{
is_muted[id] = true;
client_print(0, print_chat, "Muted again");
}
}
else{
chatcolor(id, "User isn't in the server");
menu_destroy(menu);
}
}
public fwd_voice_setclientlistening(receiver, sender, listen){
if(receiver == sender){
return FMRES_IGNORED;
}
if(get_user_flags(sender) & ADMIN_BAN){
return FMRES_IGNORED;
}
if(get_user_team(sender) == 1 && !is_muted[sender] && is_user_alive(sender)){
return FMRES_IGNORED;
}
if(get_user_team(sender) == 2 && is_user_alive(sender)){
return FMRES_IGNORED;
}
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
If user is admin he can talk always.
If user is terrorist he can only talk when he's alive and he isnt muted.
If user is counter terrrorist he can talk only when he's alive.
So I want CTS or admins make X terrorist speak, but even if the terrorist is not muted he can't.
If a player is CT and then he change to TT he can speak even if he's muted.