Skip to content
View in the app

A better way to browse. Learn more.

GTAGames.nl - De Nederlandse Grand Theft Auto Community!

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Spawn car d.m.v ini bestand

Ik ben bezig met een eigen car systeem, alleens als eerst wil ik te weten komen hoe ik kan zorgen dat er een auto spawnt door middel van het lezen van een ini bestand.

Dus wat ik heb gemaakt is:

new file[128];
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);
carid[playerid]= dini_Int(file, "CarID");
car[playerid] = dini_Int(file, "CarVehicle");
car[carid[playerid]] = CreateVehicle(car[playerid]);

Dit is een dikke fail, vooral bij deze regel:

car[carid[playerid]] = CreateVehicle(car[playerid]);

Wat ik probeer is:

de carid te laden in het ini bestand, dan spawnt hij die car en die car heet dus car[id].

Wat hulp om dit te fixen zou ik ook weer erg waarderen :)

Featured Replies

new file[128];

GetPlayerName(playerid, playername, sizeof(playername));

format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);

carid[playerid]= dini_Int(file, "CarID");

car[playerid] = dini_Int(file, "CarVehicle");

car[carid][playerid]] = CreateVehicle(car[playerid]);

car[carid][playerid]] = CreateVehicle(car[playerid]);

(code tags hierboven even weggelaten om de bbcodes actief te krijgen.)

Hierboven even aangeduid wat ik heb toegevoegd (geel) en doorstreept (geel) wat er weg moet, voor de zekerheid dat je niet het bovenstaande gewoon kopieerd zonder het aan te passen plaats ik het hieronder nog eens zonder die doorstreepte dingens:

new file[128];
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);
carid[playerid]= dini_Int(file, "CarID");
car[playerid] = dini_Int(file, "CarVehicle");
car[carid][playerid] = CreateVehicle(car[playerid]);

car[carid][playerid] = CreateVehicle(car[playerid]);

Edited by megadreams

new file[128];

GetPlayerName(playerid, playername, sizeof(playername));

format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);

carid[playerid]= dini_Int(file, "CarID");

car[playerid] = dini_Int(file, "CarVehicle");

car[carid][playerid]] = CreateVehicle(car[playerid]);

car[carid][playerid]] = CreateVehicle(car[playerid]);

(code tags hierboven even weggelaten om de bbcodes actief te krijgen.)

Hierboven even aangeduid wat ik heb toegevoegd (geel) en doorstreept (geel) wat er weg moet, voor de zekerheid dat je niet het bovenstaande gewoon kopieerd zonder het aan te passen plaats ik het hieronder nog eens zonder die doorstreepte dingens:

new file[128];
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);
carid[playerid]= dini_Int(file, "CarID");
car[playerid] = dini_Int(file, "CarVehicle");
car[carid][playerid] = CreateVehicle(car[playerid]);

car[carid][playerid] = CreateVehicle(car[playerid]);

De bedoeling is dat carid[playerid] dus van de playerid is. Als ik jouw code gebruik, krijg ik weer errors.

Zoals 'array must be indexed'.

Als ik dan new carid[128]; ofzo doe, zegt hij dat het bij een preceeding level is.

Als ik dan

new idx;

carid = idx; doe, zegt hij dat carid alweer geindext moet worden.

Als ik dan

carid[128] = idx; doe, zegt hij array index out of bounds bij carid[128] = idx;

Dus jah...

Ik heb het maar anders gedaan. Ik krijg geen errors, maar hij spawnt de car toch niet.

Dit is mijn code nu:

new file[128], i, car, cX, cY, cZ, cAngle, cColorP, cColorS, cResDelay, vehicle[128];
//Define
carid[playerid]= dini_Int(file, "CarID");
carnum[playerid] = dini_Int(file, "Car");
carX[playerid] = dini_Int(file, "CarX");
carY[playerid] = dini_Int(file, "CarY");
carZ[playerid] = dini_Int(file, "CarZ");
carAngle[playerid] = dini_Int(file, "CarAngle");
carColorP[playerid] = dini_Int(file, "CarColorP");
carColorS[playerid] = dini_Int(file, "CarColorS");
carResDelay[playerid] = dini_Int(file, "CarResDelay");
i = carid[playerid];
car = carnum[playerid];
cX = carX[playerid];
cY = carY[playerid];
cZ = carZ[playerid];
cAngle = carAngle[playerid];
cColorP = carColorP[playerid];
cColorS = carColorS[playerid];
cResDelay = carResDelay[playerid];
// Car spawn
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);
vehicle[i] = CreateVehicle(car, cX, cY, cZ, cAngle, cColorP, cColorS, cResDelay);

Omdat spawn posities van auto's Floats zijn, geen Integers.

Je moet dus gebruik maken van dini_Float(Set).

Omdat spawn posities van auto's Floats zijn, geen Integers.

Je moet dus gebruik maken van dini_Float(Set).

Dat was ik even vergeten. Dankje.

Maar het werkt nog steeds niet. Hij wil de auto niet spawnen.

Dit is mijn code:

new file[128], i, car, Float:cX, Float:cY, Float:cZ, Float:cAngle, cColorP, cColorS, vehicle[128];
//Define
GetPlayerName(playerid, playername, sizeof(playername));
format(file, sizeof(file), "\\CarSystem\\%s.ini", playername);
carid[playerid]= dini_Int(file, "CarID");
carnum[playerid] = dini_Int(file, "Car");
cX = dini_Float(file, "CarX");
cY = dini_Float(file, "CarY");
cZ = dini_Float(file, "CarZ");
cAngle = dini_Float(file, "CarAngle");
carColorP[playerid] = dini_Int(file, "CarColorP");
carColorS[playerid] = dini_Int(file, "CarColorS");
i = carid[playerid];
car = carnum[playerid];
cColorP = carColorP[playerid];
cColorS = carColorS[playerid];
// Car spawn
vehicle[i] = CreateVehicle(car, cX, cY, cZ, cAngle, cColorP, cColorS, 0);

Dit staat in mijn ini bestand:

CarID=12

Car=420

CarX=1780.105

CarY=-1860.396

CarZ=13.271

CarAngle= 269.02

CarColorP=-1

CarColorS=-1

Edited by Guest

  • 2 weeks later...

Weet iemand al iets?

Edit:

Zelf al opgelost.

Ik heb dus geen idee hoe ik kan zorgen dat als je de auto in gaat, dat het dan de owner laat zien. Maarja

Edited by Guest

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...

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.