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: Erax - 2018. október 15. - 09:05:50
-
Sziasztok. A scriptelést gyakorolgatom kisebb-nagyobb \"sikerekkel\" és elakadtam. Szeretném azt megoldani, hogyha XY használ egy parancsot akkor utána csak 20 perc múlva tudja használni. De ezt nem globálisan akarom elérni. Tehát ha Sanyi használta a parancsot akkor csak neki legyen a parancs használata letiltva 20 percig. Tehát attól Béla és még a többiek is tudják használni a parancsot amíg Ők nem használták. Nyílván timerrel kellene megoldani csak az eljárást nem tudom. Néztem már hivatalos fórumot is de ott sem találtam kielégítő választ úgy, hogy remélem itt segítségemre lesz valaki. Szép napot mindenkinek!
-
hello, meddig jutottál és az elmélet meg van már, hogy mit is kellene pontosan megvalósítanod?
(technikailag mit hogyan oldasz mint fejlesztő, nem felhasználói szemmel nézve)
-
Szia Richard!
Egy Roleplay modot editelgetek amit nem neveznék néven szerintem érthető okok miatt. Jelenleg a munkákkal vagyok elfoglalva és a modban lévő jelenlegi munkákat szeretném úgymond eldobni és teljesen újracsinálni minden egyes munkát. Erre az időkorlátozásra meg azért van szükségem, hogy ne lehessen állandóan dolgozni hanem egy munkafolyamat után úgymond 20 perc pihenőt kell tartani, hogy újra lehessen dolgozni. Mire gondolsz pontosan? Mire lenne szükséged, hogy tudj nekem segíteni? Ne haragudj az értetlenkedésért. :D De egyébként annyit szeretnék elérni, hogyha a játékos belehajt az utolsó CP-be onnan elinduljon neki (csak neki) egy timer, hogy csak 20 perc múlva tudja használni újra azt a parancsot amivel elkezdhet dolgozni.
-
ez a timeres dolog elavult, én a helyedben inkább DateTime-ban eltárolnám, hogy mikor csinálta utoljára, vagy mikor csinálhatja megint (utóbbit ajánlom)
és amikor beírja a parancsot, akkor leellenőrzöd, hogy a MOST dátum nagyobb e, mint amikor csinálhatja
ezzel nem terheled feleslegesen a szervert
https://wiki.sa-mp.com/wiki/Getdate
https://wiki.sa-mp.com/wiki/Gettime
ezek hasznodra lesznek
-
Köszönöm szépen a tanácsodat. Nekilátok aztán írok ha van valamilyen fejlemény.
-
a Sanyis adattárolás meg van? tehát hogy playerenként hogyan tárolod
mondjuk ha RP módba csinálod, akkor gondolom van valami player tömböd ami már tartalmazza ezeket az infókat
-
Adattárolás alatt mit értesz? Ahol tárolja pl, hogy mennyi pénze van, játszott órái, háza, kocsija stb.?
-
igen
hát gondolj bele, ha playerid-ra rakod, akkor:
- én belépek, használom a parancsot - ID 0 játékoson 20 perc
- kilépek
- te belépsz 5 perc múlva, akkor megkapod a ID 0-t és még van 15 perc rajta, holott nem is te használtad
- de te még fent vagy, én belépek ID 1-re és megint tudom használni
az sem megoldás, hogy kilépésnél reseteled, mert, akkor kilépek és resetelve
ezért el kell menteni a játékos adataival együtt ezt az értéket, hogy mikor tudja megint használni
(a dátumos megoldás miatt offline is telik az idő, te azt szeretnéd, hogy csak online menjen?)
-
Értem amit mondasz csak bizonytalan voltam az adattárolásos válaszra.
Igen úgy is megfelel ha offline telik az idő.
-
ne felejtsd el berakni a mentés/betöltés részhez sem :)
-
Elméletileg sikerült. Később tudom teszteltetni az egyik barátommal, hogy valóban jól csináltam-e meg és nem fog keveredni az id számokkal. Köszönöm szépen a segítségedet.