Ayuda con este bucle. -
LuisGraph - 11.01.2012
Bueno amigos, ahora tengo este problemita.
He creado un bucle para un comando ґ/onlineґ para ver los players conectados de un grupo/facciуn.
Aquн les dejo el code.
pawn Код:
if(!strcmp(cmdtext, "/online", true))
{
for(new i = 0; i < GetMaxPlayers(); i++)
{
if(Faccion[playerid][Trinitario] == 1)
{
new TriniOn[150];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
format(TriniOn, sizeof(TriniOn), "%s, Conectado.", name);
SendClientMessage(playerid, -1, name);
}
else if(Faccion[playerid][Civil] == 1)
{
new CivilOn[150];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
format(CivilOn, sizeof(CivilOn), "%s, Conectado.", name);
SendClientMessage(playerid, -1, name);
}
}
return 1;
}
Quiero que salga mas o menos, asн: X Jugador, Conectado.
Pero miren quй pasa.
Respuesta: Ayuda con este bucle. -
iDarkRain - 11.01.2012
Asн:
pawn Код:
if(!strcmp(cmdtext, "/online", true))
{
for(new i = 0; i < GetMaxPlayers(); i++)
{
if(Faccion[playerid][Trinitario] == 1)
{
new TriniOn[150];
new name[MAX_PLAYER_NAME];
GetPlayerName(i, name, sizeof(name));
format(TriniOn, sizeof(TriniOn), "%s, Conectado.", name);
SendClientMessage(playerid, -1, TriniOn);
}
else if(Faccion[playerid][Civil] == 1)
{
new CivilOn[150];
new name[MAX_PLAYER_NAME];
GetPlayerName(i, name, sizeof(name));
format(CivilOn, sizeof(CivilOn), "%s, Conectado.", name);
SendClientMessage(playerid, -1, CivilOn);
}
}
return 1;
}
Re: Ayuda con este bucle. -
LuisGraph - 11.01.2012
Ahora surge esto:
Respuesta: Ayuda con este bucle. -
M1tux3r - 11.01.2012
No sй muy bien lo que necesitas, pero prueba asн:
pawn Код:
if(!strcmp(cmdtext, "/online", true))
{
for(new i = 0; i < GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i) || IsPlayerNPC(i)) continue;
if(Faccion[playerid][Trinitario] == 1)
{
if(Faccion[i][Trinitario] != Faccion[playerid][Trinitario]) continue;
new TriniOn[70], name[MAX_PLAYER_NAME];
GetPlayerName(i, name, sizeof(name));
format(TriniOn, sizeof(TriniOn), "Jugador %s, Conectado.", name);
SendClientMessage(playerid, -1, name);
}
else if(Faccion[playerid][Civil] == 1)
{
if(Faccion[i][Civil] != Faccion[playerid][Civil]) continue;
new CivilOn[70], name[MAX_PLAYER_NAME];
GetPlayerName(i, name, sizeof(name));
format(CivilOn, sizeof(CivilOn), "Jugador %s, Conectado.", name);
SendClientMessage(playerid, -1, name);
}
}
return 1;
}
Re: Ayuda con este bucle. -
LuisGraph - 11.01.2012
Igual xD
Respuesta: Ayuda con este bucle. -
M1tux3r - 11.01.2012
Lo acabo de testear y a mi me funciona perfectamente. їSeguro quй recompilaste despuйs de aсadir esto?
Re: Ayuda con este bucle. -
LuisGraph - 11.01.2012
Jeje ya solъcionado, el problema era que un Loop no puede ser retornado ya que va a exбminar todos los players.