Scripting Basics NL
From SA-MP Wiki
Contents |
Type variabelen
Variabelen zijn ruimtes om data op te slaan. In PAWN zijn de namen van variabelen hoofdletter gevoelig, dit houd in dat een variabele genaamd "lol" anders is dan "loL" en "LOL", daarnaast moeten variabelen altijd beginnen met een letter.
Integer
Dit is het standaard type variabele, deze word gebruikt om hele cijfers in op te slaan. Dit houd dus in dat cijfers met een punt er tussen hier niet in opgeslagen moeten worden.
Voorbeeld
new integer = 1337; // Dit slaat de waarde 1337 op in de variabele "integer". new integer; // Deze manier slaat de waarde 0 op in "integer" vanwege dat dit de standaard waarde is voor een integer.
Mogelijke gebruikswijze
if(integer == 1337) { /* Doe iets */ }
Float
Dit type variablen kan getallen opslaan die 1 of meer decimalen heeft, zoals bijvoorbeeld 1.01, hierbij is het niet mogelijk om een getal op te slaan zonder decimaal.
Voorbeeld
new Float:float; // Dit maakt een nieuwe lege variabele aan met de naam "float". new Float:float = 2.0; // Deze manier maakt de variabele "float" aan en geeft het de waarde 2.0.
Mogelijke gebruikswijze
new Float:float = 2.0; SetPlayerPos(playerid, float, 2.0, 1400.0);
String
Deze variabele manier slaat een letter of symbool op per cel, de hoeveelheid cellen zal aangegeven moeten worden door middel van een array, hierbij zal 1 extra cell opgetelt moeten worden.
Voorbeelden
new string[7] = "String"; // Aangezien de tekst 6 characters is zullen er 7 cellen moeten zijn vanwege de extra cell. string[0] = 'S'; string[1] = 't'; string[2] = 'r'; string[3] = 'i'; string[4] = 'n'; string[5] = 'g'; string[6] = 0;
Meest gebruikte mogelijkheid
new string[128];
Mogelijke gebruikswijze
new string[7] = "String"; SendClientMessage(playerid, 0xFFFFFFAA, string);
Boolean
Het variabele type "Boolean" word gebruikt om waar (true) of niet waar (false) in op te slaan, waar staat gelijk aan 1 en niet waar aan 0. Nieuw aangemaakt Booleans zijn automatisch niet waar.
Voorbeelden
new bool:boolname;
Mogelijke gebruikswijze
if(boolname == true) { /* mocht boolname waar zijn, voer dan iets uit */ }
Array
Arrays zijn grote opslagplaatsen voor data, het zijn virtuele tabellen. Je kan een dimensie arrays en meerdere dimensie arrays hebben. Je moet een nieuwe float of boolean array op de zelfde manier maken als je zou doen bij een niet-array item door de tags (bool:, Float:) te gebruiken. Weet dat je in een array laatste rij of lijn kan gebruiken.'
Eén dimensie array
Een één dimensie array is één lijn verdeeld in een gespeciefeerd aantal cellen.
new eendimensiearray[CELLS];
Voorbeeld
new eendimensiearray[5] = {4, 6, 7, 9, 2}; // De "5" tussen de [] is het aantal cellen in de array.
Mogelijk Gebruik
new randomcijfer = random(sizeof(eendimensiearray)); // Verkrijgt een random nummer cellen. printf("Random number is: %d", onedimensionalarray[random]); // Gebruik een random nummer om een cel te selecteren.
twee dimensie array
Twee dimensionale arrays laten toe om meerdere kolomen en rijen te hebben. Two dimensional array allows you to have many collumns and rows.
new tweedimensiearra[RIJEN][KOLOMEN];
Voorbeeld
new Float:tweedimensiarray[4][3] = { {3.0, 4.5, 5.76}, // Rij nummer 0 {10.85, 76.34, 23.54}, // Rij nummer 1 {2.32, 10.23, 80.2}, // Rij nummer 2 {6.6666, 45.3, 32.64} // Rij nummer 3 };
Mogelijk Gebruik
SetPlayerPos(playerid, tweedimensiearray[2][2], tweedimensiearray[3][1], tweedimensiearray[2][0]);
Drie dimensionale arrays - twee dimensionale array strings
new driedimensiarray[RIJEN][KOLOMEN][Z];
Twee dimensionale array strings
new tweedimensionalearraystring[RIJEN][KOLOM][255]; //Voor een 256 bytes lange string
Vertaald door: FUNExtreme
Condities
Condities laten je toe te zien of de data voldoet aan de conditie als uitgevoerde code afhankelijk van het resultaat. Het meest voorkomende type van condities is de if/else condietie, maar er zijn nog veel andere - case, for loop and while loop.
if/else
De if/else condities laten je toe om te zien of een set van data voldoet met een coditie door het gebruik van deze operatoren en dan als de date aan de conditie voldoet word de code uitgevoerd.
Relationele Operatoren
Relationele Operatoren worden vaak gebruikt in if/else statements; ze checken de relatie tussen twee sets van data alvorens de code uit te voeren.
Operator | Uitleg | Gebruik |
---|---|---|
== | Links is gelijk aan Rechts | if(Links == Rechts) |
!= | Links is niet gelijk aan Rechts | if(Links != Rechts) |
> | Links is groter dan Rechts | if(Links > Rechts) |
>= | Links is groter dan of gelijk aan Rechts | if(Links >= Rechts) |
< | Links is kleiner dan Rechts | if(Links < Rechts) |
<= | Links is minder of gelijk aan Rechts | if(Links <= Rechts) |
Operator | Uitleg | Gebruik | ||
---|---|---|---|---|
&& | EN | if(Links && Rechts) | ||
OF | if(Links | Rechtst) | ||
! | NEE | if(!Variable) | ||
NIET/OF | if(!(Links | Rechts)) | ||
NIET/EN | if(!(Links && Rechts)) | |||
XOF | if((Links && !Rechts) | (!Links && Rechts)) | ||
NIETXOF | if(!((Links && !Rechts) | (!Links && Rechts))) |
Voorbeeld
if(lwaarde > rwaarde) { /* Voer code uit. */ }
In dit voorbeel is de if conditie tussen lvalue en rvalue waar en zal de code uitgevoerd worden. De conditie is if lvalue is groter dan rvalue ...
Nog een voorbeeld, door HellFly
new links; new rechts; links = random(1);//links = 1 of 0 rechts = random(1);//rechts = 1 of 0 if (links > rechts)//als links meer is als rechts { //voer code uit } else//anders, dus als links niet meer is als rechts { //voer code uit }
Vertaald door: FUNExtreme