CMD:me(playerid, params[]){new szoveg[128],string[128];if(sscanf(params,\"s[128]\",szoveg)) return SCM(playerid, SARGA, \"Használat: /me [cselekvés]\");new Float:X;new Float:Y;new Float:Z;new i;while(i < MAX_PLAYERS){i++;GetPlayerPos(playerid,X,Y,Z);if(IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z)) { format(string,sizeof(string),\"* %s %s\", Nev(playerid), szoveg); SCM(i, ROZSASZIN, string);}}return 1;}
new i = 0;
CMD:me(playerid, params[]){new szoveg[128],string[128];if(sscanf(params,\"s[128]\",szoveg)) return SCM(playerid, SARGA, \"Használat: /me [cselekvés]\");new Float:X,Float:Y,Float:Z;new i = 0;while(i < MAX_PLAYERS){ GetPlayerPos(playerid,X,Y,Z); if(IsPlayerInRangeOfPoint(i, 5.0, X, Y, Z)) { format(string,sizeof(string),\"* %s %s\", Nev(playerid), szoveg); SCM(i, ROZSASZIN, string); } i++;}return 1;}
A hiba egyszerű, előszőr is for ciklussal szebben nézne ki, de ha már while ciklust használsz, akkor annak az \'i\'-nek adj kezdőértéket : new i = 0; És ne a kód elején növeld az i-t hanem a kód után, mert ha az elején növeled akkor a 0-ás ID-t kihagyja ami tesztelés során esélyes, hogy te vagy.Szóval így nézz ki rendesen : CMD:me(playerid, params[]){new szoveg[128],string[128];if(sscanf(params,\"s[128]\",szoveg)) return SCM(playerid, SARGA, \"Használat: /me [cselekvés]\");new Float:X,Float:Y,Float:Z;new i = 0;while(i < MAX_PLAYERS){ GetPlayerPos(playerid,X,Y,Z); if(IsPlayerInRangeOfPoint(i, 5.0, X, Y, Z)) { format(string,sizeof(string),\"* %s %s\", Nev(playerid), szoveg); SCM(i, ROZSASZIN, string); } i++;}return 1;}