LeetRomania Posted April 21, 2017 Posted April 21, 2017 (edited) Salutare, doresc cand un player se conecteaza pe server, masinile personale sa i se spawneze. Eu am ceva de genul cand se conecteaza: if(playerVariables[playerid][pCarKey1] != 0) SpawnPlayerCar(playerVariables[playerid][pCarKey1]); iar functia SpawnPlayerCar este asta: stock SpawnPlayerCar(dbid) { if(dbid != 0) { new car = CreateVehicle(carVariables[dbid][cModel], carVariables[dbid][cPos][0], carVariables[dbid][cPos][1], carVariables[dbid][cPos][2], carVariables[dbid][cRotate], carVariables[dbid][cColour][0], carVariables[dbid][cColour][1], -1); vPersonal[car] = dbid; } return 1; } Asta e ce am facut eu.. Problema este ca imi recunoaste masina, cand intru in ea zice ca este a mea.. doar ca o spawneaza undeva in camp, culorile nu sunt cele din baza de date. Aveti idee ce are? Edited April 21, 2017 by LeetRomania
0 kwnx Posted April 21, 2017 Posted April 21, 2017 Serverul nu incarca informatiile din baza de date asupra vehiculelor personale.
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 1 minute ago, KnowN said: Serverul nu incarca informatiile din baza de date asupra vehiculelor personale. Incarca.. Crezi ca poti sa ma ajuti?
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 Fai un debug pentru carVariables[dbid][cPos][0], carVariables[dbid][cPos][1], carVariables[dbid][cPos][2], carVariables[dbid][cRotate] (adica sa afisezi ce valori au).
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 14 minutes ago, WopsS said: Fai un debug pentru carVariables[dbid][cPos][0], carVariables[dbid][cPos][1], carVariables[dbid][cPos][2], carVariables[dbid][cRotate] (adica sa afisezi ce valori au). Sper ca am facut bine. Nu stiu exact daca asa se face un debug. printf("%f\n%f\n%f\n%f\n", carVariables[dbid][cPos][0], carVariables[dbid][cPos][1], carVariables[dbid][cPos][2], carVariables[dbid][cRotate]); Cand m-am conectat pe sv, in consola apare asa 1076.642456 1076.642456 1076.642456 0.313924
0 kwnx Posted April 21, 2017 Posted April 21, 2017 2 minutes ago, LeetRomania said: Sper ca am facut bine. Nu stiu exact daca asa se face un debug. printf("%f\n%f\n%f\n%f\n", carVariables[dbid][cPos][0], carVariables[dbid][cPos][1], carVariables[dbid][cPos][2], carVariables[dbid][cRotate]); Cand m-am conectat pe sv, in consola apare asa 1076.642456 1076.642456 1076.642456 0.313924 Coordonatele de pe camp
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 Just now, KnowN said: Coordonatele de pe camp Da. E ciudat totusi. Ii dau /park sa zicem in fata la dealership, se salveaza corect in baza de date iar cand ma conectez pe sv masina se duce in camp.
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 Arata-ne codul care incarca vehiculele cand te conectezi pe server.
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 12 minutes ago, WopsS said: Arata-ne codul care incarca vehiculele cand te conectezi pe server. if(playerVariables[playerid][pCarKey1] != 0) SpawnPlayerCar(playerVariables[playerid][pCarKey1]); asta il folosesc ca sa spawneze masina..
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 Eu ma refer cum incarci vehiculul din baza de date, nu cum il spawnezi in joc.
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 Just now, WopsS said: Eu ma refer cum incarci vehiculul din baza de date, nu cum il spawnezi in joc. public IniVehicule() { new Cache: result15 = mysql_query (handle, "SELECT * FROM `vehicule` ORDER BY `vehicule`.`vID` ASC"); for (new i, j = cache_get_row_count ( ); i != j; ++i ) { new x; cache_get_field_content(i, "vID", result); x = strval(result); cache_get_field_content(i, "vModel", result); carVariables[x][cModel] = strval(result); cache_get_field_content(i, "vOwnerID", result); carVariables[x][cOwnerID] = strval(result); cache_get_field_content(i, "vKM", result); carVariables[x][cKM] = strval(result); cache_get_field_content(i, "vDays", result); carVariables[x][cDays] = strval(result); cache_get_field_content(i, "vLock", result); carVariables[x][cLock] = strval(result); cache_get_field_content(i, "vText", result); format(carVariables[x][cText], 64, result); cache_get_field_content(i, "vPosX", result); carVariables[x][cPos][0] = floatstr(result); cache_get_field_content(i, "vPosY", result); carVariables[x][cPos][1] = floatstr(result); cache_get_field_content(i, "vPosZ", result); carVariables[x][cPos][2] = floatstr(result); cache_get_field_content(i, "vPosAngle", result); carVariables[x][cRotate] = floatstr(result); cache_get_field_content(i, "vOwnerName", result); format(carVariables[x][cOwner], MAX_PLAYER_NAME, result); cache_get_field_content(i, "vPlate", result); format(carVariables[x][cPlate], 10, result); cache_get_field_content(i, "vColour1", result); carVariables[x][cColour][0] = strval(result); cache_get_field_content(i, "vColour2", result); carVariables[x][cColour][1] = strval(result); cache_get_field_content(i, "vVIP", result); carVariables[x][cVIP] = strval(result); masini = x; systemVariables[PersonalCars]++; } printf("[script] %d personal cars loaded.", systemVariables[PersonalCars]); cache_delete(result15); return 1; }
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 In loc de cache_get_field_content(i, "vPosX", result); carVariables[x][cPos][0] = floatstr(result); poti sa folosesti cache_get_field_content_float. Pune o conditie sa afisezi coordonatele cand variabila x este egala cu ID-ul masinii tale.
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 2 minutes ago, WopsS said: In loc de cache_get_field_content(i, "vPosX", result); carVariables[x][cPos][0] = floatstr(result); poti sa folosesti cache_get_field_content_float. Pune o conditie sa afisezi coordonatele cand variabila x este egala cu ID-ul masinii tale. Am inlocuit la toate care aveau float cache_get_field_content_float(i, "vPosX", result); carVariables[x][cPos][0] = floatstr(result); cache_get_field_content_float(i, "vPosY", result); carVariables[x][cPos][1] = floatstr(result); cache_get_field_content_float(i, "vPosZ", result); carVariables[x][cPos][2] = floatstr(result); cache_get_field_content_float(i, "vPosAngle", result); carVariables[x][cRotate] = floatstr(result); unde ar trebui sa pun conditia aia?
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 Nu iti mai trebuie carVariables[x][cPos][0] = floatstr(result); Trebuie sa o pui dupa masini = x;
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 (edited) 3 minutes ago, WopsS said: Nu iti mai trebuie carVariables[x][cPos][0] = floatstr(result); Trebuie sa o pui dupa masini = x; Am facut asa: cache_get_field_content(i, "vID", result); x = strval(result); masini = x; cache_get_field_content(i, "vModel", result); carVariables[x][cModel] = strval(result); cache_get_field_content(i, "vOwnerID", result); carVariables[x][cOwnerID] = strval(result); cache_get_field_content(i, "vKM", result); carVariables[x][cKM] = strval(result); cache_get_field_content(i, "vDays", result); carVariables[x][cDays] = strval(result); cache_get_field_content(i, "vLock", result); carVariables[x][cLock] = strval(result); cache_get_field_content(i, "vText", result); format(carVariables[x][cText], 64, result); cache_get_field_content(i, "vPosX", result); carVariables[x][cPos][0] = floatstr(result); cache_get_field_content(i, "vPosY", result); carVariables[x][cPos][1] = floatstr(result); cache_get_field_content(i, "vPosZ", result); carVariables[x][cPos][2] = floatstr(result); cache_get_field_content(i, "vPosAngle", result); carVariables[x][cRotate] = floatstr(result); cache_get_field_content(i, "vOwnerName", result); format(carVariables[x][cOwner], MAX_PLAYER_NAME, result); cache_get_field_content(i, "vPlate", result); format(carVariables[x][cPlate], 10, result); cache_get_field_content(i, "vColour1", result); carVariables[x][cColour][0] = strval(result); cache_get_field_content(i, "vColour2", result); carVariables[x][cColour][1] = strval(result); cache_get_field_content(i, "vVIP", result); carVariables[x][cVIP] = strval(result); Am dat rr sa testez.. si este la fel.. tot in camp. Edited April 21, 2017 by LeetRomania
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 Eu zic sa afisezi positia masinii nu sa schimbi ordinea codului. Adica sa verifici daca x este egal cu ID-ul masinii personale din baza de date, dupa sa afisezi pozitia incarcata si sa ne arati ce valoare au.
0 LeetRomania Posted April 21, 2017 Author Posted April 21, 2017 10 minutes ago, WopsS said: Eu zic sa afisezi positia masinii nu sa schimbi ordinea codului. Adica sa verifici daca x este egal cu ID-ul masinii personale din baza de date, dupa sa afisezi pozitia incarcata si sa ne arati ce valoare au. Poti sa imi explici mai clar.. Scuze, dar chiar nu inteleg ce trebuie sa fac..
0 Administrator WopsS Posted April 21, 2017 Administrator Posted April 21, 2017 Ti-am spus mai sus. Adica sa verifici daca x este egal cu ID-ul masinii personale din baza de date, daca este egal sa afisezi pozitia vehiculului si sa ne arati ce valoare au.
0 AddisoN Posted April 21, 2017 Posted April 21, 2017 Uite un exemplu, sa zicem ca masina la care vrei sa verifici are id in db= 7 => x=7 If (x==7) printf (coordonate); verifici daca ce e in db + ce apare de la ambele printf-uri in consola sunt acelasi.
Question
LeetRomania
Salutare, doresc cand un player se conecteaza pe server, masinile personale sa i se spawneze.
Eu am ceva de genul cand se conecteaza:
iar functia SpawnPlayerCar este asta:
Asta e ce am facut eu.. Problema este ca imi recunoaste masina, cand intru in ea zice ca este a mea.. doar ca o spawneaza undeva in camp, culorile nu sunt cele din baza de date. Aveti idee ce are?
Edited by LeetRomania19 answers to this question
Recommended Posts