GTA Közösség - A magyar GTA fórum
San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Erik3333 - 2014. július 16. - 19:03:29
-
Helló!
Nem szoktam nagyon segítséget kérni, de most fogok.. :D
Van/létezik olyan inventory(tároló) rendszer, ami MySQL mentést használ?
Esetleg, ha nincs, hogyan kellene lementenem a tárgyakat? Mindet külön sorban és meghatározom a játékost oszlopban, vagy az összeset egy oszlopba?
Plusz, ha megnyitom a tárolót, akkor elõre betöltött legyen vagy akkor kérje le?
-
A MySql ugye tudja tárolni.Létre kell hozni pluszba a játékos mellé egy külön táblázatot amibe az inventory-ban tárolt elemeket menti el.
Szóval csak simán hozzárendelsz az adott sorhoz plusz táblázatot,mint opció.Tudtommal lehet ilyet.Elnézést ha tévedek.
-
Én az item számozott sorok és az egy stringbe mentés helyett (mindkettõ erõforrászabáló megoldás) egy táblát csinálnék, ahol az itemek vannak. Ha el van dobva, meg van adva, hova, ha nincs, akkor hányas inventoryban van. Az inventoryk táblánál meg csak hozzá lehetne rendelni, játékoshoz, jármûhöz, stb.
-
KovaNovik, ezt a módban hogyan kellene megvalósítani? Tehát változóban tároljam? És ez hogy nézne ki?
Köszi elõre is. :)
-
Enumban tárolnám, de elgondolkodnék azon is, hogy mindig csak egyszer töltsem be, ideiglenes változókba, mert egy több tízezres méretû enum rengeteg memóriát felemésztene. Egy integer 4 bájtot foglal. Mind az 1000 tárgynak egy, 1000*4 bájtot. Ha csak 2 ilyen integer van (8000 bájt), 2 db 128 méretû string (2*1000*128*4, azaz 1 024 000 bájt) van, akkor is 1 032 000 bájtot, 1032 kilobájtot, azaz 1,032 megabájtot foglaltál le a memóriából. És itt nem 4 változó lesz... Arról nem is beszélve, hogy nagyon macerás lesz elérni, menteni, fõleg, amikor 2048-nál több cella kell. Én inkább valahogy direktben töltögetném be, bár ez nagyon bonyolult rendszer lenne, ha szinkronban kellene tartanunk ezt az egészet.
-
Még olyanra lennék kíváncsi, hogyan lehet jármû és ház inventoryt csinálni?
-
Hát a táblába ugye ID szerint rendszerezhetsz. Pl. 1-es idjû táska: ha a player -1, nem playeré, ha más, akkor az avval az ID-vel rendelkezõ játékosé. Ha a haz oszlop értéke ezen sorban -1, nem házhoz tartozik, ha más, ahhoz, amelyiknek az ID-je egyenlõ az itt megadottal . Ha a kocsi oszlop -1... satöbbi.