Pasar /Admins a Dialog
#1

miren yo quiero pasar este comando a dialog

Quote:

if (strcmp("/admins", cmd, true) == 0)
{
new cantidadadmins;
for(new i=0; i < MAX_PLAYERS; i++)
{
if (EsAdmin[i] == 1) cantidadadmins++;
}
if (cantidadadmins == 0) return SendClientMessage(playerid, COLOR_ROJO, "No hay administradores conectados.");
SendClientMessage(playerid, COLOR_VERDE_CLARO, "Administradores conectados:");
for(new i=0; i < MAX_PLAYERS; i++)
{
if (EsAdmin[i] == 1)
{
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(i, nombre, MAX_PLAYER_NAME);
format(string, sizeof(string), "%s - Nivel %d", nombre, NivelAdmin);
SendClientMessage(playerid, COLOR_VERDE_CLARO, string);
}
}
return 1;
}

Gracias de antemano
Reply
#2

Pasalo.... Nah broma esto va en pedidos pero bueh:

pawn Код:
if (strcmp("/admins", cmd, true) == 0)
    {
        new cantidadadmins, titulo[128], admins[512];
        for(new i=0; i < MAX_PLAYERS; i++)
        {
            if (EsAdmin[i] >= 1 || IsPlayerAdmin(i)) cantidadadmins++;
        }
        if (cantidadadmins == 0) return SendClientMessage(playerid, COLOR_ROJO, "No hay administradores conectados.");
        format(titulo, 128, "Admins Conectados (%d)", cantidadadmins);
        for(new i=0; i < MAX_PLAYERS; i++)
        {
            if(IsPlayerConnected(i))
            {
                if(EsAdmin[i] >= 1)
                {
                    new string[256];
                    format(string, sizeof(string), "%s - Nivel %d\n", Nombre(i), NivelAdmin);
                    strcat(admins, string);
                }
                ShowPlayerDialog(playerid, DIALOGO_NULL, DIALOG_STYLE_MSGBOX, titulo, admins, "Aceptar", "" );
            }
        }
        return 1;
    }
Si te falta el stock:
Код:
stock Nombre(playerid)
{
	new name[MAX_PLAYER_NAME];
	GetPlayerName(playerid, name, sizeof(name));
	return name;
}
Reply
#3

Quote:

C:\Users\Administrador\Desktop\Server SA-MP\filterscripts\Admin.pwn(23 : error 012: invalid function call, not a valid address
C:\Users\Administrador\Desktop\Server SA-MP\filterscripts\Admin.pwn(23 : warning 215: expression has no effect
C:\Users\Administrador\Desktop\Server SA-MP\filterscripts\Admin.pwn(23 : error 001: expected token: ";", but found ")"
C:\Users\Administrador\Desktop\Server SA-MP\filterscripts\Admin.pwn(23 : error 029: invalid expression, assumed zero
C:\Users\Administrador\Desktop\Server SA-MP\filterscripts\Admin.pwn(23 : fatal error 107: too many error messages on one line

Me saltan estos errores

Edit: ya lo solucione pero me sale este warning

Quote:

C:\Users\Administrador\Desktop\Server SA-MP\filterscripts\Admin.pwn(23 : warning 213: tag mismatch

Reply
#4

ya lo solucione pero ahora dentro del juego sale asi

Quote:

Admins Online:
- Nivel 10

ayuda!!
Reply
#5

Quote:
Originally Posted by Seba5343
Посмотреть сообщение
ya lo solucione pero ahora dentro del juego sale asi



ayuda!!
Doble post!
Entonces no lo has solucionado decime la linea del error ya que pudiste manipular para que pawno no largue error pero no te va a funcionar, es por distintas variables, pasame la linea del error.
Reply
#6

aca toma
Quote:

if (strcmp("/admins", cmd, true) == 0)
{
new cantidadadmins, titulo[128], admins[512];
for(new i=0; i < MAX_PLAYERS; i++)
{
if (Informacion[i][Admin] >= 1 || IsPlayerAdmin(i)) cantidadadmins++;
}
if (cantidadadmins == 0) return SendClientMessage(playerid, COLOR_ROJO, "No hay administradores conectados.");
format(titulo, 128, "Admins Conectados (%d)", cantidadadmins);
for(new i=0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Informacion[i][Admin] >= 1)
{
new nombre[MAX_PLAYER_NAME], string[256];
format(string, sizeof(string), "%s - Nivel %d\n", nombre[i], Informacion[i][Admin]); // aca
strcat(admins, string);
}
ShowPlayerDialog(playerid, 5341, DIALOG_STYLE_MSGBOX, titulo, admins, "Aceptar", "" );
}
}
return 1;
}

lo que queria desier era que solucione ese error...
Reply
#7

Y lo que yo te dije es que podes manipular pawno para que no te largue error, pero siga sin funcionar IG.
pawn Код:
if (strcmp("/admins", cmd, true) == 0)
{
new cantidadadmins, titulo[128], admins[512];
for(new i=0; i < MAX_PLAYERS; i++)
{
if (Informacion[i][Admin] >= 1 || IsPlayerAdmin(i)) cantidadadmins++;
}
if (cantidadadmins == 0) return SendClientMessage(playerid, COLOR_ROJO, "No hay administradores conectados.");
format(titulo, 128, "Admins Conectados (%d)", cantidadadmins);
for(new i=0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Informacion[i][Admin] >= 1)
{
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(i,nombre,sizeof(nombre));
format(string, sizeof(string), "%s - Nivel %d\n", nombre, Informacion[i][Admin]); // aca
strcat(admins, string);
}
ShowPlayerDialog(playerid, 5341, DIALOG_STYLE_MSGBOX, titulo, admins, "Aceptar", "" );
}
}
return 1;
}
No salia el nombre porque nunca lo obtenias.
un array no se usa con [] solo se define.
Reply
#8

Muchas Grcias!!
Tema Cerrado
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)