Code: Select all
public voice_listening(receiver, sender, bool:listen){ if((receiver == sender)) return FMRES_IGNORED if(is_user_admin(sender)) { engfunc(EngFunc_SetClientListening, receiver, sender, true) return FMRES_SUPERCEDE } switch(gc_VoiceBlock) { case(2): { if((sender != g_Simon) && (!get_bit(g_SimonVoice, sender) && gc_VoiceBlock)) { engfunc(EngFunc_SetClientListening, receiver, sender, false) return FMRES_SUPERCEDE } } case(1): { if(!get_bit(g_SimonVoice, sender) && gc_VoiceBlock) { engfunc(EngFunc_SetClientListening, receiver, sender, false) return FMRES_SUPERCEDE } } } if(!is_user_alive(sender)) { engfunc(EngFunc_SetClientListening, receiver, sender, false) return FMRES_SUPERCEDE } if(sender == g_Simon) { engfunc(EngFunc_SetClientListening, receiver, sender, true) return FMRES_SUPERCEDE } listen = true if(g_SimonTalking && (sender != g_Simon)) { listen = false } else { static CsTeams:steam steam = cs_get_user_team(sender) switch(gc_TalkMode) { case(2): { listen = (steam == CS_TEAM_CT) } case(1): { listen = (steam == CS_TEAM_CT || steam == CS_TEAM_T) } } } engfunc(EngFunc_SetClientListening, receiver, sender, listen) return FMRES_SUPERCEDE}