[AJUDA]: Setlevel.
#1

Eaн pessoal.
To com problema no /setlevel [id] [level]. O problema й que quando digito o comando, aparece que eu setei o player como level 0, sendo que setei ele como level 5.

Cуdigo:
pawn Код:
if(strcmp(cmd, "/setlevel", true) == 0)
    {
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp) && PlayerInfo[playerid][pAdmin] == 5)
        {
            SendClientMessage(playerid, -1, "Uso correto: /setadmin [id do player] [level]");
            return 1;
        }
        new lvl;
        if(!IsPlayerConnected(id)) return SendClientMessage(playerid, vermelho, "ID INVБLIDO OU OFFLINE");
        if(lvl < 0 || lvl > 5) return SendClientMessage(playerid, vermelho, "O level de admin nгo pode ser menor que 0 ou maior que 5");
        PlayerInfo[id][pAdmin] = lvl;
        format(string,sizeof(string), "AdmCMD: Vocк setou o level de Admin de %s para %d!", Name(id), lvl);
        SCM(playerid, COLOR_ADM, string);
        format(string, sizeof(string), "O admin: %s setou seu level de Admin para: %d!", Name(playerid), lvl);
        SendClientMessage(id, COLOR_ADM, string);
        return 1;
     }
Reply
#2

Tente:
pawn Код:
if(strcmp(cmd, "/setlevel", true) == 0)
    {
        new lvl;
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp) && PlayerInfo[playerid][pAdmin] == 5)
        {
            SendClientMessage(playerid, -1, "Uso correto: /setadmin [id do player] [level]");
            return 1;
        }
        id = strval(tmp);
        if(!strlen(tmp) && PlayerInfo[playerid][pAdmin] == 5)
        {
            SendClientMessage(playerid, -1, "Uso correto: /setadmin [id do player] [level]");
            return 1;
        }
        tmp = strtok(cmdtext, idx);
        if(!strlen(tmp) && PlayerInfo[playerid][pAdmin] == 5)
        {
            SendClientMessage(playerid, -1, "Uso correto: /setadmin [id do player] [level]");
            return 1;
        }
        lvl = strval(tmp);
        if(IsPlayerConnected(id))
        {
            if(lvl < 0 || lvl > 5)
            {
                SendClientMessage(playerid, vermelho, "O level de admin nгo pode ser menor que 0 ou maior que 5");
                return 1;
            }
            PlayerInfo[id][pAdmin] = lvl;
            format(string,sizeof(string), "AdmCMD: Vocк setou o level de Admin de %s para %d", Name(id), lvl);
            SCM(playerid, COLOR_ADM, string);
            format(string, sizeof(string), "AdmCMD: O Admin %s setou seu level de Admin para: %d", Name(playerid), lvl);
            SendClientMessage(id, COLOR_ADM, string);
        }
        else
        {
            SCM(playerid, COLOR_ADM, "O ID Digitado estб offline!");
        }
        return 1;
    }
Reply
#3

@Ween

Deu certo, o problema й que ao digitar o comando "/setlevel", nгo aparece a menssagem "Uso correto..." aparece: Vocк setou .. como level: 0!
Reply
#4

Vocк esqueceu de definir as variveis, id & lvl, ex:

pawn Код:
tmp = strtok(cmdtext, idx);
id = strval(tmp);
e assim por diante.

de nada
Reply
#5

pawn Код:
tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, color, "Uso correto ..");
                    return 1;
tente..
Reply
#6

Ou Tente;
pawn Код:
if(!strcmp(cmd,"/setlevel", true))
    {
        new aname[MAX_PLAYER_NAME];
        GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
        if(PlayerInfo[playerid][pAdmin] == 5)
        {
            new plid, leveladm;
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Digite: /setadmin [id] [Level]");
                return 1;
            }
            plid = strval(tmp);
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Digite: /setadmin [id] [Level]");
                return 1;
            }
            leveladm = strval(tmp);
            if(leveladm>=6)
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Niveis permitidos: 0 a 5.");
                return 1;
            }
            if(IsPlayerConnected(plid))
            {
                if(leveladm>=1)
                {
                    pAdmin[plid] = leveladm;
                    format(string, sizeof(string), "(INFO) Vocк foi promovido a Admin Level %d por : %s!", leveladm,aname);
                    SendClientMessage(plid,-1, string);
                    if(leveladm>1)
                    {
                    }
                }
                if(leveladm == 0)
                {
                    pAdmin[plid] = 0;
                    format(string, sizeof(string), "(INFO) %s , retirou seu admin!",aname);
                    SendClientMessage(plid,-1, string);
                    if(IsPlayerAttachedObjectSlotUsed(playerid,1)) RemovePlayerAttachedObject(playerid,1);
                }
            }
            else
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Jogador nгo conectado.");
            }
        }
        else
        {
            SendClientMessage(playerid, Vermelho, "(INFO) Vocк nгo й um Administrador Level 5!.");
        }
        return 1;
    }
Reply
#7

Resolvido! Vlw pessoal
Reply
#8

Quote:
Originally Posted by [LF]PlaYer
Посмотреть сообщение
Ou Tente;
pawn Код:
if(!strcmp(cmd,"/setlevel", true))
    {
        new aname[MAX_PLAYER_NAME];
        GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
        if(PlayerInfo[playerid][pAdmin] == 5)
        {
            new plid, leveladm;
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Digite: /setadmin [id] [Level]");
                return 1;
            }
            plid = strval(tmp);
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Digite: /setadmin [id] [Level]");
                return 1;
            }
            leveladm = strval(tmp);
            if(leveladm>=6)
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Niveis permitidos: 0 a 5.");
                return 1;
            }
            if(IsPlayerConnected(plid))
            {
                if(leveladm>=1)
                {
                    pAdmin[plid] = leveladm;
                    dini_IntSet(file, "LevelAdm",leveladm);
                    format(string, sizeof(string), "(INFO) Vocк foi promovido a Admin Level %d por : %s!", leveladm,aname);
                    SendClientMessage(plid,-1, string);
                    if(leveladm>1)
                    {
                    }
                }
                if(leveladm == 0)
                {
                    pAdmin[plid] = 0;
                    dini_IntSet(file, "LevelAdm",0);
                    format(string, sizeof(string), "(INFO) %s , retirou seu admin!",aname);
                    SendClientMessage(plid,-1, string);
                    if(IsPlayerAttachedObjectSlotUsed(playerid,1)) RemovePlayerAttachedObject(playerid,1);
                }
            }
            else
            {
                SendClientMessage(playerid, Vermelho, "(INFO) Jogador nгo conectado.");
            }
        }
        else
        {
            SendClientMessage(playerid, Vermelho, "(INFO) Vocк nгo й um Administrador Level 5!.");
        }
        return 1;
    }
desculpe a incoviniкncia, mais como tu sabe que ele usa a variavel file, e a variavel que ele usa pra setar na conta й LevelAdmin O.o ?
Reply
#9

eu esqueci de apagar, .-. errar й humano ;*'
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)