Jump to content

Masini personale


Punct.

Recommended Posts

Salut. Recent am inceput sa-mi reverific niste sisteme, si am depistat o problema la masinile personale. Nu am idee cum sa explic problema, asa ca o sa ma exprim altfel.

 

Sistemul este facut dupa tutorialul lui Maurice de cand a aparut pe YouTube. L-am facut, am adaugat ceva comenzi(pentru ca in videoclip nu erau), dar intampin unele probleme. Am definit o variabila masinitotal in care am memorat numarul de masini din gamemode: new masinitotal = 328; Atunci cand secumpara o masina personala, se adauga in dealersip, iar masinitotal creste(masinitotal ++;). In functia OnGameModeInit, am adaugat intai masinile normale(job-uri, factiuni, eventuri, civil), apoi am apelat functia LCars care incarca masinile din baza de date. In aceasta functie, cand se creaza o masina din baza de date, creste si maisnitotal(masinitotal++;). Pana aici, mie cel putin, mi se pare totul OK. Problema intervine ca, atunci cand dau /stats, imi arata un numar total aiurea la textul cu id-ul masinii(ar trebuie sa scrie Masina: Da[329], dar scrie Masina: Da[657]).

Asa arata linia in care mi se formeaza textul:

format(st, sizeof(st), "Da[%d]", PlayerInfo[targetid][pCar]+masinitotal);

 

In concluzie, masinile nu se incarca cum vreau eu. Vreo solitie ca, dupa ce se adauga masinile din gamemode sa se incarce si cele din baza de date in continuare?

 

Ar mai trebui sa precizez, ca masinile in baza de date incep cu numerotarea de la 1. Ar fi o solutie sa incep sa le numerotez de la masinitotal?

Nu mai deschideti in pu*a mea servere de SA:MP !

Jucati-va pe cele care sunt !   Sunt suficiente !

Reguli de bun simt:

1. Nu faceti reclama unde nu trebuie !

2. Nu injurati ca la usa cortului !

3. Daca esti analfabeti, taci din gura !

4. Nu abuza de 'scuze', 'din greseala' !

 

My work ::: http://pastebin.com/VRNRcaAs

Link to comment
Share on other sites

Nu prea are sens ce spui tu, o varianta mai usoara ar fi sa le pui pe toate in baza de date, si sa le adaugi inca o coloana unde memorezi boolean daca sunt sau nu masini de la dealer, gen TRUE(1) pentru cele care sunt sau FALSE(0) daca nu sunt si la masinitotal faci increment daca este TRUE.

Link to comment
Share on other sites

In baza de date ai cumva coloana ce memoreaza ID masinii?

​da, dar memoreaza id-ul masinilor personale. gen:  prima masina personala are ID:1, a doua masina personala are ID:2.. etc

 

 

Nu mai deschideti in pu*a mea servere de SA:MP !

Jucati-va pe cele care sunt !   Sunt suficiente !

Reguli de bun simt:

1. Nu faceti reclama unde nu trebuie !

2. Nu injurati ca la usa cortului !

3. Daca esti analfabeti, taci din gura !

4. Nu abuza de 'scuze', 'din greseala' !

 

My work ::: http://pastebin.com/VRNRcaAs

Link to comment
Share on other sites

format(st, sizeof(st), "Da[%d]", PlayerInfo[targetid][pCar]+masinitotal);

Nu prea inteleg cum vrei sa folosesti codul asta. Daca sunt 300 de masini pe server playerului ii va fii afisat un anumit numar iar daca se fac 310 masini atunci va primi alt numar cand da /stats.

Imi poti explica cum ai gandit linia asta? Si ma refer in special la +masinitotal

Link to comment
Share on other sites

Ah..am inteles ce zici.

 

Variabila masinitotal se modifica cand se incarca masinile pe server, deci mereu retine numarul maxim de masini. Daca mai adaug acel PlayerInfo[playerid][pCar] ajunge la id-ul unui vehicul care nu exista.

 

Daca mai iau o variabila masinigamemode si o initializez cu numarul vehiculelor din gamemode, cand folosesc /masinilemele, ar trebui sa functioneze, nu?

 

Adica, masinigamemode are valoarea 329, si nu se mai modifica. Daca masina mea are ID:5 in baza de date, cand folosesc comanda, ar trebui sa-mi dea informatiile despre masina 329+5, care exista pentru ca s-a incarcat in LCars, corect?

 

 

Nu mai deschideti in pu*a mea servere de SA:MP !

Jucati-va pe cele care sunt !   Sunt suficiente !

Reguli de bun simt:

1. Nu faceti reclama unde nu trebuie !

2. Nu injurati ca la usa cortului !

3. Daca esti analfabeti, taci din gura !

4. Nu abuza de 'scuze', 'din greseala' !

 

My work ::: http://pastebin.com/VRNRcaAs

Link to comment
Share on other sites

Nu prea iti inteleg sistemul dar daca variabila masinigamemode ramane aceeasi presupun ca poti incerca cum ai zis tu. Cu toate astea eu iti propun sa pui totul in MySQL , si masinile private si cele de stat ( spawnate cu AddStaticVehicle ) .

Edited by Rappy
Link to comment
Share on other sites

Hmm.. o sa incerc si ideea asta, dar vreun sfat cum diferentiez masinile?

Adica, cand le am in gamemode sunt, de exemplu, politiev[1] = ... politiev[2] = ... .

Nu mai deschideti in pu*a mea servere de SA:MP !

Jucati-va pe cele care sunt !   Sunt suficiente !

Reguli de bun simt:

1. Nu faceti reclama unde nu trebuie !

2. Nu injurati ca la usa cortului !

3. Daca esti analfabeti, taci din gura !

4. Nu abuza de 'scuze', 'din greseala' !

 

My work ::: http://pastebin.com/VRNRcaAs

Link to comment
Share on other sites

Da, daca vrei sa le faci pe MySQL poti pune masinile intr-o tabela de genul "vehicles" si in tabela aceea poti adauga o coloana numita "Owned".

Daca Owned este 0 inseamna ca masina este statica.

Daca Owned este 1 inseamna ca este masina privata.

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.