CMD:setarmor(playerid,params[]){if(IsPlayerConnected(playerid) && Belepve[playerid] == 1){ if(JatekosInfo[playerid][AdminSzint] >= 3) { new id[MAX_PLAYER_NAME]; new armormennyiseg; if(armormennyiseg >= 0 && armormennyiseg <= 100) { if(sscanf(params,\"ii\",id,armormennyiseg)) return SendClientMessage(playerid,COLOR_LIGHTRED,\"Használata: /setarmor [Játékos neve/id] [armor mennyisége]\"); { new uzenet[256]; new jatekosneve[MAX_PLAYER_NAME]; GetPlayerName(playerid,nev,sizeof(nev)); GetPlayerName(id,jatekosneve,sizeof(jatekosneve)); SetPlayerArmour(id,armormennyiseg); format(uzenet,sizeof(uzenet),\"Megváltoztattad %s Armorját %d -ra/re\",jatekosneve,armormennyiseg); SendClientMessage(playerid,COLOR_LIGHTBLUE,uzenet); printf(\"%s megáltoztatta %s Armorját %d -ra/re\",nev,jatekosneve,armormennyiseg); } } else SendClientMessage(playerid,COLOR_LIGHTRED,\"Az Armor menyniségnénk 0-100 között kell lenni\"); } else SendClientMessage(playerid,COLOR_LIGHTRED,\"Nem elegendõ az adminszinted ehhez a parancshoz, vagy nem vagy admin!\");}else SendClientMessage(playerid,COLOR_LIGHTRED,\"Nem vagy belépve!\");return 1;}
new id[MAX_PLAYER_NAME];
new id;
sscanf(params,\"ii\",id,armormennyiseg)
sscanf(params,\"ui\",id,armormennyiseg)
new id[MAX_PLAYER_NAME]; Helyett: new id; sscanf(params,\"ii\",id,armormennyiseg) Helyett: sscanf(params,\"ui\",id,armormennyiseg) Dupla hozzászólás automatikusan összefûzve. ( [time]2014. Augusztus 16. 22:35:30[/time] )Mert ugye a felhasználók ID-je integer típusú, de te string-nek defináltad. Nem csoda, hogy nem fogadta el sscanf(params,\"ui\",id,armormennyiseg) sscanf-nél pedig mikor felhasználót kell megadni egy parancs paraméteréül, a formátumnál a \"u\" specifikátort kell megadnod. Így a sscanf a felhasználó ID-jét adja vissza a változónak, akkor is, ha a játékos nevét írták a parancs paraméterében. Pl.: tegyük fel, hogy az \"X_Y\" nevû játékos ID-je 21.Beírod:/setarmor X_Y 100vagy/setarmor 21 100Mindkét esetben a sscanf az \"id\" nevû változóba 21-et fog visszaadni.Ha valaki elírta a játékos nevét, vagy ID-jét, vagy a játékos éppen nincs fent a szerveren, a sscanf függvény visszatérési értéke nem 0 lesz. Így lehet ellenõrizni, hogy a játékos megfelelõen használta-e az utasítást. Ha nem 0, akkor kiírjuk neki az utasítás használatát.