Wysłany: 2013-01-11, 20:18
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
Chc? zrobi? tablice kt?ra b?dzie przechowywa?a dane czy pojazd jest zespawnowany czy te? nie. Mo?e mi kto? z tym pom?c? Chcia?bym to zrobi? przy pomocy UID. Korzystam z MySQL, dane odczytuje w taki spos?b:
Kod:
format(str, sizeof(str), "SELECT * FROM `Vehicles` WHERE `Owner` = '%s' AND `UID` = '%d'", PlayerName(playerid), PlayerStats[playerid][CarFirst]);
mysql_query(str);
mysql_store_result();
mysql_fetch_row_format(str, "|");
sscanf(str, "p<|>ds[25]s[15]ds[32]ddffff", vUId, vOwner, vName, vModel, vPlate, vColor[0], vColor[1], vPos[0], vPos[1], vPos[2], vPos[3]);
Wysłany: 2013-01-11, 22:17
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Kod: new vehicleuid[1000] = -1;
Jak tworzysz pojazd
Kod:
Warunek
Kod: if(vehicleuid[...] == -1) //nie jest zrespawnowany
else //jest zrespawnowany
Wysłany: 2013-01-15, 13:22
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
No ok, rozumiem ale jak zrobi? to UID na max pojazd?w, pobieram do zmiennej vehicleuid i wtedy vehicleuid[vehicleuid+1]?
Wysłany: 2013-01-15, 14:05
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Nie rozumiem, chcesz zrobi?, ?eby ka?dy tworzony pojazd mia? UID?
Wysłany: 2013-01-20, 22:59
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
Refresh: Nadal nie umiem si? z tym problemem upora?. Nie wiem w jaki spos?b to zrobi?, my?l?, my?l? i nie umiem wymy?li? na jakiej zasadzie to dzia?a. Chc? zrobi? co? takiego ?e mam t? zmienn? na max pojazd?w no i chc? przyczepi? tablic? z vModel.
Wysłany: 2013-01-20, 23:11
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Ja nie wiem o co dok?adnie chodzi, bo je?li zwyk?e UID pojazdu, to ?adna filozofia.
Kod: new cars[20] = -1, privcars;
cars[privcars] = AddStaticVehicle(...);
privcars++;
Wysłany: 2013-01-20, 23:21
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
Chodzi o tak? zmienn? VehicleStats[vVehicleid][vSpawned] i to vVehicleid na MAX POJAZD?W po to aby si? nie miesza?y dane kt?re b?d? m?g? sobie przypisa? do pojazdu. Z MAX_PLAYERS jest ?atwo bo korzystam praktycznie zawsze z playerid np. PlayerStats[playerid][Skin].
Wysłany: 2013-01-21, 12:04
Redox1133
Fan PAWN
Wiek: 31 Na forum: 6771 dni Posty: 63
Piwa : 720
vVehicleid to jest id pojazdu, wi?c mo?esz je pobra? funkcj? GetPlayerVehicleID (je?li gracz jest w tym poje?dzie).
Wysłany: 2013-01-21, 13:06
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Nie r?b na enumach, bo jest to bardziej rozbudowana tablica ni? zwyk?a i pobiera wi?cej pami?ci RAM, ale jak chcesz.
Kod: enum carsInfo
{
CarID,
SPawned
}
new cars[1000][carsInfo] = -1, privcars;
cars[privcars][CarID] = AddStaticVehicle(...);
cars[cars[privcars][CarID]][Spawned] = 1; // utworzony samochod oznaczamy jako zespawnowany
privcars++;
Co? na wz?r tego
Wysłany: 2013-01-21, 13:15
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
Oczywi?cie w enumach b?d? mia? wi?cej funkcji. Mo?esz r?wnie? mi poda? w jaki spos?b najlepiej, optymalnie to zrobi?.
Wysłany: 2013-01-21, 14:12
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Najlepiej to robi? na zwyk?ych tablicach, wtedy nie s? one tak rozbudowane i pobieraj? mniej pami?ci.
Kod: new spawned[1000] = -1, carid[1000] = -1, privcars;
carid[privcars] = AddStaticVehicle(...);
spawned[carid[privcars]] = 1; // utworzony samochod oznaczamy jako zespawnowany
privcars++;
Wysłany: 2013-01-23, 17:00
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
Okey, dalej sobie poradz?. Ostatnie pytanko: Jak to jest z danymi gracza? Lepiej je przechowywa? w tablicy czy enumatorze?
Wysłany: 2013-01-23, 18:23
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Enumerator to jest to samo co tablica, tylko ma bardziej rozwini?t? struktur? podczas jej tworzenia. Ja u?ywam zwyk?ych tablic.
Wysłany: 2013-01-26, 15:47
Wafelowski
Wiek: 29 Na forum: 5347 dni Posty: 428
Piwa : 100
Dobra, teraz tak. Stworzy?em tablice do kt?rych ma by? zapisana pozycja X Y Z A no i s?k w tym, ?e jak p??niej z niej korzystam to otrzymuje wynik X 0.0 Y 0.0 Z 0.0. Tablice s? tworzone na samej g?rze mapy. Jest to do systemu dom?w. A tak wygl?da kod:
Kod:
mysql_fetch_row(Query, "|");
sscanf(Query, "p<|>dds[24]s[30]ddffffffff", House, hActive[House], hOwner[House], hName[House], hIntek[House], hPrice[House], hEnterX[House], hEnterY[House], hEnterZ[House], hEnterA[House], hExitX[House], hExitY[House], hExitZ[House], hExitA[House]);
printf(Query);
printf("X: %.2f Y: %.2f Z: %.2f", hEnterX[House], hEnterY[House], hEnterZ[House]);
CreateDynamicPickup(1273, 2, hEnterX[House], hEnterY[House], hEnterZ[House], -1, -1, -1, 50.0);
CreateDynamicMapIconEx(hEnterX[House], hEnterY[House], hEnterZ[House], 31, -1, MAPICON_LOCAL, 50.0);
SetPlayerPos(playerid, hEnterX[House], hEnterY[House], hEnterZ[House]);
hActive[House] = 1;
Wysłany: 2013-01-26, 16:08
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Poka? zapytanie. W bazie danych masz zapisane te pozycje? Poka? co masz w logach po tym
Kod:
Tagi: pojazdy
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: