[DUV] Up Level
#1

Seguinte, tenho essa funзгo que dб o level/exp para o player no tempo marcado(Com base em um relogio de UP), entгo, ultimamente estб acontecendo o seguinte:

Tem hora que dб UP para uns, tem hora que ao invйs de dar UP com 6 de exp, a pessao fica com mais de 6 e nгo upa e por ae vai. Aqui ta o CODE da funзгo:

pawn Код:
public AumentarLevel(playerid)
{
    for(new i=0; i <= MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            Experiencia[i] ++;
            GameTextForPlayer(playerid, "~w~UP", 2000, 6);
        if(pap_CarregarInt(playerid, "Experiencia") >= 6)
        {
            Level[i]++;
            new str[256];
            format(str,sizeof(str),"| Level UP! | Parabйns vocк ganhou +1 level, somando um total de %d level's.",Level[playerid]);
            SendClientMessage(i,0xFF0000AA,str);
            Experiencia[i] = pap_SalvarInt(i, "Experiencia", 0);
        }
        }
    }
    return 1;
}
Jб tentei quase de tudo, e continua bugado. . .

Vlw ae
Reply
#2

isso й puxado por um timer para todos nй entгo para que definir com o I coloca playerid mesmo nгo precisa mandar executar isto para todos pois se nгo estiver com settimerex ele ira puxar para todos online.
tenta
pawn Код:
public AumentarLevel(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        Experiencia[playerid] ++;
        GameTextForPlayer(playerid, "~w~UP", 2000, 6);
        if(pap_CarregarInt(playerid, "Experiencia") == 6)
        {
            Level[playerid]++;
            new str[256];
            format(str,sizeof(str),"| Level UP! | Parabйns vocк ganhou +1 level, somando um total de %d level's.",Level[playerid]);
            SendClientMessage(i,0xFF0000AA,str);
            Experiencia[playerid] = pap_SalvarInt(playerid, "Experiencia", 0);
        }
    }
    return 1;
}
Reply
#3

Ou eu nao sei qoue aconteceu aki no meu pq quando sai do sv normal salva os levels e as exps so que quando eu reinicio o sv ai fica tudo 0 alguem poderia me ajuda?
Reply
#4

Quando Da GMX certo ? seu sistema de salvamento deve estar alojado em onplayerdisconnect entгo salvara so se o player sair por vontade prуpria ou kick, crie um SetTimer para fazer o salvamento.
Reply
#5

Vlw Tiago Vou testar aqui, nem tinha pensado nessa do TImer, й que tipo, nгo й bem um timer, tem orelogio de UP, e ele estб programado para quando o relogio tiver corrido 9:59 (sei seja, estiver em 1 segundo) ele chamar a funзгo, como o relogio й igual para todos, deve dar certo assim, vlw

------------------EDIT

Deixei ligado lб com um manolo testando, ele й o ID 0, ele upa certinho, jб eu nгo upava :S
Reply
#6

LOl ta com BO seu GM, ta ceto o cуd ta chamando tudo igual. tenta criar uma nova conta e ver se vai dar bug denovo pq as vezes pode ser isto, as vezes crio coisa pro meu GM tenho q reseta tudo as contas para funcionar denovo
Reply
#7

Й bem nessas, algumas contas buga outras nгo acho que sгo as contas '-'
Reply
#8

Tipo, a minha conta nгo funcionou, eu era o ID 1. Ai quando loguei agora pouco, peeguei o ID 0, e upei :S

Code que chama a funзгo:

pawn Код:
public ContagemUP(playerid)
{
    if(segundos > 0) { segundos--; }
    if(segundos == 0 && minutos >= 1) { segundos = 59; minutos--;}
    if(minutos == 0 && segundos == 0) { segundos = 59; minutos = 9; AumentarLevel(playerid); }
    format(stringup, sizeof(stringup), "UP:%02d:%02d", minutos, segundos);
    TextDrawSetString(TextLevelUP, stringup);
    return true;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)