CMD:adminok(playerid, params[])
{
if(IsLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, \"Elérhetõ adminok:\");
for(new i; i<=PLAYERS; i++)
{
if(Info[admin] >= 1)
{
new str1[64];
if(Info[admin] == 1)
{
format(str1,64,\"Admin %s [1-es admin]\", PlrName(i));
SendClientMessage(playerid, COLOR_RED, str1);
}
if(Info[admin] == 2)
{
format(str1,64,\"Admin %s [2-es admin]\", PlrName(i));
SendClientMessage(playerid, COLOR_RED, str1);
}
if(Info[admin] == 3)
{
format(str1,64,\"Admin %s [3-as admin]\", PlrName(i));
SendClientMessage(playerid, COLOR_RED, str1);
}
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_RED, \"Nem vagy bejelentkezve!\");
}
return 1;
}
Itt ez a parancs. Annyi a baj hogy csak az elsõ adminig megy. Szóval nem listázza ki az összeset csak egyet. Mi a baj?
...
format(str1,64,\"Admin %s [3-as admin]\", PlrName(i));
SendClientMessage(playerid, COLOR_RED, str1);
}
return 1;
...
Innen vedd ki a \'return 1\'; kifejezést, mivel így ha kilistáz egyet, akkor megszakítja a ciklust, így nem listázza a többit.
Szerintem meg lehetséges az Unknown rész mivel még mindig nem nézik meg milyen értékekkel fut végig egy ciklus és lehet olyan cellára hivatkozik ami nincs is.
Talán ez segíthet.
for(new i; i<=PLAYERS; i++)
helyett:
for(new i; i < PLAYERS; i++)
És azt a return 1;-et vedd ki, amelyikrõl írtak.