Quote:
Originally Posted by sofi1990
como?
|
PHP Code:
#include < amxmodx >
enum {
DEFAULT,
RED,
BLUE,
GREY,
GREEN
}
public plugin_init( )
register_clcmd( "say", "hook_say" );
public hook_say( id )
{
new chat[ 292 ], szName[ 32 ];
read_args( chat, charsmax( chat ) ); // chat ahora equivale a lo que escribis en say...
get_user_name( id, szName, charsmax( szName ) ); // aca obtenes el nombre del player
if( equali( szName, "tu tag" ) ) // si szName es igual al string "tu tag" ... (no es sensible a mayusculas y minusculas)
{
// aca tenes que hacer chequeos de si estan vivos o muertos y blablabla que no tengo ganas de hacer asique se lo mando a todos sin importar nada...
printf( 0, GREY, "%s: %s", szName, chat );
return PLUGIN_HANDLED;
}
}
stock printf(id, color, const msg[], any:...) {
static Buffer[192], MsgSayText, MsgTeamInfo, Team[11]
if(!MsgSayText) {
MsgTeamInfo = get_user_msgid("TeamInfo")
MsgSayText = get_user_msgid("SayText")
}
vformat(Buffer[1], charsmax(Buffer) - 1, msg, 4)
static const Teams[4][11] = {
"UNASSIGNED",
"TERRORIST",
"CT",
"SPECTATOR"
}
if(color) {
if(color == GREEN) {
Buffer[0] = 0x04
message_begin(MSG_ONE_UNRELIABLE, MsgSayText, _, id)
write_byte(id)
write_string(Buffer)
message_end()
}
else {
Buffer[0] = 0x03
get_user_team(id, Team, charsmax(Team))
message_begin(MSG_ONE_UNRELIABLE, MsgTeamInfo, _, id)
write_byte(id)
write_string(Teams[color])
message_end()
message_begin(MSG_ONE_UNRELIABLE, MsgSayText, _, id)
write_byte(id)
write_string(Buffer)
message_end()
message_begin(MSG_ONE_UNRELIABLE, MsgTeamInfo, _, id)
write_byte(id)
write_string(Team)
message_end()
}
}
else {
Buffer[0] = 0x01
message_begin(MSG_ONE_UNRELIABLE, MsgSayText, _, id)
write_byte(id)
write_string(Buffer)
message_end()
}
}
__________________