Pretraga

Pritisnite Enter za pretragu ili Escape za zatvaranje

Zaključano

Problem sa dialogom

Započeo iv0dev
pre 1 nedelju
83
pregleda
20
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
ivanboskic1
Underboss
46
pre 1 nedelju

Naslov problema*: Imam problem sa dialogom za kupovinu vozila i ako odustane neće da ga izbaci iz tog izložbenog vozila
Opis problema*: Napravio sam car ownership sistem tako da kad netko uđe u izložbeno vozilo da kupi takav model vozila da mu se stvori to vozilo negdje na mapi i kad kliknem dugme Izadji ako ne želim kupiti taj model tj vozilo nešto neće da ga izbaci iz vozila
Pokušaj rešavanja*: Probavao sam sa tajmerom, i probao sam sa test komandom /izbaci i sa komandom radi, a u dialogu neće i sa tajmerom isto neće
Deo programskog koda*: https://pastebin.com/cPXicBjS
Debug informacije: //
Fotografija problema u igri: Nemam šta slikat, opisao sam problem detaljno
Korišćene biblioteke (includes): //
Dodatne informacije: //

Poslednji put izmenio iv0dev pre 1 nedelju

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

nvn.pwn
Rookie
2
pre 1 nedelju

if (!response) return 1; probaj ovo izbrisat jer mozda blokira "izadji" dugme , nadam se da cu pomoci

ivanboskic1
Underboss
46
pre 1 nedelju
asterix__ wrote on February 25, 2026, 3:19 pm:

if (!response) return 1; probaj ovo izbrisat jer mozda blokira "izadji" dugme , nadam se da cu pomoci

Hvala puno, to je bio problem

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

ivanboskic1
Underboss
46
pre 1 nedelju

Ovako, sad imam novi problem, a to je da mi se vozila spawnaju na cestu, a postavio sam pozicije da se spawnaju u auto salonu

Evo kod i za to

//ongamemodeinit

for(new i = 0; i < sizeof(SalonVozila); i++) {
        IzlozbenoVoziloID[i] = CreateVehicle(SalonVozila[i][sModel], SalonVozila[i][sPos][0], SalonVozila[i][sPos][1], SalonVozila[i][sPos][2], SalonVozila[i][sPos][3], 1, 1, -1);
        // Isključujemo motor i zaključavamo ih da ih niko ne ukrade iz salona
        new engine, lights, alarm, doors, bonnet, boot, objective;
        GetVehicleParamsEx(IzlozbenoVoziloID[i], engine, lights, alarm, doors, bonnet, boot, objective);
        SetVehicleParamsEx(IzlozbenoVoziloID[i], 0, 0, 0, 0, 0, 0, 0); 
    }

Poslednji put izmenio iv0dev pre 1 nedelju

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

Vedad.pwn
Underboss
36
pre 1 nedelju
printf("(debug) X:%f Y:%f Z:%f A:%f", SalonVozila[i][sPos][0], SalonVozila[i][sPos][1], SalonVozila[i][sPos][2], SalonVozila[i][sPos][3])

Dodaj iznad ovog createvehicle, takodje pokazi dio gdje cuvas SalonVozila[][sPos]

ivanboskic1
Underboss
46
pre 1 nedelju
cozmic wrote on February 25, 2026, 6:34 pm:
printf("(debug) X:%f Y:%f Z:%f A:%f", SalonVozila[i][sPos][0], SalonVozila[i][sPos][1], SalonVozila[i][sPos][2], SalonVozila[i][sPos][3])

Dodaj iznad ovog createvehicle, takodje pokazi dio gdje cuvas SalonVozila[][sPos]

Evo kako ih čuvam

new const SalonVozila[][E_SALON_DATA] = {
    // model vozila, kordinate
    {411, 80000,  {549.3542, -1300.8442, 17.2441, 50.0000}},   // Infernus
    {451, 100000, {556.1297, -1300.7637, 17.2441, 50.0000}},   // Turismo
    {506, 150000, {563.7747, -1300.7983, 17.2441, 50.0000}},   // SuperGT
    {559, 200000, {527.9250, -1300.9512, 17.2441, -50.0000}},  // Jester
    {560, 250000, {520.5528, -1300.7878, 17.2441, -50.0000}},  // Sultan
    {562, 300000, {535.0543, -1300.9180, 17.2441, -50.0000}}   // Elegy
};

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

ivanboskic1
Underboss
46
pre 1 nedelju
cozmic wrote on February 25, 2026, 6:34 pm:
printf("(debug) X:%f Y:%f Z:%f A:%f", SalonVozila[i][sPos][0], SalonVozila[i][sPos][1], SalonVozila[i][sPos][2], SalonVozila[i][sPos][3])

Dodaj iznad ovog createvehicle, takodje pokazi dio gdje cuvas SalonVozila[][sPos]

Stvar je u tome što se nekad dobro spawnaju, a nekad kao da ih ludilo uhvati

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

Vedad.pwn
Underboss
36
pre 1 nedelju

Pošalji e_salon_data a i dodaj to i pošalji output

ivanboskic1
Underboss
46
pre 1 nedelju
cozmic wrote on February 25, 2026, 7:16 pm:

Pošalji e_salon_data a i dodaj to i pošalji output

enum E_SALON_DATA {
    sModel,
    sCijena,
    Float:sPos[4] // X, Y, Z, Angle
}

[19:57:04] (debug) X:549.354187 Y:-1300.844238 Z:17.244100 A:50.000000

[19:57:04] (debug) X:556.129699 Y:-1300.763671 Z:17.244100 A:50.000000

[19:57:04] (debug) X:563.774719 Y:-1300.798339 Z:17.244100 A:50.000000

[19:57:04] (debug) X:527.924987 Y:-1300.951171 Z:17.244100 A:-50.000000

[19:57:04] (debug) X:520.552795 Y:-1300.787841 Z:17.244100 A:-50.000000

[19:57:04] (debug) X:535.054321 Y:-1300.917968 Z:17.244100 A:-50.000000

Sada je okej, al kasnije kad odem /q i kada ponovno uđem na server nekada se pojebe s oproštenjem na izrazu

Poslednji put izmenio iv0dev pre 1 nedelju

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

Foxyyy
Made Man
34
pre 1 nedelju

Vjerovatno ti je uzrok redoslijed vozila se kreiraju PRIJE nego što su SalonVozila[i][sPos] uopće učitani.

Prvo ucitaj/init SalonVozila

    LoadSalonVozila();   // ili kako god 

Onda kreiraj vozila

  for (new i = 0; i < sizeof(SalonVozila); i++) {

        IzlozbenoVoziloID[i] = CreateVehicle(

            SalonVozila[i][sModel],

            SalonVozila[i][sPos][0],

            SalonVozila[i][sPos][1],

            SalonVozila[i][sPos][2],

            SalonVozila[i][sPos][3],

            1, 1, -1

        );

        new engine, lights, alarm, doors, bonnet, boot, objective;

        GetVehicleParamsEx(IzlozbenoVoziloID[i], engine, lights, alarm, doors, bonnet, boot, objective);

        SetVehicleParamsEx(IzlozbenoVoziloID[i], 0, 0, 0, 0, 0, 0, 0);

    }

Ako i dalje bude problem, probaj kreirati vozila s malom odgodom (svijet se potpuno učita):

U OnGameModeInit, umjesto direktno for petlje:

    SetTimer("CreateSalonVehicles", 1500, false);

Nova funkcija negdje u kodu dodaj

    forward CreateSalonVehicles();

    public CreateSalonVehicles() {

        for (new i = 0; i < sizeof(SalonVozila); i++) {

            IzlozbenoVoziloID[i] = CreateVehicle(SalonVozila[i][sModel], SalonVozila[i][sPos][0], SalonVozila[i][sPos][1], SalonVozila[i][sPos][2], SalonVozila[i][sPos][3], 1, 1, -1);

            new engine, lights, alarm, doors, bonnet, boot, objective;

            GetVehicleParamsEx(IzlozbenoVoziloID[i], engine, lights, alarm, doors, bonnet, boot, objective);

            SetVehicleParamsEx(IzlozbenoVoziloID[i], 0, 0, 0, 0, 0, 0, 0);

        }

    }

Foxyyy
Made Man
34
pre 1 nedelju

@iv0dev

Ako se i dalje nešto pobrka provjeri da u OnPlayerConnect / OnPlayerDisconnect NE unistavas i NE ponovo ne kreiraš izložbena vozila (IzlozbenoVoziloID) jer ta vozila kreiraš samo jednom u OnGameModeInit.

ivanboskic1
Underboss
46
pre 1 nedelju
sparrowww.aMx wrote on February 25, 2026, 8:26 pm:

Vjerovatno ti je uzrok redoslijed vozila se kreiraju PRIJE nego što su SalonVozila[i][sPos] uopće učitani.

Prvo ucitaj/init SalonVozila

    LoadSalonVozila();   // ili kako god 

Onda kreiraj vozila

  for (new i = 0; i < sizeof(SalonVozila); i++) {

        IzlozbenoVoziloID[i] = CreateVehicle(

            SalonVozila[i][sModel],

            SalonVozila[i][sPos][0],

            SalonVozila[i][sPos][1],

            SalonVozila[i][sPos][2],

            SalonVozila[i][sPos][3],

            1, 1, -1

        );

        new engine, lights, alarm, doors, bonnet, boot, objective;

        GetVehicleParamsEx(IzlozbenoVoziloID[i], engine, lights, alarm, doors, bonnet, boot, objective);

        SetVehicleParamsEx(IzlozbenoVoziloID[i], 0, 0, 0, 0, 0, 0, 0);

    }

Ako i dalje bude problem, probaj kreirati vozila s malom odgodom (svijet se potpuno učita):

U OnGameModeInit, umjesto direktno for petlje:

    SetTimer("CreateSalonVehicles", 1500, false);

Nova funkcija negdje u kodu dodaj

    forward CreateSalonVehicles();

    public CreateSalonVehicles() {

        for (new i = 0; i < sizeof(SalonVozila); i++) {

            IzlozbenoVoziloID[i] = CreateVehicle(SalonVozila[i][sModel], SalonVozila[i][sPos][0], SalonVozila[i][sPos][1], SalonVozila[i][sPos][2], SalonVozila[i][sPos][3], 1, 1, -1);

            new engine, lights, alarm, doors, bonnet, boot, objective;

            GetVehicleParamsEx(IzlozbenoVoziloID[i], engine, lights, alarm, doors, bonnet, boot, objective);

            SetVehicleParamsEx(IzlozbenoVoziloID[i], 0, 0, 0, 0, 0, 0, 0);

        }

    }

Ali vidio si da ja učitavam vozila preko new zato sam u for petlju stavio SalonVozila

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

Foxyyy
Made Man
34
pre 1 nedelju

Dobro da ali problem moze biti da u OnGameModeInit CreateVehicle zovne dok svijet jos nije skroz ucitan pa ti je rjesenje da izlozbena vozila kreiraj iz timera nakon par sec

pa onda umjesto umjesto for petlje stavi samo SetTimer("CreateSalonVehicles", 1500, false);

OnGameModeInit se ne izvodi ponovo kad se igrac vrati izlozbena vozila ostaju.

Ali provjeri da u OnPlayerConnect i OnPlayerDisconnect NIGDJE ne unistavas i ne kreiraš iznova IzlozbenoVoziloID,ta vozila samo u Init (ili u tom timeru) jednom. Ako negdje imas DestroyVehicle(IzlozbenoVoziloID[i]) ili opet CreateVehicle za salon kad se netko spoji/odspoji, to moze napraviti haos.

Takoder kad ucitavas igracu njegova kupljena vozila (pri loginu), CreateVehicle za njih mora koristiti VehicleData[id][vPos] ucitane iz savea, ne fiksne brojeve inace ce mu se auti spawnati na krivom mjestu kad se vrati.

ivanboskic1
Underboss
46
pre 1 nedelju
sparrowww.aMx wrote on February 25, 2026, 9:00 pm:

Dobro da ali problem moze biti da u OnGameModeInit CreateVehicle zovne dok svijet jos nije skroz ucitan pa ti je rjesenje da izlozbena vozila kreiraj iz timera nakon par sec

pa onda umjesto umjesto for petlje stavi samo SetTimer("CreateSalonVehicles", 1500, false);

OnGameModeInit se ne izvodi ponovo kad se igrac vrati izlozbena vozila ostaju.

Ali provjeri da u OnPlayerConnect i OnPlayerDisconnect NIGDJE ne unistavas i ne kreiraš iznova IzlozbenoVoziloID,ta vozila samo u Init (ili u tom timeru) jednom. Ako negdje imas DestroyVehicle(IzlozbenoVoziloID[i]) ili opet CreateVehicle za salon kad se netko spoji/odspoji, to moze napraviti haos.

Takoder kad ucitavas igracu njegova kupljena vozila (pri loginu), CreateVehicle za njih mora koristiti VehicleData[id][vPos] ucitane iz savea, ne fiksne brojeve inace ce mu se auti spawnati na krivom mjestu kad se vrati.

Napravio sam kroz tajmer kako si mi rekao i za sada nema problema, ako bude javit ću ti se

Ja sam Ivo Dev, bager koji razgrće sve oko skripti – poznat i kao Zbager

Foxyyy
Made Man
34
pre 1 nedelju
iv0dev wrote on February 25, 2026, 9:20 pm:
sparrowww.aMx wrote on February 25, 2026, 9:00 pm:

Dobro da ali problem moze biti da u OnGameModeInit CreateVehicle zovne dok svijet jos nije skroz ucitan pa ti je rjesenje da izlozbena vozila kreiraj iz timera nakon par sec

pa onda umjesto umjesto for petlje stavi samo SetTimer("CreateSalonVehicles", 1500, false);

OnGameModeInit se ne izvodi ponovo kad se igrac vrati izlozbena vozila ostaju.

Ali provjeri da u OnPlayerConnect i OnPlayerDisconnect NIGDJE ne unistavas i ne kreiraš iznova IzlozbenoVoziloID,ta vozila samo u Init (ili u tom timeru) jednom. Ako negdje imas DestroyVehicle(IzlozbenoVoziloID[i]) ili opet CreateVehicle za salon kad se netko spoji/odspoji, to moze napraviti haos.

Takoder kad ucitavas igracu njegova kupljena vozila (pri loginu), CreateVehicle za njih mora koristiti VehicleData[id][vPos] ucitane iz savea, ne fiksne brojeve inace ce mu se auti spawnati na krivom mjestu kad se vrati.

Napravio sam kroz tajmer kako si mi rekao i za sada nema problema, ako bude javit ću ti se

Nadamo se da ih neće biti 🙂

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava