02/07/2014, 09:16 PM
Esto seria como una continuación al tutorial anterior [TUT] Guardar/Cargar datos de un player (ejemplo zp)
Para este tutorial vamos a usar la API del Advanced Vault System
Advanced Vault System
Teniendo en cuenta el code del anterior tutorial,ahora vamos a ver como obtener los datos para crear un top15 y un rank.
Otros tutoriales:
[TUT] Guardar/Cargar datos de un player (ejemplo zp)
[TUT] Búsquedas de datos en Adv-Vault
Para este tutorial vamos a usar la API del Advanced Vault System
Advanced Vault System
Teniendo en cuenta el code del anterior tutorial,ahora vamos a ver como obtener los datos para crear un top15 y un rank.
Código PHP:
/*No voy a explicar cada parámetro porque ya esta explicado en el include*/
/*Variable donde guardaremos el identificador del ordenamiento*/
new g_sort
public plugin_init()
{
/*Creamos el ordenamiento*/
g_sort = adv_vault_sort_create(g_vault, ORDER_DESC, 60, 2000, g_campos[CAMPO_RESET], g_campos[CAMPO_LEVEL], g_campos[CAMPO_AMMOPACKS])
}
funcion_top15(id)
{
new rr, lvl, ap, keyindex, pj[32]
// Chequeamos que el loop no sea mayor a los resultados obtenidos
new toploop = min(adv_vault_sort_numresult(g_vault, g_sort), 15)
for(new position=1; position <= toploop; position++)
{
// Obtenemos el keyindex que este en la posición deseada
keyindex = adv_vault_sort_position(g_vault, g_sort, position)
// Preparamos para obtener los datos
if(!adv_vault_get_prepare(g_vault, keyindex)) continue
// Obtenemos los datos
ap = adv_vault_get_field(g_vault, g_campos[CAMPO_AMMOPACKS])
lvl = adv_vault_get_field(g_vault, g_campos[CAMPO_LEVEL])
rr = adv_vault_get_field(g_vault, g_campos[CAMPO_RESET])
adv_vault_get_keyname(g_vault, keyindex, pj, 31)
console_print(id, "#%d pj:[%s] - rr:[%d] - lvl:[%d] - ap:[%d]", position, pj, rr, lvl, ap)
}
}
funcion_rank(id)
{
// Obtenemos en que posicion esta el key
new rank_position = adv_vault_sort_key(g_vault, g_sort, 0, g_pj[id])
if(!rank_position) client_print(id, print_chat, "No estas rankeado")
else client_print(id, print_chat, "Tu rank es %d de %d", rank_position, adv_vault_sort_numresult(g_vault, g_sort))
}
Otros tutoriales:
[TUT] Guardar/Cargar datos de un player (ejemplo zp)
[TUT] Búsquedas de datos en Adv-Vault