[AJUDA] Ganhar Level
#1

Alguem poderia me ajuda com esse codigo, eu queria fazer tipo assim em vez do player comprar o level, ele ganhar a cada uma hora, alguem me ajuda ?


Esse й o cidigo de comprar.
pawn Код:
if (strcmp(cmd, "/comprarnivel", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if (gPlayerLogged[playerid] != 0)
            {
                PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
                if(PlayerInfo[playerid][pLevel] >= 0)
                {
                    new nxtlevel = PlayerInfo[playerid][pLevel]+1;
                    new costlevel = nxtlevel*levelcost;
                    new expquantidade = nxtlevel*levelexp;
                    if(GetPlayerMoney(playerid) < costlevel)
                    {
                        format(gstring, 128, "   Vocк nгo tem: (R$%d) !",costlevel);
                        SendClientMessage(playerid, COLOR_GRAD1, gstring);
                        return 1;
                    }
                    else if (PlayerInfo[playerid][pExp] < expquantidade)
                    {
                        format(gstring, 128, "   Vocк precisa de %d pontos de respeito, Vocк tem: [%d] !",expquantidade,PlayerInfo[playerid][pExp]);
                        SendClientMessage(playerid, COLOR_GRAD1, gstring);
                        return 1;
                    }
                    else
                    {
                        format(gstring, sizeof(gstring), "~g~Comprou Nivel~n~~w~Agora seu Nivel e %d", nxtlevel);
                        PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
                        PlayerPlayMusic(playerid);
                        GivePlayerMoney(playerid, (-costlevel));
                        PlayerInfo[playerid][pLevel]++;
                        ScoreLevel(playerid);
                        PlayerInfo[playerid][pExp] = 0;
                        PlayerInfo[playerid][gPupgrade] = PlayerInfo[playerid][gPupgrade]+2;
                        GameTextForPlayer(playerid, gstring, 5000, 1);
                        format(gstring, 128, "   Vocк comprou o nivel %d por (R$%d) Digite /melhorar", nxtlevel, costlevel);
                        SendClientMessage(playerid, COLOR_GRAD1, gstring);
                        format(gstring, 128, "   Vocк tem %d pontos de melhora",PlayerInfo[playerid][gPupgrade]);
                        SendClientMessage(playerid, COLOR_GRAD2, gstring);
                    }
                }
                return 1;
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб logado !");
            }
        }
        return 1;
    }
Agradeзo desde ja *-*
Reply
#2

Isto deve resolver o seu problema .

Se voce quiser, delete seu comando de /comprarnivel jб que isso vai ser ativado a cada 1 hora

Coloque:

pawn Код:
//No OnGameModeInit:

SetTimer("ComprarNivel", 60000*60, true);




//No Final do GM:


forward ComprarNivel();
public ComprarNivel()
{
    for(new playerid,pagamento=GetMaxPlayers();playerid<pagamento;playerid++)
    {
        if(IsPlayerConnected(playerid))
        {
            if (gPlayerLogged[playerid] != 0)
            {
                PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
                if(PlayerInfo[playerid][pLevel] >= 0)
                {
                    new nxtlevel = PlayerInfo[playerid][pLevel]+1;
                    new costlevel = nxtlevel*levelcost;
                    new expquantidade = nxtlevel*levelexp;
                    if(GetPlayerMoney(playerid) < costlevel)
                    {
                        format(gstring, 128, "   Vocк nгo tem: (R$%d) !",costlevel);
                        SendClientMessage(playerid, COLOR_GRAD1, gstring);
                        return 1;
                    }
                    else if (PlayerInfo[playerid][pExp] < expquantidade)
                    {
                        format(gstring, 128, "   Vocк precisa de %d pontos de respeito, Vocк tem: [%d] !",expquantidade,PlayerInfo[playerid][pExp]);
                        SendClientMessage(playerid, COLOR_GRAD1, gstring);
                        return 1;
                    }
                    else
                    {
                        format(gstring, sizeof(gstring), "~g~Comprou Nivel~n~~w~Agora seu Nivel e %d", nxtlevel);
                        PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
                        PlayerPlayMusic(playerid);
                        GivePlayerMoney(playerid, (-costlevel));
                        PlayerInfo[playerid][pLevel]++;
                        ScoreLevel(playerid);
                        PlayerInfo[playerid][pExp] = 0;
                        PlayerInfo[playerid][gPupgrade] = PlayerInfo[playerid][gPupgrade]+2;
                        GameTextForPlayer(playerid, gstring, 5000, 1);
                        format(gstring, 128, "   Vocк comprou o nivel %d por (R$%d) Digite /melhorar", nxtlevel, costlevel);
                        SendClientMessage(playerid, COLOR_GRAD1, gstring);
                        format(gstring, 128, "   Vocк tem %d pontos de melhora",PlayerInfo[playerid][gPupgrade]);
                        SendClientMessage(playerid, COLOR_GRAD2, gstring);
                    }
                }
                return 1;
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб logado !");
            }
        }
    }
    return 1;
}
Espero ter ajudado
Reply
#3

Rjjj, muito obrigado cara, deu cetinho, obrigado mesmo.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)