Estoy rehaciendo mi KZMod y bueno quise agregarle un speclist, los 2 que están en Alliedmods son Feos y viejos.
Entonces hice uno, está un poco más limpio.
PHP Code:
#include <amxmodx>
#include <fakemeta>
#define PLUGIN "Spectator List"
#define VERSION "1.0"
#define AUTHOR "GlaDiuS"
new g_HudSync
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
g_HudSync = CreateHudSyncObj()
}
public client_putinserver(id)
{
if(is_user_connected(id))
{
set_task(0.1, "ShowSpecs_Task", id, _, _, "b")
}
}
public ShowSpecs_Task(id)
{
if(!is_user_connected(id))
{
return PLUGIN_HANDLED
}
if(pev(id, pev_iuser1) == 1 || pev(id, pev_iuser1) == 3)
{
return PLUGIN_HANDLED
}
static Player;
Player = is_user_alive(id) ? id : pev(id, pev_iuser2)
new CountSpec, SpecMsg[256], SpecName[32]
new Players[32], Num, id2
get_players(Players, Num, "bch")
for(new i; i < Num; i++)
{
id2 = Players[i]
if(pev(id2, pev_iuser1) == 4 || pev(id2, pev_iuser1) == 2)
{
get_user_name(id2, SpecName, sizeof SpecName - 1)
if(CountSpec)
{
add(SpecMsg, sizeof SpecMsg - 1, "^n^t^t^t")
}
format(SpecMsg, sizeof SpecMsg - 1, "%s%s (%s View)", strlen(SpecMsg) > 0 ? SpecMsg : "", SpecName, pev(id2, pev_iuser1) == 2 ? "3rd" : "First")
CountSpec++
}
}
if(CountSpec && is_user_alive(Player))
{
new PlayerName[32]
get_user_name(Player, PlayerName, sizeof PlayerName - 1)
format(SpecMsg, sizeof SpecMsg - 1, "SPECTATING %s (%d): %s", PlayerName, CountSpec, SpecMsg)
set_hudmessage(0, 220, 255, 0.6, 0.14, 0, 0.0, 0.2, 0.0, 0.0, 2)
ShowSyncHudMsg(id, g_HudSync, SpecMsg)
}
return PLUGIN_HANDLED
}
Cualquier cosa me dicen. Saludos
__________________