ckmaster
06-03-2008, 10:49 PM
Hello~!
Im Chinese My English Not good
Here I with everyone Exchanges
Same Team Death&Live Talk
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <cstrike>
//what admin level is required?
#define ADMIN_LEVEL ADMIN_BAN
new g_player_muted[33]
public plugin_init()
{
register_plugin("Team Talk", "1.1", "Rulzy");
register_forward(FM_Voice_SetClientListening, "fm_voice_forward")
register_clcmd("amx_mute", "cmdMute", ADMIN_KICK, "<name or #userid> - Mute player's Microphone");
register_clcmd("amx_unmute", "cmdUnMute", ADMIN_KICK, "<name or #userid> - UnMute player's Microphone");
}
public fm_voice_forward(receiver, sender, listen)
{
if(receiver==sender) return FMRES_IGNORED;
new alltalk=get_cvar_num("sv_alltalk");
if(alltalk) return FMRES_IGNORED;
if(!is_user_connected(receiver) || !is_user_connected(sender)) return FMRES_IGNORED;
if(g_player_muted[sender] && get_user_flags(sender)&ADMIN_IMMUNITY==0) //如果此人被禁止讲话
{
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
new CsTeams:rt=cs_get_user_team(receiver);
new CsTeams:st=cs_get_user_team(sender);
if(rt==st || rt==CS_TEAM_UNASSIGNED || rt==CS_TEAM_SPECTATOR)
//观察员可以听到所有人的讲话,如果想观察员只能听到观察员的讲话,则将上句改为:if(rt= =st)
engfunc(EngFunc_SetClientListening, receiver, sender, 1);
else
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
public client_connect(id)
{
g_player_muted[id] = 0;
}
public cmdMute(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED;
new name[32];
read_argv(1, name, 31);
new target = cmd_target(id, name, 1);
if(!target) return PLUGIN_HANDLED;
g_player_muted[target] = 1
return PLUGIN_HANDLED;
}
public cmdUnMute(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED;
new name[32];
read_argv(1, name, 31);
new target = cmd_target(id, name, 0);
if(!target) return PLUGIN_HANDLED;
g_player_muted[target] = 0
return PLUGIN_HANDLED;
}
/* UTF-8 func by cKmaster */
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil\\ fcharset134 Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang2052\\ f0\\ fs16 \n\\ par }
*/
Im Chinese My English Not good
Here I with everyone Exchanges
Same Team Death&Live Talk
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <cstrike>
//what admin level is required?
#define ADMIN_LEVEL ADMIN_BAN
new g_player_muted[33]
public plugin_init()
{
register_plugin("Team Talk", "1.1", "Rulzy");
register_forward(FM_Voice_SetClientListening, "fm_voice_forward")
register_clcmd("amx_mute", "cmdMute", ADMIN_KICK, "<name or #userid> - Mute player's Microphone");
register_clcmd("amx_unmute", "cmdUnMute", ADMIN_KICK, "<name or #userid> - UnMute player's Microphone");
}
public fm_voice_forward(receiver, sender, listen)
{
if(receiver==sender) return FMRES_IGNORED;
new alltalk=get_cvar_num("sv_alltalk");
if(alltalk) return FMRES_IGNORED;
if(!is_user_connected(receiver) || !is_user_connected(sender)) return FMRES_IGNORED;
if(g_player_muted[sender] && get_user_flags(sender)&ADMIN_IMMUNITY==0) //如果此人被禁止讲话
{
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
new CsTeams:rt=cs_get_user_team(receiver);
new CsTeams:st=cs_get_user_team(sender);
if(rt==st || rt==CS_TEAM_UNASSIGNED || rt==CS_TEAM_SPECTATOR)
//观察员可以听到所有人的讲话,如果想观察员只能听到观察员的讲话,则将上句改为:if(rt= =st)
engfunc(EngFunc_SetClientListening, receiver, sender, 1);
else
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
public client_connect(id)
{
g_player_muted[id] = 0;
}
public cmdMute(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED;
new name[32];
read_argv(1, name, 31);
new target = cmd_target(id, name, 1);
if(!target) return PLUGIN_HANDLED;
g_player_muted[target] = 1
return PLUGIN_HANDLED;
}
public cmdUnMute(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED;
new name[32];
read_argv(1, name, 31);
new target = cmd_target(id, name, 0);
if(!target) return PLUGIN_HANDLED;
g_player_muted[target] = 0
return PLUGIN_HANDLED;
}
/* UTF-8 func by cKmaster */
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil\\ fcharset134 Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang2052\\ f0\\ fs16 \n\\ par }
*/