Sziasztok itt lenne egy /rangad kód
CMD:rangad(playerid,params[])
{
new pid, rang, rstring[256];
if(sscanf(params,\"ud\", pid, rang)) return SendClientMessage(playerid, -1, \"(( Használat: /rangad [Név / ID] [Rang] ))\");
if(pInfo[playerid][pFrakcio] == MAFFIAFONOK)
{
if(pInfo[pid][pFrakcio] == MAFFIATAG || pInfo[pid][pFrakcio] == MAFFIAFONOK)
{
if(rang > 0 && rang <= 6)
{
pInfo[pid][pRang] = rang;
format(rstring,sizeof(rstring),\"(( %s új rangot adott neked! ))\",Nev(playerid));
SendClientMessage(pid,-1,rstring);
SendClientMessage(playerid,-1, \"(( Új rangot adtál az illetőnek! ))\");
Ment(id);
}
else SendClientMessage(playerid,PIROS,\"A rangnak, 1 és 4 között kell lennie!\");
}
else SendClientMessage(playerid, PIROS, \"Az illető nem CN tag!\");
}
else SendClientMessage(playerid,PIROS,\"Nem vagy a Cosa Nostra főnöke!\");
return 1;
}
Ez a hozzá járó parancs ( ha esetleg ebbe lenne a hiba )
CMD:atoltoz(playerid,params[])
{
if(pInfo[playerid][pFrakcio] == MAFFIATAG || pInfo[playerid][pFrakcio] == MAFFIAFONOK)
{
if(pInfo[playerid][pRang] == 1)
{
if(pInfo[playerid][pNem] == FERFI) SetPlayerSkin(playerid, 111);
if(pInfo[playerid][pNem] == NO) SetPlayerSkin(playerid, 55);
}
if(pInfo[playerid][pRang] == 2)
{
if(pInfo[playerid][pNem] == FERFI) SetPlayerSkin(playerid, 98);
if(pInfo[playerid][pNem] == NO) SetPlayerSkin(playerid, 55);
}
if(pInfo[playerid][pRang] == 3)
{
if(pInfo[playerid][pNem] == FERFI) SetPlayerSkin(playerid, 126);
if(pInfo[playerid][pNem] == NO) SetPlayerSkin(playerid, 55);
}
if(pInfo[playerid][pRang] == 4)
{
if(pInfo[playerid][pNem] == FERFI) SetPlayerSkin(playerid, 125);
if(pInfo[playerid][pNem] == NO) SetPlayerSkin(playerid, 55);
}
if(pInfo[playerid][pRang] == 5)
{
if(pInfo[playerid][pNem] == FERFI) SetPlayerSkin(playerid, 127);
if(pInfo[playerid][pNem] == NO) SetPlayerSkin(playerid, 55);
}
if(pInfo[playerid][pRang] == 6)
{
if(pInfo[playerid][pNem] == FERFI) SetPlayerSkin(playerid, 295);
if(pInfo[playerid][pNem] == NO) SetPlayerSkin(playerid, 55);
}
}
else SendClientMessage(playerid,PIROS,\"Nem vagy egy illegális szervezet tagja sem!\");
return 1;
}
Majd a mentés:
stock Ment(playerid)
{
format(File, sizeof(File), \"Jatekos/%s.ini\", SimaNev(playerid));
if(dini_Exists(File))
{
dini_Set(File,\"Rang\",pInfo[playerid][pRang]);
}
}
Betöltés:
stock Betolt(playerid)
{
format(File, sizeof(File), \"Jatekos/%s.ini\", SimaNev(playerid));
if(dini_Exists(File))
{
pInfo[playerid][pRang] = dini_Int(File,\"Rang\");
}
}
Végül az enum:
enum pAdat
{
pRang
}
new pInfo[MAX_PLAYERS][pAdat];
Az lenne a baj hogy a scriptfiles -> játékos tömbjébe nem menti el a rangot hanem a Rang= után egy ilyen kis négyzetet ír... valaki tudja mi a probléma?