-
Sziasztok!
Az a gondom még sajnos mindig, hogy a fegyvert valamiért nem akarja elmenteni.
A mod pedig minden hiba nélkül lefut de valamiért mégsem menti a fegyvert. :(
Így néz ki a sccript:
stock SaveFegyver(playerid)
{
new weapons[13][2];
new FileName[128];
for (new i = 0; i < 13; i++)
{
format(FileName, sizeof(FileName), \"Fegyverek/%s.ini\", i);
if(dini_Exists(FileName))
{
GetPlayerWeaponData(playerid, i, weapons[0], weapons[1]);
dini_IntSet(FileName, \"Weapon1\", weapons[0][0]);
dini_IntSet(FileName, \"Ammo1\", weapons[0][1]);
dini_IntSet(FileName, \"Weapon2\", weapons[1][0]);
dini_IntSet(FileName, \"Ammo2\", weapons[1][1]);
dini_IntSet(FileName, \"Weapon3\", weapons[2][0]);
dini_IntSet(FileName, \"Ammo3\", weapons[2][1]);
dini_IntSet(FileName, \"Weapon4\", weapons[3][0]);
dini_IntSet(FileName, \"Ammo4\", weapons[3][1]);
dini_IntSet(FileName, \"Weapon5\", weapons[4][0]);
dini_IntSet(FileName, \"Ammo5\", weapons[4][1]);
dini_IntSet(FileName, \"Weapon6\", weapons[5][0]);
dini_IntSet(FileName, \"Ammo6\", weapons[5][1]);
dini_IntSet(FileName, \"Weapon7\", weapons[6][0]);
dini_IntSet(FileName, \"Ammo7\", weapons[6][1]);
dini_IntSet(FileName, \"Weapon8\", weapons[7][0]);
dini_IntSet(FileName, \"Ammo8\", weapons[7][1]);
dini_IntSet(FileName, \"Weapon9\", weapons[8][0]);
dini_IntSet(FileName, \"Ammo9\", weapons[8][1]);
dini_IntSet(FileName, \"Weapon10\", weapons[9][0]);
dini_IntSet(FileName, \"Ammo10\", weapons[9][1]);
dini_IntSet(FileName, \"Weapon11\", weapons[10][0]);
dini_IntSet(FileName, \"Ammo11\", weapons[10][1]);
dini_IntSet(FileName, \"Weapon12\", weapons[11][0]);
dini_IntSet(FileName, \"Ammo12\", weapons[11][1]);
}
}
return 1;
}
public OnPlayerDisconnect(playerid, reason) alatt pedig ez:
SaveFegyver(playerid);
Valaki segít nekem megoldani a problémát?
Elõre is köszönöm!
-
if(!fexist(FileName))
{
dini_Create(FileName);
}
else
{
}
-
és ezt hova ?
:D
-
stock SaveFegyver(playerid)
{
new weapons[13][2];
new FileName[128];
for (new i = 0; i < 13; i++)
{
format(FileName, sizeof(FileName), \"Fegyverek/%s.ini\", i);
if(dini_Exists(FileName))
{
GetPlayerWeaponData(playerid, i, weapons[0], weapons[1]);
dini_IntSet(FileName, \"Weapon1\", weapons[0][0]);
dini_IntSet(FileName, \"Ammo1\", weapons[0][1]);
dini_IntSet(FileName, \"Weapon2\", weapons[1][0]);
dini_IntSet(FileName, \"Ammo2\", weapons[1][1]);
dini_IntSet(FileName, \"Weapon3\", weapons[2][0]);
dini_IntSet(FileName, \"Ammo3\", weapons[2][1]);
dini_IntSet(FileName, \"Weapon4\", weapons[3][0]);
dini_IntSet(FileName, \"Ammo4\", weapons[3][1]);
dini_IntSet(FileName, \"Weapon5\", weapons[4][0]);
dini_IntSet(FileName, \"Ammo5\", weapons[4][1]);
dini_IntSet(FileName, \"Weapon6\", weapons[5][0]);
dini_IntSet(FileName, \"Ammo6\", weapons[5][1]);
dini_IntSet(FileName, \"Weapon7\", weapons[6][0]);
dini_IntSet(FileName, \"Ammo7\", weapons[6][1]);
dini_IntSet(FileName, \"Weapon8\", weapons[7][0]);
dini_IntSet(FileName, \"Ammo8\", weapons[7][1]);
dini_IntSet(FileName, \"Weapon9\", weapons[8][0]);
dini_IntSet(FileName, \"Ammo9\", weapons[8][1]);
dini_IntSet(FileName, \"Weapon10\", weapons[9][0]);
dini_IntSet(FileName, \"Ammo10\", weapons[9][1]);
dini_IntSet(FileName, \"Weapon11\", weapons[10][0]);
dini_IntSet(FileName, \"Ammo11\", weapons[10][1]);
dini_IntSet(FileName, \"Weapon12\", weapons[11][0]);
dini_IntSet(FileName, \"Ammo12\", weapons[11][1]);
}else dini_Create(FileName);
}
return 1;
}
-
Most már létrehozza ezeket a .ini fájlba. De ha belépek akkor megint csak nincs fegyverem. :(
Weapon1=0
Ammo1=0
Weapon2=0
Ammo2=0
Weapon3=0
Ammo3=0
Weapon4=0
Ammo4=0
Weapon5=0
Ammo5=0
Weapon6=0
Ammo6=0
Weapon7=0
Ammo7=0
Weapon8=0
Ammo8=0
Weapon9=0
Ammo9=0
Weapon10=0
Ammo10=0
Weapon11=0
Ammo11=0
Weapon12=0
Ammo12=0
[mod]Ezt célszerû code tagbe rakni, ezért most beleraktam.[/mod]
-
A fájl nevébe nem a játékos nevét kellene formázni? ::|
-
Szóval az i betû helyére ?
De oda mit ?
-
new Nev[MAX_PLAYER_NAME+1];
GetPlayerName(playerid, Nev, sizeof(Nev));
format.... //Itt az i helyére Nev.
-
Ááá végre hibátlanul mûködik!
Köszönöm mindenkinek a segítséget! :thumbsup:
Dupla hozzászólás automatikusan összefûzve. ( 2014. május 09. - 14:50:44 )
Sajnos még mindig nem jó :(
A mentéssel sztem nagy gond nincs mert megcsinálja már szépen de a betöltéssel viszont még mindig van.
Ahogy fellépek a szerverre nincsenek meg a fegyverek és már a scriptfájlba is 0-ra írt mindent, holott mikor kiléptem belefoltak írva a mentett fegyverek ID-ji és a lõszerszámai. :(
Bár nekem nem rémlik, hogy lett e csinálva olyan hogy ha a játékos fellép akkor megkapja a fegyvereit, vagy nem is tudom pontosan hogyan kell ezt.
Még segítene valaki ? :(
-
Ezt már elküldtem PM-ben.
Az OnPlayerSpawn rész.
-
Sziasztok!
Az a gondom még sajnos mindig, hogy a fegyvert valamiért nem akarja elmenteni.
A mod pedig minden hiba nélkül lefut de valamiért mégsem menti a fegyvert. :(
Így néz ki a sccript:
stock SaveFegyver(playerid)
{
new weapons[13][2];
new FileName[128];
for (new i = 0; i < 13; i++)
{
format(FileName, sizeof(FileName), \"Fegyverek/%s.ini\", i);
if(dini_Exists(FileName))
{
GetPlayerWeaponData(playerid, i, weapons[0], weapons[1]);
dini_IntSet(FileName, \"Weapon1\", weapons[0][0]);
dini_IntSet(FileName, \"Ammo1\", weapons[0][1]);
dini_IntSet(FileName, \"Weapon2\", weapons[1][0]);
dini_IntSet(FileName, \"Ammo2\", weapons[1][1]);
dini_IntSet(FileName, \"Weapon3\", weapons[2][0]);
dini_IntSet(FileName, \"Ammo3\", weapons[2][1]);
dini_IntSet(FileName, \"Weapon4\", weapons[3][0]);
dini_IntSet(FileName, \"Ammo4\", weapons[3][1]);
dini_IntSet(FileName, \"Weapon5\", weapons[4][0]);
dini_IntSet(FileName, \"Ammo5\", weapons[4][1]);
dini_IntSet(FileName, \"Weapon6\", weapons[5][0]);
dini_IntSet(FileName, \"Ammo6\", weapons[5][1]);
dini_IntSet(FileName, \"Weapon7\", weapons[6][0]);
dini_IntSet(FileName, \"Ammo7\", weapons[6][1]);
dini_IntSet(FileName, \"Weapon8\", weapons[7][0]);
dini_IntSet(FileName, \"Ammo8\", weapons[7][1]);
dini_IntSet(FileName, \"Weapon9\", weapons[8][0]);
dini_IntSet(FileName, \"Ammo9\", weapons[8][1]);
dini_IntSet(FileName, \"Weapon10\", weapons[9][0]);
dini_IntSet(FileName, \"Ammo10\", weapons[9][1]);
dini_IntSet(FileName, \"Weapon11\", weapons[10][0]);
dini_IntSet(FileName, \"Ammo11\", weapons[10][1]);
dini_IntSet(FileName, \"Weapon12\", weapons[11][0]);
dini_IntSet(FileName, \"Ammo12\", weapons[11][1]);
}
}
return 1;
}
public OnPlayerDisconnect(playerid, reason) alatt pedig ez:
SaveFegyver(playerid);
Valaki segít nekem megoldani a problémát?
Elõre is köszönöm!
-
if(!fexist(FileName))
{
dini_Create(FileName);
}
else
{
}
-
és ezt hova ?
:D
-
stock SaveFegyver(playerid)
{
new weapons[13][2];
new FileName[128];
for (new i = 0; i < 13; i++)
{
format(FileName, sizeof(FileName), \"Fegyverek/%s.ini\", i);
if(dini_Exists(FileName))
{
GetPlayerWeaponData(playerid, i, weapons[0], weapons[1]);
dini_IntSet(FileName, \"Weapon1\", weapons[0][0]);
dini_IntSet(FileName, \"Ammo1\", weapons[0][1]);
dini_IntSet(FileName, \"Weapon2\", weapons[1][0]);
dini_IntSet(FileName, \"Ammo2\", weapons[1][1]);
dini_IntSet(FileName, \"Weapon3\", weapons[2][0]);
dini_IntSet(FileName, \"Ammo3\", weapons[2][1]);
dini_IntSet(FileName, \"Weapon4\", weapons[3][0]);
dini_IntSet(FileName, \"Ammo4\", weapons[3][1]);
dini_IntSet(FileName, \"Weapon5\", weapons[4][0]);
dini_IntSet(FileName, \"Ammo5\", weapons[4][1]);
dini_IntSet(FileName, \"Weapon6\", weapons[5][0]);
dini_IntSet(FileName, \"Ammo6\", weapons[5][1]);
dini_IntSet(FileName, \"Weapon7\", weapons[6][0]);
dini_IntSet(FileName, \"Ammo7\", weapons[6][1]);
dini_IntSet(FileName, \"Weapon8\", weapons[7][0]);
dini_IntSet(FileName, \"Ammo8\", weapons[7][1]);
dini_IntSet(FileName, \"Weapon9\", weapons[8][0]);
dini_IntSet(FileName, \"Ammo9\", weapons[8][1]);
dini_IntSet(FileName, \"Weapon10\", weapons[9][0]);
dini_IntSet(FileName, \"Ammo10\", weapons[9][1]);
dini_IntSet(FileName, \"Weapon11\", weapons[10][0]);
dini_IntSet(FileName, \"Ammo11\", weapons[10][1]);
dini_IntSet(FileName, \"Weapon12\", weapons[11][0]);
dini_IntSet(FileName, \"Ammo12\", weapons[11][1]);
}else dini_Create(FileName);
}
return 1;
}
-
Most már létrehozza ezeket a .ini fájlba. De ha belépek akkor megint csak nincs fegyverem. :(
Weapon1=0
Ammo1=0
Weapon2=0
Ammo2=0
Weapon3=0
Ammo3=0
Weapon4=0
Ammo4=0
Weapon5=0
Ammo5=0
Weapon6=0
Ammo6=0
Weapon7=0
Ammo7=0
Weapon8=0
Ammo8=0
Weapon9=0
Ammo9=0
Weapon10=0
Ammo10=0
Weapon11=0
Ammo11=0
Weapon12=0
Ammo12=0
[mod]Ezt célszerû code tagbe rakni, ezért most beleraktam.[/mod]
-
A fájl nevébe nem a játékos nevét kellene formázni? ::|
-
Szóval az i betû helyére ?
De oda mit ?
-
new Nev[MAX_PLAYER_NAME+1];
GetPlayerName(playerid, Nev, sizeof(Nev));
format.... //Itt az i helyére Nev.
-
Ááá végre hibátlanul mûködik!
Köszönöm mindenkinek a segítséget! :thumbsup:
Dupla hozzászólás automatikusan összefûzve. ( 2014. május 09. - 14:50:44 )
Sajnos még mindig nem jó :(
A mentéssel sztem nagy gond nincs mert megcsinálja már szépen de a betöltéssel viszont még mindig van.
Ahogy fellépek a szerverre nincsenek meg a fegyverek és már a scriptfájlba is 0-ra írt mindent, holott mikor kiléptem belefoltak írva a mentett fegyverek ID-ji és a lõszerszámai. :(
Bár nekem nem rémlik, hogy lett e csinálva olyan hogy ha a játékos fellép akkor megkapja a fegyvereit, vagy nem is tudom pontosan hogyan kell ezt.
Még segítene valaki ? :(
-
Ezt már elküldtem PM-ben.
Az OnPlayerSpawn rész.