Jump to content
Bekijk in de app

Een betere weg om onze GTA community te volgen. Leer meer.

GTAGames.nl - De Nederlandse Grand Theft Auto Community!

Een volledig scherm app op het beginscherm inclusief notificaties, badges en meer.

Om deze app op je iPhone en iPad te installeren
  1. Druk op het icoon in Safari
  2. Scroll in het menu en druk op Zet op beginscherm.
  3. Druk op Voeg toe rechts bovenaan.
Om deze app op je Android toe te voegen
  1. Druk op het 3-punten menu (⋮) rechts bovenaan in de browser.
  2. Druk op Toevoegen aan beginscherm of Installeer app.
  3. Druk op Toevoegen om te bevestigen.
Geplaatst:
comment_1667063

Hoi!

Welkom bij de tutorial over strings.



VARIABLES

We beginnen met de variables

Maak een variable op deze manier aan:

new var_name;

Je kan var_name zelf veranderen , bijvoorbeeld:

new playersonline;

Dat is nog heel simpel! Je kan ook nog eens meteen een variable toevoegen!

Doe dit door '= {getal};' erachter te zetten. Bijvoorbeeld:

new playersonline = 0;

Dit is de makkelijkste manier om variables aan te maken!

Nu de iets 'mooiere' manier, vooral handig voor account informatie!

Meestal zie je dit:

new geld[MAX_PLAYERS];
new adminlevel[MAX_PLAYERS];

Dan check je de admin bijv. zo: ' if(adminlevel[playerid] >= 2) '

Dit staat niet mooi en komt onprofessioneel over (vind ik)

Daarom is ENUM wel handig! Kijk maar naar het voorbeeld:

enum var_naam()
{
	geld,
	adminlevel
};

Ziezo, nu heb je deze twee in één 'string' gezet, maar ze werken nog niet!

Je moet de variable ook zelf maken! Dit doe je weer met 'new var_naam'

Let er wel op dat de naam achter enum niet hetzelfde is als de nieuwe variable die je gaat aanmaken!

En zorg er ook voor dat de enum IN de variable komt! Doe dit zo:

enum var_naam()
{
geld,
adminlevel
};
new andere_var_naam[MAX_PLAYERS][var_naam];

Hetgene achter enum moet dus ook tussen de haakjes ( [ & ] ) komen!

Nu check je een admin level zo:

if(andere_var_naam[playerid][adminlevel] >= 2)

Simpel, is het niet?

STRINGS

Dit is ook heel makkelijk, als je het maar snapt ;)

Weet je nog dat ik de 'new playersonline;' had aangemaakt?

Ik zal aan de hand van deze van deze variable uitleggen hoe je de BASIS string maakt.

Je kan met de 'normale' manier, zonder verschillende functie's gewoon 'tellen'.

Als een speler bijv. een speler online komt tel je één nummer aan de variable toe.

Ik zal een voorbeeld geven:

public OnPlayerDisconnect(playerid)
{ 
playersonline ++;
return 1;
}

De '++' staat dus eigenlijk voor '+1' !

Hetzelfde geldt voor '--', alleen dan is het dus '-1'

Maar wat nou als je er bijv. 15 bij op wilt tellen, of aftrekken?

Dit doe je met '+=' !

Een voorbeeld:

new var = 0;
new var += 15;
new var -= 10;

Je begint met string 0, oftewel 'niks'

Dan telt hij er 15 bij op, met '+= 15'

En daarnaa telt hij er tien vanaf! met '-= 10'

Dus nu heeft de variable 'var' de waarde 5

Je kan met de normale manier dus alleen tellen, of geld, adminlevel etc. aangeven

Maar voor een gebruikerssysteem MET WACHTWOORD heb je iets anders nodig!

Want dit werkt niet:

new wachtwoord[MAX_PLAYERS];
...(code)
wachtwoord[playerid] = "test1234";

Dan krijg je de volgende error:

error 010: invalid function or declaration

Dit is natuurlijk niet de bedoeling :puh:

Hiervoor gebruik je strins.

Deze ziet er zo uit:

strins(var, string, start, einde);

Var = Hetgene waar de string wordt ingezet

String = Hetgene wat je IN de variable zet

Start = Waar de string begint

einde = oftewel, maximum lengte

Ik zal een voorbeeld script geven, aan de hand van een DIALOG venster

new wachtwoord[MAX_PLAYERS]; //Ik gebruik even geen ENUM 

public OnPlayerConnect(playerid)
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Wachtwoord", "Vul een wachtwoord in", "OK", "Annuleer");
return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1) //Als dialog ID '1' is
{
	if(response) //Druk je wel op OK en niet op Annuleer?
	{
	strins(wachtwoord[playerid], inputtext, 0, 64); //Je wachtwoord mag dus niet langer dan 64 tekens zijn. Ik heb hier nu geen beveiliging op gezet!
	}
	else //Als je op Annuleer klikt
	{
	//Doe IETS! zoals kick, of laat dialog opnieuw zien
	} 
}
return 1;
}

Hopelijk snap je dit een beetje ;)

Zo niet, zeg het hier even, dan probeer ik het uit te leggen.

STRING VERWIJDEREN

Dit is HEEL simpel.

Het kan op 2 manieren:

1e manier:

var_naam = 0;

Dit zet de var_naam naar 0, als je een nieuwe variable aanmaakt en je zet bijv niet neer: new iets = 1; (de ' = 1 ') is de standaardwaarde 0!

2e manier:

STRDEL

Deze is IETS lastiger, maar wel 'mooier'

Gebruik hem zo:

strdel(var_naam, begin, eind);

var_naam = De string die je wilt verwijderen

begin = Het begin dat je wilt verwijderen

eind = Het einde dat je wilt verwijderen

Over het 'begin' en 'eind':

VOORBEELD:

Je hebt een wachtwoord opgeslagen in wachtwoord[playerid], met string: test1234

Je gebruikt STRDEL en hij begint bij 2, en eindigd op 5

Dan is je wachtwoord nu: est123

Als je het HELE wachtwoord wilt verwijderen kan je het beste dit doen:

strdel(wachtwoord[playerid], 0, strlen(wachtwoord[playerid]);

strlen telt de lengte van iets, en je telt hier het aantal cijfers en letter van het wachtwoord, en hij eindigd bij de laatste.

Dus wordt ALLES verwijderd

Ik hoop dat dit iets een beetje uitlegt!

Groeten,

Kwarde

Featured Replies

Geplaatst:
  • Auteur
comment_1672616

Haha ik had het toch bijna goed ;)

Ik was ook net bezig met zoiets, het leek er wel veel op, met strdel en strins etc...

Maar aangezien hij al bestaat delete ik hem maar ;)

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

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.

Configureer push berichten

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.