[AJUDA]Tudo Vai Para o ID 0
#1

Tipo quanto tento da vip ou nivel para alguem q nao e id 0 , nao vai , vai tudo pro id 0


pawn Код:
if(strcmp(cmd, "/darnivel", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "/darnivel [ id ] [nivel]");
                return 1;
            }
            new playa;
            new nivel;
            new para1;
            GetPlayerName(para1, giveplayer, sizeof(giveplayer));
            playa = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            nivel = strval(tmp);
            if (PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(admtrabalhando[playerid] < 1)
                {
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                return 1;
                }
                if(IsPlayerConnected(playa))
                {
                    if(playa != INVALID_PLAYER_ID)
                    {
                        ConsumingMoney[playa] = 1;
                        PlayerInfo[playerid][pLevel] = nivel;
                        new year, month,day;
                        getdate(year, month, day);
                        new hour, minute;
                        gettime(hour,minute);
                        format(string, sizeof(string), "%s deu Nivel %d para %s ( %d/%d/%d - %d:%d )", pNome(playerid),nivel,pNome(playa),year, month, day,hour, minute);
                        ABroadCast(COLOR_YELLOW, string,1);


                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_LIGHTGREEN, "Voce nгo esta autorizado a usar este comando!");
            }
        }
        return 1;
    }
    if(strcmp(cmd, "/darvip", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "/darvip [ id ] [Nivel Do Vip]");
                return 1;
            }
            new playa;
            new quantidade;
            new para1;
            GetPlayerName(para1, giveplayer, sizeof(giveplayer));
            playa = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            quantidade = strval(tmp);
            if (PlayerInfo[playerid][pAdmin] >= 4)
            {
                if(admtrabalhando[playerid] < 1)
                {
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                return 1;
                }
                if(IsPlayerConnected(playa))
                {
                    if(playa != INVALID_PLAYER_ID)
                    {
                        ConsumingMoney[playa] = 1;
                        PlayerInfo[giveplayerid][pVIP] = quantidade;
                        new year, month,day;
                        getdate(year, month, day);
                        new hour, minute;
                        gettime(hour,minute);
                        format(string, sizeof(string), "%s deu VIP %d para %s ( %d/%d/%d - %d:%d )", pNome(playerid),quantidade,pNome(playa),year, month, day,hour, minute);
                        ABroadCast(COLOR_YELLOW, string,1);
                        SaveVip();


                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_LIGHTGREEN, "Voce nгo esta autorizado a usar este comando!");
            }
        }
        return 1;
    }
Reply
#2

No comando que seta vc tem que por 'playa' que й o ReturnUser... desse jeito:

pawn Код:
if(strcmp(cmd, "/darnivel", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "/darnivel [ id ] [nivel]");
                return 1;
            }
            new playa;
            new nivel;
            new para1;
            GetPlayerName(para1, giveplayer, sizeof(giveplayer));
            playa = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            nivel = strval(tmp);
            if (PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(admtrabalhando[playerid] < 1)
                {
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                return 1;
                }
                if(IsPlayerConnected(playa))
                {
                    if(playa != INVALID_PLAYER_ID)
                    {
                        ConsumingMoney[playa] = 1;
                        PlayerInfo[playa][pLevel] = nivel;//aqui mudei de playerid pra playa.
                        new year, month,day;
                        getdate(year, month, day);
                        new hour, minute;
                        gettime(hour,minute);
                        format(string, sizeof(string), "%s deu Nivel %d para %s ( %d/%d/%d - %d:%d )", pNome(playerid),nivel,pNome(playa),year, month, day,hour, minute);
                        ABroadCast(COLOR_YELLOW, string,1);


                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_LIGHTGREEN, "Voce nгo esta autorizado a usar este comando!");
            }
        }
Reply
#3

https://sampforum.blast.hk/showthread.php?tid=282016
fiz isso especialmente pra ocasiхes assim,
seu erro foi
pawn Код:
PlayerInfo[playerid][pLevel] = nivel; //<< playerid = vocк...
//como o pharrel disse, precisas usar o 'playa' que criou para definir outro player...
PlayerInfo[playa][pLevel] = nivel;
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)