Jump to content

[SA-MP|Mini-Tutorial] Lussen


Jarno

Recommended Posts

SA-MP Mini-tutorial



Lussen

new count; // We maken de counter van de lus

// Hierna maken we de lus die 5 berichten print in de server. Dus de 5 in de regel hieronder is hoeveel keer de code eronder herhaald moet worden.
for(count = 0; count <= 5; count++)
{
 print("Ik zit in een lus!!!");
}

Enjoy :puh:

Link to comment
Delen op andere websites

  • 11 maanden later...

SA-MP Mini-tutorial



Lussen

new count; // We maken de counter van de lus

// Hierna maken we de lus die 5 berichten print in de server. Dus de 5 in de regel hieronder is hoeveel keer de code eronder herhaald moet worden.
for(count = 0; count <= 5; count++)
{
 print("Ik zit in een lus!!!");
}

Enjoy :puh:

wat is een lus ?

Link to comment
Delen op andere websites

SA-MP Mini-tutorial



Lussen

new count; // We maken de counter van de lus

// Hierna maken we de lus die 5 berichten print in de server. Dus de 5 in de regel hieronder is hoeveel keer de code eronder herhaald moet worden.
for(count = 0; count <= 5; count++)
{
 print("Ik zit in een lus!!!");
}

Enjoy :puh:

wat is een lus ?

Een lus wordt net zovaak uitgevoerd totdat aan een bepaald voorwaarde voldaan word.

In de lus van jarno word dus 5 keer "Ik zit in een lus!!!" geprint. Eerst wordt een variabla gemaakt (count) en de waarde daarvan word op 0 gezet, daarna kijkt de lus of de waarde kleiner of gelijk aan 5 is, is dit het geval word de instructie uitgevoerd anders niet. Wordt de instructie uitgevoerd word count met 1 verhoogd.... enz...

Link to comment
Delen op andere websites

Stel: Ik wil een lus hebben van "Henk(1)" tot "Henk(20)", dan doe ik dat dus zo:

new count; // We maken de counter van de lus

// Hierna maken we de lus die 5 berichten print in de server. Dus de 5 in de regel hieronder is hoeveel keer de code eronder herhaald moet worden.
for(count = 1; count <= 20; count++)
{
 print("Henk(count)");
}

Nu krijg je dus een rijtje, Henk(1, Henk(2), Henk(3), etc. tot en met Henk(20). Maar ik wil dat bepaalde cijfers er niet in komen, bijvoorbeeld het nummer 3, 5, 11, 12, 15 en 19, hoe doe ik dit dan? Ik wil namelijk een reeks voertuigen in een rij naast elkaar spawnen, álle ID's van verschillende voertuigen (ik gebruik nu het Spawn-vijf-voertuigen-op-een-rij-script van Jarno), ik wil dus twéé counts gebruiken..:

new Float:carY = 2606.451; // (Float/Single) De Y positie waar je wilt waar de rij begint.
new count; // (Integer) Gebruiken voor de lus

// BMX
for(count = 0; count <= 5; count++)

for(count2 = 400; count2 <= 611; count++)

{
 // AddStaticVehicle(WagenID,PositieX,PositieY,PositieZ,Rotatie,Kleur1,Kleur2);
 AddStaticVehicle(count2,-1422.32,bikeY,55.8,270.0,-1,-1); // Spawn het voertuig
 carY += 8; // Stop bij bikeY +8 zodat de volgende BMX niet op dezelfde plek staat.
}

Als ik dit zo doe, krijg ik dan een rijtje met voertuigen met ID 400 t/m 611 op een rij waarvan de voertuigen steeds 8 y's zijn opgeschoven?

En dan de vraag: Hoe scirpt ik dan dat hij bijvoorbeeld de ID's 404, 405, 406, 432, 529 en 601 overslaat?

Bewerkt: door Puma
Link to comment
Delen op andere websites

@ Je eerste voorbeeld (met Henk erin) moet je ipv print("Henk(count)"); , printf("Henk(%d)", count) gebruiken.

Als je vehicle script zo is zal je 5 rijen autos krijgen met als id 400 t/m 611, waardoor je script zal crashen, omdat je over het vehicle limiet gaat. @ je vraag: Om die paar ids er niet in te stoppen zou ik die in een array proppen, kijken wanneer count gelijk is aan een van die waarden en zoja, dan niks doen :>

eg:

new i;
new Float:Y=2606.451;
new forbidVehIDs[5] = { 404, 405, 406, 432, 529, 601 };
new bleh;

for(i=400; i<=611; i++) {
for(new j=0; j<5; j++ ) {
if(i==forbidVehIDs[j]) {
bleh=1;
}
}
if(bleh==0) {
AddStaticVehicle(i,-1422.32,Y,55.8,270.0,-1,-1);
Y+= 8.0;
}
bleh=0;
}

Niet getest, gewoon een voorbeeldje en ook niet perfect gecoded, komt omdat ik moe ben en net uit school kom :puh:

Link to comment
Delen op andere websites

Yay, bedankt! Als ik dit dus in m'n script zet (en de coördinaten en de 'forbidden id's' verander), zou ik dus één lange rij met voertuigen krijgen? :) Ik ga 't uitproberen, zal ik dan wel zeggen of het is gelukt.

Is er ook een limiet van een aantal voertuigen wat ik erin kan doen?

Link to comment
Delen op andere websites

  • 8 maanden later...
kun je dat aanpassen? dat het meervoertuigen worden?
Inmiddels zijn we alweer een versie verder, 0.2 is inmiddels released, waarbij het limiet op 700 voertuigen en 70 modellen zit.

Maar dat antwoord had je ook ergens anders kunnen vinden...

> Sowieso even verplaatst naar Scripting.

Link to comment
Delen op andere websites

  • 2 weken later...

Een lus is iets wat zich een bepaald aantal keren herhaald, totdat bijvoorbeeld de waarde 'aantal' op 6 staat. Je server zal dan 6 keer hetzelfde neerzetten, totdat 'aantal' op 6 staat.

Dit was trouwens ook al eerder gevraagd in dit topic:

wat is een lus ?
Een lus wordt net zovaak uitgevoerd totdat aan een bepaald voorwaarde voldaan word.

In de lus van jarno word dus 5 keer "Ik zit in een lus!!!" geprint. Eerst wordt een variabla gemaakt (count) en de waarde daarvan word op 0 gezet, daarna kijkt de lus of de waarde kleiner of gelijk aan 5 is, is dit het geval word de instructie uitgevoerd anders niet. Wordt de instructie uitgevoerd word count met 1 verhoogd.... enz...

Link to comment
Delen op andere websites

  • 2 years later...

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

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

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...