[AJUDA] Admin
#1

to precisando de um comando de /admin para ver os admins online mas eu uso esse variavel ai nem sei criar -.-
Код:
if(PlayerData[playerid][AdminLevel] >= 1)
se nao for pedir muito colocar pra aprecer o level
Exemplo: Admins online: GhosT level:1 meus comandos de admin vao atй o 3

Quote:
se nao for pedir muito colocar pra aprecer o level
Exemplo: Admins online: GhosT level:1 meus comandos de admin vao atй o 3
nгo й o principal mas se quiser ajudar agradeзo desde j
б

Reply
#2

pawn Код:
CMD:admins(playerid,params[])
{
    new string[500],nome[25],bool:temon=false;
    for(new p; p < GetMaxPlayers(); ++p)
    {
    if(IsPlayerConnected(p))
    {
    if(PlayerData[playerid][AdminLevel] > 0)
    {
    GetPlayerName(p,nome,sizeof(nome));
    format(string,sizeof(string),"%s {FF0000}%s [ID:{FFFF00}%d{FF0000}] [Level:{FFFF00}%d{FF0000}]\n",string,nome,p,PlayerDados[p][pAdmin]);
    temon = true;
    }
    }
    }
    if(temon == false)
    {
    SendClientMessage(playerid,0xFF0000FF,"(SERVER): Nenhum Administrador Online!");
    }else{
    ShowPlayerDialog(playerid,9585,DIALOG_STYLE_MSGBOX,"Administradores",string,"Fechar","");
    }
    strdel(string,0,sizeof(string));
    strdel(nome,0,sizeof(nome));
    return 1;
}
Acabei de fazer para um amigo aproveite e ja postei aqui para voce rsrs
Reply
#3

Quote:
Originally Posted by ReDKiiL
Посмотреть сообщение
pawn Код:
CMD:admins(playerid,params[])
{
    static string[500],nome[25],bool:temon=false;
    for(new p; p < GetMaxPlayers(); ++p)
    {
    if(IsPlayerConnected(p))
    {
    if(PlayerData[playerid][AdminLevel] > 0)
    {
    GetPlayerName(p,nome,sizeof(nome));
    format(string,sizeof(string),"%s {FF0000}%s [ID:{FFFF00}%d{FF0000}] [Level:{FFFF00}%d{FF0000}]\n",string,nome,p,PlayerDados[p][pAdmin]);
    temon = true;
    }
    }
    }
    if(temon == false)
    {
    SendClientMessage(playerid,0xFF0000FF,"(SERVER): Nenhum Administrador Online!");
    }else{
    ShowPlayerDialog(playerid,9585,DIALOG_STYLE_MSGBOX,"Administradores",string,"Fechar","");
    }
    strdel(string,0,sizeof(string));
    strdel(nome,0,sizeof(nome));
    return 1;
}
Acabei de fazer para um amigo aproveite e ja postei aqui para voce rsrs
Seria bom orientar seu amigo a nгo fazer a indentaзгo dessa maneira.

Pelo que sei sobre variбveis estбticas, vocк atribuindo o valor false a temon na declaraзгo, caso o comando seja executado e seja setado para true, na prуxima vez, mesmo que nгo haja nenhum admin online, a variбvel terб o valor true...

Caso eu esteja errado por favor me corrijam, nгo estou muito acostumado a usar static entгo posso estar equivocado.


@TOPIC


Caso use strcmp:

pawn Код:
if(!strcmp(cmdtext, "/admins", true))
{
    new string[90];
    new name[24];
    SendClientMessage(playerid, -1, "Admins online");
    for(new i; i != GetMaxPlayers(); ++i)
    {
        if(IsPlayerConnected(i) && PlayerInfo[i][AdminLevel] > 0)
        {
            GetPlayerName(i, name, sizeof(name));
            format(string, sizeof(string), "Nome: %s [Nнvel %i]", name, PlayerInfo[i][AdminLevel]);
            SendClientMessage(playerid, -1, string);
        }
    }
    return 1;
}
Caso use zcmd:

pawn Код:
CMD:admins(playerid)
{
    new string[90];
    new name[24];
    SendClientMessage(playerid, -1, "Admins online");
    for(new i; i != GetMaxPlayers(); ++i)
    {
        if(IsPlayerConnected(i) && PlayerInfo[i][AdminLevel] > 0)
        {
            GetPlayerName(i, name, sizeof(name));
            format(string, sizeof(string), "Nome: %s [Nнvel %i]", name, PlayerInfo[i][AdminLevel]);
            SendClientMessage(playerid, -1, string);
        }
    }
    return 1;
}
Reply
#4

Obrigado aos 2 mais eu strcmp e vou usar o do Pedro_Miranda
Obrigado novamente

@Edit
editei um pouco o comando masi agora quando o outro adm entra aparece o nome emcima do outro
Exemplo: eu nao loguei ai meu amigo ta logado
ai aprece o nome dele e o nivel ,mas dai quando eu logo ai some o dele e aparece o meu oque sera que aconteceu
Код:
   		if(!strcmp(cmdtext, "/admins", true))
	{
    new string[230];
    new name[24];
    for(new i; i != GetMaxPlayers(); ++i)
    {
        if(IsPlayerConnected(i) && PlayerData[i][AdminLevel] > 0)
        {
            GetPlayerName(i, name, sizeof(name));
            format(string, sizeof(string), "Nome: %s [Nнvel %i]\n", name, PlayerData[i][AdminLevel]);
            ShowPlayerDialog(playerid,655,DIALOG_STYLE_MSGBOX,"Admins Online:",string,"Ok","");
        }
    }
    return 1;
	}
Reply
#5

Nгo sei usar static tambem nгo KKKKKKKKK

@teste

fiz um testei aqui deu fail, fica contando nao zera igual a new
nem sabia,apenas ouvi falar que static era melhor dai comeзei a usar rsrs
Reply
#6

Lol... @ Tarde identaзгo de vocкs ta horrнvel, lol.

pawn Код:
CMD:admins(playerid)
{
    new string[128],nome[MAX_PLAYER_NAME],admins;
    for(new i; i < MAX_PLAYERS; i ++)  // mais rбpido do que o getmaxplayers. ._.!
    {
        if(IsPlayerConnected(i) && PlayerInfo[i][AdminLevel] > 0)
        {
            admins++; // Apenas uma contagem... *.*
            GetPlayerName(i, nome, sizeof(nome));
            format(string, sizeof(string), "%s %s Nivel - %i\n",string, name, PlayerInfo[i][AdminLevel]);
        }
        if(admins == 0)
        {
           ShowPlayerDialog( playerid, 12345, DIALOG_STYLE_MSGBOX, " Nenhum Admin Online !", "0 Admins Online nest e momento !", "OK", "");
        }
        else return ShowPlayerDialog( playerid, 123456, DIALOG_STYLE_MSGBOX, " Admins Online", string, "OK", "");
    }
    return 1;
}
Reply
#7

Apenas errei no uso da static mais o pedro ja me falo e corrigi;
o resto iria funcionar normalmente eu acho '-'

leonardo seu codigo nao vai funcionar no dialog;
pois nao tem \n e voce estб usando MAX_PLAYERS e se o servidor usar apenas 100 slots? 400 de disperdicio :d prefiro GetMaxPlayers(); que pega quantos slots o servidor tem
Reply
#8

Filho, Verificar o code, Ele irб pegar os jogadores conectados. e alйm disso, o maxplayers й mais rбpido que o getmaxplayers.


@ sobre o \n, Tinha esquecido.
Reply
#9

podem me ajudar uso strcmp '-' meu comando alie em cima
Reply
#10

Quote:
Originally Posted by ReDKiiL
Посмотреть сообщение
Nгo sei usar static tambem nгo KKKKKKKKK

@teste

fiz um testei aqui deu fail, fica contando nao zera igual a new
nem sabia,apenas ouvi falar que static era melhor dai comeзei a usar rsrs
Eu atй sei usar, porйm uso mais new, fique mais atento, pois hб essa pequena diferenзa quanto аs locais, acho que globais funcionam de maneira igual.


@TOPIC

Tente usar este comando:

pawn Код:
if(!strcmp(cmdtext, "/admins", true))
{
    new string[60];
    new admins[300];
    new name[24];
    for(new i; i != GetMaxPlayers(); ++i)
    {
        if(IsPlayerConnected(i) && PlayerData[i][AdminLevel] > 0)
        {
            GetPlayerName(i, name, sizeof(name));
            format(string, sizeof(string), "Nome: %s [Nнvel %i]\n", name, PlayerData[i][AdminLevel]);
            strcat(admins, string);
            ShowPlayerDialog(playerid,655,DIALOG_STYLE_MSGBOX,"Admins Online:",admins,"Ok","");
        }
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)