[Ajuda] Admin Nгo Salva
#1

Meu Problema: Vou Na Pasta ScriptFiles/Players/MeuNome.Cfg
Boto Adm 1342, Entro No Servidor E Vem O Aviso : Vocк Nгo Й Mais Adm Do (Nome Do Servidor)
E La No ' MeuNome.Cfg ' O Nнvel Cai Pra [0] 'Nнvel De Admi
n'
Alguem Ajuda ?

pawn Код:
if(strcmp(cmd, "/daradm", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] < 1342)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo tem autorizaзгo para usar esse comando.");
                return 1;
            }
            AdmsVaga();
            if(VagaSobrando == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Nгo hб mais vagas na lista use /limparadm primeiro.");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradm [id] [Nivel]");
                return 1;
            }
            new para1;
            new level;
            para1 = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradm [id] [Nivel]");
                return 1;
            }
            level = strval(tmp);
            if(level == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /limparadmin para limpar uma vaga");
                return 1;
            }
            GetPlayerName(para1, giveplayer, sizeof(giveplayer));
            GetPlayerName(playerid, sendername, sizeof(sendername));
            if(IsPlayerConnected(para1))
            {
                if(para1 != INVALID_PLAYER_ID)
                {
                    if(PlayerInfo[para1][pAdmin] >= 1342)
                    {
                        SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode promover um Admin Dono/Scripter!");
                        format(string, sizeof(string), "O admin %s tentou te promover a nivel %d",sendername ,level);
                        SendClientMessage(para1, COLOR_AZULBB, string);
                        return 1;
                    }
                    format(string, sizeof(string), "   Vocк foi promovido para level  %d de Admin - Por %s", level, sendername);
                    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
                    format(string, sizeof(string), "   Vocк promoveu o(a) %s Para o level %d de Admin.", giveplayer,level);
                    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                    getdate(year, month, day);
                    gettime(hour,minute,second);
                    format(string, sizeof(string), "%s deu admin nivel %d para %s [%d/%d/%d] бs [%d:%d:%d].", sendername, level, giveplayer, day,
                    month, year, hour, minute, second);
                    PAdminsLog(string);
                    for(new i = 0; i < sizeof(AdmInfo); i++)
                    {
                        if(PlayerInfo[para1][pAdmin] > 0)
                        {
                            PlayerInfo[para1][pAdmin] = level;
                            break;
                        }
                        else if(AdmInfo[i][AdminVaga] == 0)
                        {
                            PlayerInfo[para1][pAdmin] = level;
                            AdmInfo[i][gMembro] = giveplayer;
                            AdmInfo[i][AdminVaga] = 1;
                            SaveAdm();
                            break;
                        }
                    }
                }
            }
        }
        return 1;
    }
pawn Код:
/*if(strcmp(cmd, "/daradm", true) ==0 )
    {
        GetPlayerName(playerid, sendername, 256);
        if(strcmp(sendername,"Nome De Quem Pode Dar Admin",true)==0 || strcmp(sendername,"Nome De Quem Pode Dar Admin",true)==0 || strcmp(sendername,"Nome De Quem Pode Dar Admin",true)==0)
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradm [ id ] [Level 0 б 1341]");
                return 1;
            }
            new para1;
            new level;
            para1 = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            level = strval(tmp);
            GetPlayerName(playerid, sendername, 256);
            {
                if(IsPlayerConnected(para1))
                {
                    if(para1 != INVALID_PLAYER_ID)
                    {
                        GetPlayerName(para1, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        PlayerInfo[para1][pAdmin] = level;
                        printf("ADMIN CMD: %s has promoted %s to a level %d admin.", sendername, giveplayer, level);
                        format(string, sizeof(string), "   Voce foi promovido para level  %d de Admin - Por %s", level, sendername);
                        SendClientMessage(para1, COLOR_LIGHTBLUE, string);
                        format(string, sizeof(string), "   Voce promoveu o(a) %s Para o level %d de Admin.", giveplayer,level);
                        SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                        format(string, sizeof(string), "%s Promoveu %s a adm level %d ",sendername,giveplayer,level);
                    }
                }
                SendClientMessage(playerid, COLOR_LIGHTGREEN, "[BUD]: Voce nгo esta autorizado a usar este comando!");
            }
        }
        return 1;
    }*/
Reply
#2

Alguns GMs do tipo RP/RPG vкm com um sistema que verifica se o nome do administrador que entra no servidor estб em uma lista de nomes permitidos, uma espйcie de anti-hack .


Procure por AdminsNick e tente achar uma lista do tipo, caso nгo haja, poste aqui no tуpico as publics OnPlayerConnect, OnPlayerRequestClass, OnPlayerSpawn, e, caso seu GM seja baseado no The GodFather, a OnPlayerLogin .



Vejo que vocк utiliza um sistema de vagas de administrador, sendo assim, poste os cуdigos referentes a ele tambйm.



Espero ter ajudado .
Reply
#3

Ele deve usar GF, porque o nнvel mбximo de admin й 1342 e tenho esse mesmo problema no meu servidor.

Soluзгo mais fбcil: chamar alguйm para te dar admin.

#Edit: procura um comando ' /password ' e veja a senha, depois de admin para vocк.
Reply
#4

Mano so editar seu admin la e ir nas scriptfiles -> Configs -> Admins, e colocar teu nick la pra ficar salvo.
Reply
#5

Leo_Lost, Leia O Que Eu Falei Laaaaa Em Cima (:

Nгo tem como eu chama alguem pra se adm , pq eu sou o unico X.X

muita coisa rjjjj xD
Reply
#6

Mano edita seu admin la ne ScriptFiles/Players/MeuNome.Cfg e vai nas scriptfiles -> Configs -> Admins e coloca teu nick la na primeira vaga do bloco de notas e entra no server pra ver.
Reply
#7

Quote:
Originally Posted by shadauer
Посмотреть сообщение
muita coisa rjjjj xD
Bem, entгo vocк pode tentar procurar por "expressхes chave" nos cуdigos que citei, como estas abaixo que representam modificaзхes no valor que uma variбvel de administrador armazena :


[pAdmin] = 0;

[pAdmin]=0;

[pAdmin]= 0;

[pAdmin] =0;


Pesquisando linhas desse tipo no seu GM, vocк serб capaz de encontrar muitos cуdigos com a funзгo de retirar o nнvel de adminstrador do jogador .



Entretanto o problema pode estar relacionado a salvamento de dados, etc, por isso o ideal seria uma anбlise de cуdigos como os mencionados por min.



Espero ter ajudado .
Reply
#8

ta e tipo , no comando /daradm


[pAdmin] =1342

como faz para deixar player usar esse cmd ?
Reply
#9

Tenta assim

pawn Код:
if(strcmp(cmd, "/daradm", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            AdmsVaga();
            if(VagaSobrando == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Nгo hб mais vagas na lista use /limparadm primeiro.");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradm [id] [Nivel]");
                return 1;
            }
            new para1;
            new level;
            para1 = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradm [id] [Nivel]");
                return 1;
            }
            level = strval(tmp);
            if(level == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /limparadmin para limpar uma vaga");
                return 1;
            }
            GetPlayerName(para1, giveplayer, sizeof(giveplayer));
            GetPlayerName(playerid, sendername, sizeof(sendername));
            if(IsPlayerConnected(para1))
            {
                if(para1 != INVALID_PLAYER_ID)
                {
                    if(PlayerInfo[para1][pAdmin] >= 1342)
                    {
                        SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode promover um Admin Dono/Scripter!");
                        format(string, sizeof(string), "O admin %s tentou te promover a nivel %d",sendername ,level);
                        SendClientMessage(para1, COLOR_AZULBB, string);
                        return 1;
                    }
                    format(string, sizeof(string), "   Vocк foi promovido para level  %d de Admin - Por %s", level, sendername);
                    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
                    format(string, sizeof(string), "   Vocк promoveu o(a) %s Para o level %d de Admin.", giveplayer,level);
                    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                    getdate(year, month, day);
                    gettime(hour,minute,second);
                    format(string, sizeof(string), "%s deu admin nivel %d para %s [%d/%d/%d] бs [%d:%d:%d].", sendername, level, giveplayer, day,
                    month, year, hour, minute, second);
                    PAdminsLog(string);
                    for(new i = 0; i < sizeof(AdmInfo); i++)
                    {
                        if(PlayerInfo[para1][pAdmin] > 0)
                        {
                            PlayerInfo[para1][pAdmin] = 1342;
                            SaveAdm();
                            break;
                        }
                        else if(AdmInfo[i][AdminVaga] == 0)
                        {
                            PlayerInfo[para1][pAdmin] = 1342;
                            AdmInfo[i][gMembro] = giveplayer;
                            AdmInfo[i][AdminVaga] = 1;
                            SaveAdm();
                            break;
                        }
                    }
                }
            }
        }
        return 1;
    }
}
Reply
#10

cйrto , tentarei 12:00 na hora do almoзo , (to trampo agora
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)