Siema! Mam problem ze sprawdzeniem dw?ch zmiennych typu string.
Sprawdzam tak:
Gdy VehData[i][ovner] ma warto?? np. XYZ a zmienna PlayerName(playerid) ma warto?? np. YZX to warunek if twierdzi ?e s? identyczne. W czym le?y problem ?
Stringi por?wnuje si? u?ywaj?c !strcmp bo w dokumentacji jasno pisze, ?e strcmp zwraca 0 gdy oba ci?gi znak?w s? identyczne, 1 gdy si? zawieraj? a -1 gdy s? r??ne.
Musisz te? wzi?? pod uwag? to, ?e strcmp zwr?ci 0 (czyli ?e s? r?wne) gdy kt?ra? ze zmiennych jest pusta, wtedy np gdyby VehData[i][owner] by?o puste, to ka?dy gracz b?dzie jego w?a?cicielem. Na wszelki wypadek lepiej to sprawdzi?. Poza tym, co gdy gracz zmieni nick? Do takich rzeczy lepiej u?ywa? ID z bazy danych, a je?li jej nie u?ywasz to lepiej zacz??.
baz? danych u?ywam jak najbardziej dobry pomys? mi podsun??e? O tym nie pomy?la?em
[ Dodano: 2018-09-23, 14:19 ]
Teraz mam problem, chc? za?adowa? pojazdy kt?re posiada gracz, no i generalnie tworz? p?tl? kt?ra b?dzie po kolei dodawa?a do tablicy dane.
Wygl?da to tak:
i generalnie mimo ?e gracz o danym uid posiada jeden pojazd wyskakuje mu ?e nie posiada pojazdu bo zmienna ilepojazdowposiada zawiera 0.
Nie rozumiem troch? co pr?bujesz zrobi?, kopiujesz warto?ci z VehData do PlayerCars tylko po co? Pro?ciej raczej zapisa? tylko id w tablicy na kt?rym jest dany pojazd.
Ja to mam zrobione tak:
Przy starcie serwera ?aduje wszystkie pojazdy do tablicy pvehData, kt?ra ma limit dajmy na to 250 (na mniejszym serwerze to przejdzie, na du?ym lepiej jest zrobi? ?adowanie pojazd?w z bazy dopiero wtedy gdy wchodzi gracz).
Dodatkowo mam tablic? vehicles na MAX_VEHICLES (2000) w kt?rej trzymam r??ne rzeczy dotycz?ce ka?dego pojazdu z osobna (czy to prywatnego czy tez normalnego), mi?dzy innymi trzymam tam privateVehID kt?re wynosi 0 gdy pojazd nie jest privem lub wynosi id z tablicy pvehData, w ten spos?b mam bardzo ?atwy i szybki dost?p do danych oboj?tnie jakiego pojazdu je?li jest prywatny. Oczywi?cie tak samo w pvehData trzymam jego prawdziwe sampowe id kt?rym mog? odwo?a? si? do tablicy vehicles.
Gdy gracz si? zaloguje, wyszukuje w tablicy pvehData takich pojazd?w, w kt?rych ownerID jest r?wny UID gracza i po prostu dodaj? ID znalezionego pojazdu do tablicy playerPVehs.
W ten spos?b mog? zrobi? np pvehData[playerPVehs[playerid][0]] i mam dane pierwszego priva nale??cego do tego gracza, a gdy gracz jedzie pojazdem mog? w ?atwy spos?b odwo?a? si? do tablicy pvehData przez pvehData[vehicles[GetPlayerVehicleID(playerid)][privateVehID]]
Oczywi?cie ?eby to wszystko mia?o r?ce i nogi trzeba dba? o poprawno?? danych i ich zerowanie, inaczej mo?na sobie namiesza? czy spowodowa? crashe/warningi.
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach