Antes de empezar queria decirles que nose si es la forma correcta de hookear , pero a mi me funciono
Fuente : https://forums.alliedmods.net/showthread.php?t=213368
TUT :
yo cuando lo vi ya entendia :3 espero que entiendan ustedes , nose si
esta explicado bien espero que lo disfruten n.n Saludos
Imagen :
edit : ustedes tienen que modificar la variable de su nivel , esa es la que yo uso xD Saludos.
lo queria hacer con variables tipo :
new vivo = is_user_alive(id)
pero me tiraba warning
Fuente : https://forums.alliedmods.net/showthread.php?t=213368
TUT :
Código PHP:
#include <amxmodx>
#include <cstrike>
public plugin_init()
{
register_plugin("Hook Say Basic", "0.1", "Morte")
/* Registramos comando say del cliente */
register_clcmd("say", "message_saytext")
/* =================================== */
}
new g_level[33]
public message_saytext(id)
{
/* Creamos un array estatico - Este tiene un tamaño de 192 porque seria */
/* el máximo de caracteres que se van a poder escribir */
static szSay[192]
/* =================================== */
/* Obtenemos lo que escribio el jugador */
read_args(szSay, charsmax(szSay))
/* =================================== */
/* Removemos las comillas que se forman en el read_args al principio y fin del texto escrito */
remove_quotes(szSay)
/* =================================== */
replace_all(szSay, charsmax(szSay), "%", " ")
/* Creamos un array estatico para obtener el nombre del jugador */
static szNombre[32]
/* =================================== */
/* Obtemeos el nombre del jugador */
get_user_name(id, szNombre, 32)
switch(cs_get_user_team(id))
{
case CS_TEAM_CT: // en el caso de que sea CT
{
if(is_user_alive(id)) // si esta vivo el CT
{
ChatColor(0, "!t[ CT ][ %s ][ !gLevel %d !t]!y: %s", szNombre, g_level[id], szSay) // mensaje que es CT , nombre , level , lo que escribio
}
else ChatColor(0, "!t[ CT ][ MUERTO ][ %s ][ !gLevel %d !t]!y: %s", szNombre, g_level[id], szSay) // lo mismo pero tambien que esta muerto
} // else : si no esta vivo , mejor dicho caso contrario
case CS_TEAM_T: // si es TT
{
if (is_user_alive(id)) // si esta vivo el TT
{
ChatColor(0, "!t[ TT ][ %s ][ !gLevel %d !t]!y: %s", szNombre, g_level[id], szSay) // mensaje que es TT , nombre , level , lo que escribio
}
else ChatColor(0, "!t[ TT ][MUERTO][ %s ][ !gLevel %d !t]!y: %s", szNombre, g_level[id], szSay) // lo mismo pero te muestra que estas muerto.
} // else : si no esta vivo , mejor dicho caso contrario
case CS_TEAM_SPECTATOR:
{
ChatColor(0, "!t[ Spectator ][ %s ]!y: %s", szNombre, szSay)
}
}
return PLUGIN_HANDLED // magia para que no aparesca 2 veces el mensaje
}
// stock de chatcolor
stock ChatColor(const index, const input[], any:...)
{
new count = 1, players[32], len
static msg[192]
len = formatex(msg,charsmax( msg ), "");
vformat(msg[len], charsmax(msg), input, 3)
msg[191] = '^0';
replace_all(msg, 190, "!g", "^4") // Color Verde
replace_all(msg, 190, "!y", "^1") // Color Normal
replace_all(msg, 190, "!t", "^3") // Color de Equipo
if (index) players[0] = index; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
yo cuando lo vi ya entendia :3 espero que entiendan ustedes , nose si
esta explicado bien espero que lo disfruten n.n Saludos
Imagen :
edit : ustedes tienen que modificar la variable de su nivel , esa es la que yo uso xD Saludos.
lo queria hacer con variables tipo :
new vivo = is_user_alive(id)
pero me tiraba warning