SA-MP Forums Archive
[AJUDA] Ganhar Level - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA] Ganhar Level (/showthread.php?tid=235420)



[AJUDA] Ganhar Level - shutt_down - 05.03.2011

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 *-*


Re: [AJUDA] Ganhar Level - rjjj - 05.03.2011

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


Re: [AJUDA] Ganhar Level - shutt_down - 05.03.2011

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