Plugin de Top tiempo.
#1
Estrella 
Buenas! Bueno paso por aquí para ver si alguien me pasa el plugin de top tiempo, me explico es un plugin donde hay un top de las personas que han durado más tiempo en el servidor, ejemplo *HE JUGADO 2 HORAS* y los demás usuarios han jugado 1 hora, obviamente que yo aparezca de primero porque llevo mas horas acumuladas, si alguien me lo pasa se lo agradezco mucho. Mario
Corazón I dream of someday being able to have your near. Corazón
[Imagen: 76561199006140497.png]
Responder
#2
Cuando llegue a casa si tengo ganas lo hago ekis de
Responder
#3
(21/03/2020, 08:38 PM)Chema escribió: Cuando llegue a casa si tengo ganas lo hago ekis de

¿Enserio?
Corazón I dream of someday being able to have your near. Corazón
[Imagen: 76561199006140497.png]
Responder
#4
pasa el sistema yo te lo adapto a mi top
Responder
#5
(22/03/2020, 01:47 PM)miguel za escribió: pasa el sistema yo te lo adapto a mi top

No tengo el sistema, estoy pidiendo TODO. Oh god why
Corazón I dream of someday being able to have your near. Corazón
[Imagen: 76561199006140497.png]
Responder
#6
https://amxmodx-es.com/Thread-Contador-De-Tiempo

Oh god why
Dancing
Responder
#7
(22/03/2020, 01:47 PM)miguel za escribió: pasa el sistema yo te lo adapto a mi top

Que ganas de robar código que tenes pibe... Whatdone
Responder
#8
(22/03/2020, 02:35 PM)RomeL escribió: https://amxmodx-es.com/Thread-Contador-De-Tiempo

Oh god why

Ese plugin funciona, pero no es como yo lo quiero. Cutecry
Corazón I dream of someday being able to have your near. Corazón
[Imagen: 76561199006140497.png]
Responder
#9
Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <adv_vault>

#define PLUGIN  "Contador de Tiempo + TOP"
#define VERSION "1.0.0-125"
#define AUTHOR  "HK-416"

#define TASK_TIEMPO 2020
#define DB "db_tiempo"

enum {
    
campo_seg 0,
    
campo_max
}

new 
g_segundos[33];
new 
g_nombre[33][32];
new 
g_campo[campo_max];
new 
g_vault;
new 
g_sort;

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR);
    
    
register_clcmd("say /tiempo""clcmd_tiempo");
    
register_clcmd("say /topo""clcmd_show_top");
    
    
g_vault adv_vault_open(DBfalse);
    
g_campo[campo_seg] = adv_vault_register_field(g_vault"segundos");
    
adv_vault_init(g_vault);
    
    
g_sort adv_vault_sort_create(g_vaultORDER_DESC60100g_campo[campo_seg])
    
    
RegisterHam(Ham_Spawn"player""fw_PlayerSpawn_Post"0);
}

public 
client_putinserver(index)
{
    
get_user_name(indexg_nombre[index], 31);
    
cargar(index);
    
set_task(1.0"tiempo"index+TASK_TIEMPO,_,_,"b");
}

public 
client_disconnect(index)
{
    if (
task_exists(index+TASK_TIEMPO))
    {
        
remove_task(index+TASK_TIEMPO);
        
guardar(index);
    }
}

public 
fw_PlayerSpawn_Post(index)
{
    if (
is_user_bot(index) || !is_user_connected(index)) return;
    
guardar(index)
}

public 
clcmd_tiempo(index)
{
    static 
horasminutosseg_total;
    
seg_total g_segundos[index];

    
horas = (g_segundos[index] / 3600);
    
seg_total -= (horas 3600);

    
minutos = (seg_total 60)
    
seg_total -= (minutos  60)
    
    
client_print(indexprint_chat"[AMXX] Jugaste durante %d Hora%s, %d Minuto%s y %d Segundo%s",
    
horashoras "s":""minutosminutos "s":""seg_totalseg_total"s":"");
}

public 
tiempo(index)
{
    
index -= TASK_TIEMPO;
    
g_segundos[index] ++;
}

public 
clcmd_show_top(index)
{
    new 
maxtopkeyindexsegminuhoraszName[32], menutxt[200], pos[50];
    
maxtop min(adv_vault_sort_numresult(g_vaultg_sort), 15);
    
menu_create("Top 15 (Tiempo)""hand_top");
    for(new 
i=1<= maxtopi++)
    {
        
keyindex adv_vault_sort_position(g_vaultg_sorti);
        if(!
adv_vault_get_prepare(g_vaultkeyindex)) continue;
        
        
seg adv_vault_get_field(g_vaultg_campo[campo_seg]);
        
adv_vault_get_keyname(g_vaultkeyindexszName31);
        
        
hora = (seg 3600);
        
seg -= (hora 3600);
        
minu = (seg 60);
        
seg -= (minu 60);
        
formatex(txtcharsmax(txt), "[%d] | %s (%d H | %d M | %d S)"iszNamehoraminuseg);
        
num_to_str(iposcharsmax(pos))
        
menu_additem(menutxtpos);
    }
    
    
menu_setprop(menuMPROP_NEXTNAME"Siguiente")
    
menu_setprop(menuMPROP_BACKNAME"Atras")
    
menu_setprop(menuMPROP_EXITNAME"Salir")
    
    
menu_display(indexmenu0);
}

public 
hand_top(indexmenuitem)
{
    if (
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED;
    }
    return 
PLUGIN_HANDLED;
}

public 
guardar(index)
{
    
adv_vault_set_start(g_vault);
    
adv_vault_set_field(g_vaultg_campo[campo_seg], g_segundos[index]);
    
adv_vault_set_end(g_vault0g_nombre[index]);
}

public 
cargar(index)
{
    if(!
adv_vault_get_prepare(g_vault_g_nombre[index]))
    {
        
g_segundos[index] = 0;
        return;
    }
    
g_segundos[index] = adv_vault_get_field(g_vaultg_campo[campo_seg]);

“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#10
(23/03/2020, 01:00 AM)HK-416 escribió:
Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <adv_vault>

#define PLUGIN  "Contador de Tiempo + TOP"
#define VERSION "1.0.0-125"
#define AUTHOR  "HK-416"

#define TASK_TIEMPO 2020
#define DB "db_tiempo"

enum {
    
campo_seg 0,
    
campo_max
}

new 
g_segundos[33];
new 
g_nombre[33][32];
new 
g_campo[campo_max];
new 
g_vault;
new 
g_sort;

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR);
    
    
register_clcmd("say /tiempo""clcmd_tiempo");
    
register_clcmd("say /topo""clcmd_show_top");
    
    
g_vault adv_vault_open(DBfalse);
    
g_campo[campo_seg] = adv_vault_register_field(g_vault"segundos");
    
adv_vault_init(g_vault);
    
    
g_sort adv_vault_sort_create(g_vaultORDER_DESC60100g_campo[campo_seg])
    
    
RegisterHam(Ham_Spawn"player""fw_PlayerSpawn_Post"0);
}

public 
client_putinserver(index)
{
    
get_user_name(indexg_nombre[index], 31);
    
cargar(index);
    
set_task(1.0"tiempo"index+TASK_TIEMPO,_,_,"b");
}

public 
client_disconnect(index)
{
    if (
task_exists(index+TASK_TIEMPO))
    {
        
remove_task(index+TASK_TIEMPO);
        
guardar(index);
    }
}

public 
fw_PlayerSpawn_Post(index)
{
    if (
is_user_bot(index) || !is_user_connected(index)) return;
    
guardar(index)
}

public 
clcmd_tiempo(index)
{
    static 
horasminutosseg_total;
    
seg_total g_segundos[index];

    
horas = (g_segundos[index] / 3600);
    
seg_total -= (horas 3600);

    
minutos = (seg_total 60)
    
seg_total -= (minutos  60)
    
    
client_print(indexprint_chat"[AMXX] Jugaste durante %d Hora%s, %d Minuto%s y %d Segundo%s",
    
horashoras "s":""minutosminutos "s":""seg_totalseg_total"s":"");
}

public 
tiempo(index)
{
    
index -= TASK_TIEMPO;
    
g_segundos[index] ++;
}

public 
clcmd_show_top(index)
{
    new 
maxtopkeyindexsegminuhoraszName[32], menutxt[200], pos[50];
    
maxtop min(adv_vault_sort_numresult(g_vaultg_sort), 15);
    
menu_create("Top 15 (Tiempo)""hand_top");
    for(new 
i=1<= maxtopi++)
    {
        
keyindex adv_vault_sort_position(g_vaultg_sorti);
        if(!
adv_vault_get_prepare(g_vaultkeyindex)) continue;
        
        
seg adv_vault_get_field(g_vaultg_campo[campo_seg]);
        
adv_vault_get_keyname(g_vaultkeyindexszName31);
        
        
hora = (seg 3600);
        
seg -= (hora 3600);
        
minu = (seg 60);
        
seg -= (minu 60);
        
formatex(txtcharsmax(txt), "[%d] | %s (%d H | %d M | %d S)"iszNamehoraminuseg);
        
num_to_str(iposcharsmax(pos))
        
menu_additem(menutxtpos);
    }
    
    
menu_setprop(menuMPROP_NEXTNAME"Siguiente")
    
menu_setprop(menuMPROP_BACKNAME"Atras")
    
menu_setprop(menuMPROP_EXITNAME"Salir")
    
    
menu_display(indexmenu0);
}

public 
hand_top(indexmenuitem)
{
    if (
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED;
    }
    return 
PLUGIN_HANDLED;
}

public 
guardar(index)
{
    
adv_vault_set_start(g_vault);
    
adv_vault_set_field(g_vaultg_campo[campo_seg], g_segundos[index]);
    
adv_vault_set_end(g_vault0g_nombre[index]);
}

public 
cargar(index)
{
    if(!
adv_vault_get_prepare(g_vault_g_nombre[index]))
    {
        
g_segundos[index] = 0;
        return;
    }
    
g_segundos[index] = adv_vault_get_field(g_vaultg_campo[campo_seg]);


Gracias HK-416 Corazón
Corazón I dream of someday being able to have your near. Corazón
[Imagen: 76561199006140497.png]
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)