CMD:adminok(playerid, params[]){new nev; for(new i=0; i<MAX_PLAYERS; i++) {GetPlayerName(i, nev, sizeof(nev)); if(PlayerInfo[Level] < 1) { format(str, 128, \"%s | Szint: %d\"nev,PlayerInfo[Level] ); ShowPlayerDialog(playerid,20,DIALOG_STYLE_LIST,\"Adminok\",str,\"OK\",\"Mégse\"); } } return 1;}
CMD:adminok(playerid, params[]){new nev;for(new i=0; i < MAX_PLAYERS; i++){GetPlayerName(i, nev, sizeof(nev));if(PlayerInfo[Level] > 0){ format(str, 128, \"%s | Szint: %d\"nev, PlayerInfo[Level] ); ShowPlayerDialog(playerid,20,DIALOG_STYLE_LIST,\"Adminok\",str,\"OK\",\"Mégse\");}}return 1;}
#include < a_samp >#include < zcmd >#include < foreach > CMD:admins( playerid, params[] ){ foreach(Player, i) { if( PlayerInfo[ i ][ Level ] > 0 ) { new szFormat[ 60 + 1 ], szName[ MAX_PLAYER_NAME + 1 ]; GetPlayerName( i, szName, MAX_PLAYER_NAME ); format( szFormat, sizeof( szFormat ), \"%s(%d) -> Szint: %d\", szName, PlayerInfo[ i ][ Level ] ); SendClientMessage( playerid, -1, szFormat ); } } return 1;}
CMD:adminok(playerid, params[]){new str[10*(MAX_PLAYER_NAME+14)+1] = \"Nincsenek adminok\"; //10 darab játékos * (maximum név + \" | Szint: \" + maximum négyjegyû szám) + \"\\n\"for(new i=0; i < MAX_PLAYERS; i++){if(PlayerInfo[Level] < 0){ new nev[MAX_PLAYER_NAME]; GetPlayerName(i, nev, sizeof(nev)); format(str, sizeof str, \"%s | Szint: %d\\n\",nev, PlayerInfo[Level] );}}ShowPlayerDialog(playerid,20,DIALOG_STYLE_LIST,\"Adminok\",str,\"OK\",\"Mégse\");return 1;}
Tulajdonképpen egyik megoldás sem jó, mert az utóbbi nem dialogban írja, a másik kettõ pedig mindig csak egy ember nevét írja ki dialogban, arról nem is beszélve, hogy az \"str\" tömböt létre se hozták és a \"nev\" nem tömb. És egyébként a te megoldásod is pazarló, mert két tömböt hoztál létre Szóval akkor utoljára, helyesen: CMD:adminok(playerid, params[]){new str[10*(MAX_PLAYER_NAME+14)+1] = \"Nincsenek adminok\"; //10 darab játékos * (maximum név + \" | Szint: \" + maximum négyjegyû szám) + \"\\n\"for(new i=0; i < MAX_PLAYERS; i++){if(PlayerInfo[Level] < 0){ new nev[MAX_PLAYER_NAME]; GetPlayerName(i, nev, sizeof(nev)); format(str, sizeof str, \"%s | Szint: %d\\n\",nev, PlayerInfo[Level] );}}ShowPlayerDialog(playerid,20,DIALOG_STYLE_LIST,\"Adminok\",str,\"OK\",\"Mégse\");return 1;}
if(PlayerInfo[Level] < 0)
CMD:admins(playerid, params[]){newstr[1024 + 1],nev[MAX_PLAYER_NAME + 1],i = -1,fentlevo = 0;str[0] = EOS;for(;++i < MAX_PLAYERS;){if(IsPlayerConnected(i)){ if(PlayerInfo[Level] > 0) { fentlevo++; nev[0] = EOS; GetPlayerName(i, nev, MAX_PLAYER_NAME + 1); format(str, sizeof(str), \"%s%s | Szint: %d\\n\", str, nev, PlayerInfo[Level]); }}}if(!fentlevo) format(str, sizeof(str), \"Nincs fent jelenleg egy admin sem!\");ShowPlayerDialog(playerid, 1573, DIALOG_STYLE_MSGBOX, \"Fentlévõ Adminok\", str, \"Oké\", \"\");return 1;}
for(new i = 0, gmp = GetMaxPlayers(); i < gmp; i++)
for(new i = 0; i < GetMaxPlayers(); i++)
for(new i = 0; i < MAX_PLAYERS; i++)
#undef MAX_PLAYERS#define MAX_PLAYERS 30
new valami[MAX_PLAYERS];
Kajakra mondom, még DaVe a tied sem tökéletes, és mûködõ képes, most konkrétan végig futtotok egy cikluson, megformázzátok a(z) \"str\" változót, illetve mindig létrehoztok egy \"nev\" változót, viszont ennek a mérete 24 + 1-nek kellene lennie, mert a \"\\0\" jelet is kell tárolni, ezen felül, ahhoz hogy eltároljuk ezt a nagy adatmennyiséget szükség lenne még egy változóra, mondjuk egy (512 - 1024) + 1-es változó megtenné, de még enélkül is meglehet oldani ezeket. Na mindjárt megírom. Illetve ha már a foreachnál járunk, én speciel nem használom, mivel tömbben tárolja az adatokat ( ha jól tudom ) és azokon fut végig. Illetve ez a leggyorsabb ciklus. CMD:admins(playerid, params[]){newstr[1024 + 1],nev[MAX_PLAYER_NAME + 1],i = -1,fentlevo = 0;str[0] = EOS;for(;++i < MAX_PLAYERS;){if(IsPlayerConnected(i)){ if(PlayerInfo[Level] > 0) { fentlevo++; nev[0] = EOS; GetPlayerName(i, nev, MAX_PLAYER_NAME + 1); format(str, sizeof(str), \"%s%s | Szint: %d\\n\", str, nev, PlayerInfo[Level]); }}}if(!fentlevo) format(str, sizeof(str), \"Nincs fent jelenleg egy admin sem!\");ShowPlayerDialog(playerid, 1573, DIALOG_STYLE_MSGBOX, \"Fentlévõ Adminok\", str, \"Oké\", \"\");return 1;}