Why doesn't this plugin work? When i type /top15 on chat it doesn't work.
PHP Code:
#include <amxmodx>
#include <hamsandwich>
#include <adv_vault>
#include <csx>
enum
{
FRAGS=0,
DEATHS,
NOMBRE,
MAX_FIELDS
}
new Fields[MAX_FIELDS], g_frags[33], g_deaths[33], g_steam[33][32], vault, Sort
public plugin_init()
{
register_plugin("TOP/RANK", "1.0", ";LuKks.-'")
vault = adv_vault_open("DatosTop", false)
Fields[FRAGS] = adv_vault_register_field(vault, "FRAGS")
Fields[DEATHS] = adv_vault_register_field(vault, "DEATHS")
Fields[NOMBRE] = adv_vault_register_field(vault, "NOMBRE", DATATYPE_STRING, 32)
adv_vault_init(vault)
Sort = adv_vault_sort_create(vault, ORDER_DESC, 20, 0, Fields[FRAGS], Fields[DEATHS])
RegisterHam(Ham_Killed, "player", "Jugador_Muere")
register_clcmd("say /top15", "Menu_TOP")
}
public client_authorized(Index)
{
get_user_authid(Index, g_steam[Index], charsmax(g_steam[]))
g_frags[Index] = 0
g_deaths[Index] = 0
Vault(Index, 2)
}
public client_disconnect(Index)
Vault(Index, 1)
public Jugador_Muere(victim, attacker)
{
if(victim != attacker)
{
g_frags[attacker]++
g_deaths[victim]++
}
return HAM_IGNORED
}
public Menu_TOP(Index)
{
static Mortes, Frags, Kills, Deaths, Nombre[32], Keyindex, Opciones[200], Posicion[6], Float:Ratio = 0.0
static Menu;Menu = menu_create("\r[SMART TEAM PORTUGAL]^n\yTOP15 Jogadores", "menu_top")
new Toploop = adv_vault_sort_numresult(vault, Sort)
for(new Position=1; Position <= Toploop; Position++)
{
Keyindex = adv_vault_sort_position(vault, Sort, Position)
if(!adv_vault_get_prepare(vault, Keyindex)) continue
Kills = adv_vault_get_field(vault, Fields[FRAGS])
Deaths = adv_vault_get_field(vault, Fields[DEATHS])
Deaths = Mortes, Kills = Frags, Ratio = Deaths == 0 ? (float(Kills)) : (float(Kills) / float(Deaths))
adv_vault_get_field(vault, Fields[NOMBRE], Nombre, charsmax(Nombre))
formatex(Opciones, charsmax(Opciones), "[\y%d\d] \r%s \yFrags \r%d \yMortes \r%d \yKD: %.2f.", Position, Nombre, Kills, Deaths, Ratio)
num_to_str(Position, Posicion, charsmax(Posicion))
menu_additem(Menu, Opciones, Posicion)
}
menu_setprop(Menu, MPROP_PERPAGE, 5)
menu_setprop(Menu, MPROP_NEXTNAME, "Seguinte")
menu_setprop(Menu, MPROP_BACKNAME, "Atras")
menu_setprop(Menu, MPROP_EXITNAME, "Sair")
menu_display(Index, Menu, 0)
}
public menu_top(Index, Menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(Menu)
return PLUGIN_HANDLED
}
Menu_TOP(Index)
return PLUGIN_HANDLED
}
stock ChatColor(Index, const Input[], any:...)
{
static Msj[191], SayText; SayText = get_user_msgid("SayText")
vformat(Msj,190, Input,3)
message_begin(MSG_ONE_UNRELIABLE, SayText, _, Index)
write_byte(Index)
write_string(Msj)
message_end()
}
public Vault(Index, Guardar_Cargar)
{
static Nombre[32]; get_user_name(Index, Nombre, charsmax(Nombre))
if(Guardar_Cargar == 1)
{
adv_vault_set_start(vault)
adv_vault_set_field(vault, Fields[FRAGS], g_frags[Index])
adv_vault_set_field(vault, Fields[DEATHS], g_deaths[Index])
adv_vault_set_field(vault, Fields[NOMBRE], Nombre)
adv_vault_set_end(vault, 0, g_steam[Index])
}
else if(Guardar_Cargar == 2)
{
if(!adv_vault_get_prepare(vault, 0, g_steam[Index]))
return
g_frags[Index] = adv_vault_get_field(vault, Fields[FRAGS])
g_deaths[Index] = adv_vault_get_field(vault, Fields[DEATHS])
adv_vault_get_field(vault, Fields[NOMBRE], Nombre, charsmax(Nombre))
}
}