[Ayuda]Problema niveles.
#1

Bueno primero que nada hola chicos, bien mi problema es que no me suben los niveles a la cuenta ni nada por el estilo, espero los minutos colocados para que se suba el nivel y no sucede nada quisiera saber si me podrнan ayudar a reparar este bug aquн dejo toda las lineas:
pawn Код:
new Nivel[MAX_PLAYERS];
forward PlayerLevel(playerid);

//comando /registro

dini_IntSet(archivo, "Nivel", 0);

//comando /login
Nivel[playerid] = dini_Int(archivo, "Nivel");
SetTimerEx("PlayerLevel",60000,0,"d",playerid);

//forma para subir de nivel
public PlayerLevel(playerid)
{
    new archivo[256], usuario[MAX_PLAYER_NAME];
    GetPlayerName(playerid, usuario, sizeof(usuario));
    format(archivo, sizeof(archivo), "Badmin/Usuarios/%s.ini", usuario);
    dini_IntSet(archivo, "Nivel", dini_Int(archivo, "Nivel")+1);
    GameTextForPlayer(playerid, "~w~Subiste de ~g~nivel!", 5000, 4);
    SendClientMessage(playerid, COLOR_GREEN, "ЎFelicitaciones!{FFFFFF}Se sumo {F6F600}1{FFFFFF} nivel a tu cuenta.");
    SetTimerEx("PlayerLevel",60000,0,"d",playerid);
    if(Nivel[playerid] == 10)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Utiliza /premios para retirar tu premio nivel 10!");
    }
    if(Nivel[playerid] == 50)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Utiliza /premios para retirar tu premio nivel 50!");
    }
    if(Nivel[playerid] == 100)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Utiliza /premios para retirar tu premio nivel 100!");
    }
    return 1;
}
Link de donde saque el sistema AQUI
Bueno chicos es problema es que ni me aparece el cartel de que subн de nivel ni tampoco me sube de nivel.Antes yo lo habнa aсadido al sistema de adminsitraccion "BADMIN" y tambiйn tenia un bug o sea no me cargaba los niveles pero me tenia que loguear con rcon y utilizar el /rcon reloadfs badmin y hay me andaba al la perfecciуn la subida de nivel pero ahora la pase al GM todo el sistema FS Badmin pero si reinicio el gm se me reinicia el server y no sube de nivel ni nada por el estilo, espero que me puedan ayudar, un saludo.
Reply
#2

їAlguien me puede ayuda?
Reply
#3

їCуmo que no se suben? їNo visualizas que el Score se te sube? їUsas la funciуn SetPlayerScore?
Reply
#4

Quote:
Originally Posted by Juance
Посмотреть сообщение
їCуmo que no se suben? їNo visualizas que el Score se te sube? їUsas la funciуn SetPlayerScore?
O sea pasan los minutos que puse para que te suba 1 de nivel y no me sube nada, antes cuando al script lo tenia en el FS me pasaba lo mismo y la ъnica soluciуn era utilizando el /rcon reloadfs fsadmin.
No entiendo a lo que te quieres referir
Reply
#5

Estoy viendo que "Nivel[playerid]" no estб implementado, por lo que el nivel de esa variable nunca subirнa.

pawn Код:
Nivel[playerid] +=1;
dini_IntSet(archivo,"Nivel",Nivel[playerid]);
En vez de activar nuevamente el timer en la funciуn, їpor quй no haces que el timer principal se repita cada 1 minuto?
Reply
#6

Quote:
Originally Posted by Juance
Посмотреть сообщение
Estoy viendo que "Nivel[playerid]" no estб implementado, por lo que el nivel de esa variable nunca subirнa.

pawn Код:
Nivel[playerid] +=1;
dini_IntSet(archivo,"Nivel",Nivel[playerid]);
En vez de activar nuevamente el timer en la funciуn, їpor quй no haces que el timer principal se repita cada 1 minuto?
porque no entiendo mucho el sistema timer y hacer poco comencй a utilizarlo y podes ver que soy muy nuevo en eso jajaja, pero me podrнas explicar como hacer eso?
Reply
#7

Te cuento.

La variable
pawn Код:
Nivel[playerid] +=1;
suma un nivel al usuario, y la funciуn
pawn Код:
dini_IntSet(archivo,"Nivel",Nivel[playerid]);
guarda la variable en tu archivo que has creado.

Te explico lo del timer, que igualmente tenes ejemplos acб

pawn Код:
SetTimerEx("NombreDeLaFuncion","Milisegundos","True/False","i",playerid);
En NombreDeLaFunciуn el nombre te lo dice todo, colocas el nombre de la funciуn como hiciste vos. En True/Flase es para indicar si ese Timer se repite o no. їQuй quiero decir? si colocas true el Timer va a repetirse cada los milisegundos que indicaste, si colocas false, el timer se ejecuta solo una vez. En los milisegundos colocas los milisegundos que quieras que se ejecute el timer. Podes usar un conversor de minutos a milisegundos. el "i" es para obtener un entero y el "playerid" es para indicar que el Timer debe tomar la id del usuario.
Reply
#8

ASi deje el Playerlevel por las dudas subo


PD:Gracias me anda a la perfeccion, pero el unico problema es que cargo 1 nivel y despues al minuto en vez de cargar 1 nivel cargo 2
Reply
#9

No entiendo a que te referнs.
Reply
#10

esto me pasa
http://i.imgur.com/MYsCpvJ.png
http://i.imgur.com/w7W3SJ3.png
http://i.imgur.com/M1hbswV.png
Reply


Forum Jump:


Users browsing this thread: