Szerző Téma: Egyszerûbb betöltés fájlból (dini szükséges)  (Megtekintve 1048 alkalommal)

dexi

  • Vendég
Egyszerûbb betöltés fájlból (dini szükséges)
« Dátum: 2012. március 21. - 18:49:52 »
+3 Show voters
Készítõ: Fl0rian
A lényeg:
Gondolom nem csak számomra unalmas pl ezeket átírni
 
dini_IntSet( playerFile(playerid), \"Admin\", playerInfo[playerid][Admin] );
dini_IntSet( playerFile(playerid), \"Level\", playerInfo[playerid][Level] );
dini_IntSet( playerFile(playerid), \"EXP\", playerInfo[playerid][EXP] );
dini_IntSet( playerFile(playerid), \"Bank\", playerInfo[playerid][bank] );

 
ezekre minden egyes alkalommal..
 
playerInfo[playerid][Admin] = dini_Int( playerFile(playerid), \"Admin\" );
playerInfo[playerid][Level] = dini_Int( playerFile(playerid), \"Level\" );
playerInfo[playerid][EXP] = dini_Int( playerFile(playerid), \"EXP\" );
playerInfo[playerid][bank] = dini_Int( playerFile(playerid), \"Bank\"  );

 
Ezért csináltam egy kis inc-et.
Használat(példa):
Ha \'WRITE\" // Annyit tesz hogy a megadott sorba másol egy megadott változót.
Ha \'READ\'  // A megadott sorból(a lentiekben pl: \"Admin\", \"Elet\", \"Szoveg\") a megadott változóba másolja az értéket. (a lentiekben pl: playerInfo[playerid][Admin], playerInfo[playerid][Elet], playerInfo[playerid][string])
Integer esetén:
 
dataintege_READ( playerid, \"Admin\", playerInfo[playerid][Admin] );
datainteger_WRITE( playerid, \"Admin\", playerInfo[playerid][Admin] );

 
Float esetén:
 
datafloat_READ( playerid, \"Elet\", playerInfo[playerid][Elet] );
datafloat_WRITE( playerid, \"Elet\", playerInfo[playerid][Elet] );

 
String esetén:
 
datastring_READ( playerid, \"Szoveg\", playerInfo[playerid][string] ); 
datastring_WRITE( playerid, \"Szoveg\", playerInfo[playerid][string] );

 
Így ha lusták vagyunk(mint pl én :D) akkor csak a \'READ\' illetve a \'WRITE\' feliratot kell kicserélnünk.
Fontos: Kicsit bele kell piszkálnotok az INC-be, hogy a játékosok fájljának az elérési útját megadjátok.
*****************************
Nem mûködött megfelelõen ezért kijavítottam..  Új verzió feltöltve. (code)
*****************************
Code tag:
 

#include < dini >
#define datafloat_READ(%1,%2,%3);\\
%3=dini_Float(bizFile(%1),%2);\\
printf(\"DataLoaded: playerid %d, var %s, to pvar %f \",%1,%2,%3);
#define datafloat_WRITE(%1,%2,%3);\\
dini_FloatSet(playerFile(%1),%2,%3);\\
printf(\"DataSaved: playerid %d, var %s, to pvar %f \",%1,%2,%3);
#define datainteger_READ(%1,%2,%3);\\
%3=dini_Int(playerFile(%1),%2);\\
printf(\"DataLoaded: playerid %d, var %s, to pvar %i \",%1,%2,%3);
#define datainteger_WRITE(%1,%2,%3);\\
dini_IntSet(playerFile(%1),%2,%3);\\
printf(\"DataSaved: playerid %d, var %s, to pvar %i \",%1,%2,%3);
#define datastring_READ(%1,%2,%3);\\
format(%3,MAX_PLAYER_NAME,\"%s\",dini_Get(playerFile(%1),%2));\\
printf(\"DataLoaded: playerid %d, var %s, to pvar %s \",%1,%2,%3);
#define datastring_WRITE(%1,%2,%3);\\
dini_Set(playerFile(%1),%2,%3);\\
printf(\"DataSaved: playerid %d, var %s, to pvar %s \",%1,%2,%3);
stock
playerFile( playerid )
{
new File[128];
format( File, sizeof(File), \"Jatekosok/%s.ini\", playerName(playerid) );
return File;
}
stock
playerName( playerid )
{
new Name[MAX_PLAYER_NAME];
GetPlayerName( playerid, Name, sizeof(Name) );
return Name;
}
« Utoljára szerkesztve: 2012. március 22. - 18:55:33 írta Fl0rian »

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
Egyszerûbb betöltés fájlból (dini szükséges)
« Válasz #1 Dátum: 2012. március 21. - 18:58:01 »
0 Show voters
Jó lett! Hasznos! :D Használni fogom. :)

Egyszerûbb betöltés fájlból (dini szükséges)
« Válasz #2 Dátum: 2012. március 21. - 19:22:50 »
0 Show voters
Idézet a szabályzatból:
 
Idézetet írta: ChuckNorris date=1284395127\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18879\" data-ipsquote-contentclass=\"forums_Topic
Script tárolása:
Kérek mindenkit, hogy mostantól a scriptet/függvénykönyvtárat ne csupán feltöltse egy fájlmegosztó oldalra, hanem a fórumra is másolja fel [ code][ /code] tagek közé!

Erre azért van szükség, mert míg egy-egy fájlmegosztó megszûnik/bezárják, rengeteg script eltûnik!


Ha a script használ olyan függvénykönyvtárat, ami nincsen fent a fórumon, akkor annak külön témát kell nyitni, és belinkelni a scriptet publikáló témában! (A függvénykönyvtárakat is másoljuk fel)


A több tízezer soros módokat nem fogjátok tudni kirakni code tagekkel sem. Kérlek ezeket a scripteket (Fõleg RP módok) a
http://pastebin.com/ -ra tegyétek fel kötelezõen, ne a fórumra.

Kérlek titeket, a
fórumra másoljátok fel a kódot,ténylegesen, tehát pastebin és társai nem jók.

Illetve megemlítenék pár megbízhatóbb fájlmegosztót, ahova szintén nem árt feltölteni a scriptet (és annak tartozékait), a felmásolás mellett:


Nagyon ajánlott: http://pastebin.com/

http://solidfiles.com/

http://www.mediafire.com/


 
Kérlek pótold.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal