Game Maker Language: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 201:
gli array (dall'inglese schieramento) sono paragonabili a degli insiemi di variabili, per esempio:
usando le variabili
<sourcesyntaxhighlight lang=gml>
prova1 = 10
prova3 = 7
Riga 207:
...
prova40 = 9
</syntaxhighlight>
</source>
stesso codice, ma usando gli array 1Dmonodimensionali
<sourcesyntaxhighlight lang=gml>
prova[1] = 10
prova[3] = 7
Riga 215:
...
prova[40] = 9
</syntaxhighlight>
</source>
(i valori tra quadre sono dette indici)
 
Sebbene i due codici paiono pressoché identici ci sono alcune grosse differenze:
Riga 227 ⟶ 226:
===Array monodimensionale===
è possibile avvalersi di [[array]] 1D
<sourcesyntaxhighlight lang=gml>
sintassi:
num[7] = 10;
</syntaxhighlight>
</source>
il numero 7 verrà memorizzato alla posizione 8 dell'array "num". È da notare che non è prevista una dichiarazione in cui definire le dimensioni massime dell'array.
 
===Array bidimensionali===
 
è possibile avvalersi di array 2D
<sourcesyntaxhighlight lang=gml>
num[11,7] = 13
</syntaxhighlight>
</source>
il numero 13 verrà memorizzato "a coordinate" (11,7) dell'array "num"
 
===Array tridimensionali===
gliGli array 3D non sono previsti dall'ide di questo linguaggio. È possibile comunque mediante un semplice calcolo matematico trasformare un array 3D in uno 2D. L'array 3D può essere visto come un parallelepipedo formato da tanti parallelepipedi più piccoli: in ognuno di essi c'è memorizzato un dato. Si tratta di "tagliare a fette" il parallelepipedo in tante fette sottili uno, e di metterli tutti adicenti, perdendo così una delle 3 dimensioni (un array che ha una certa "larghezza", "lunghezza", ma spessore 1 ha, in definitiva, 2 sole dimensioni).
 
gli array 3D non sono previsti dall'ide di questo linguaggio. È possibile comunque mediante un semplice calcolo matematico trasformare un array 3D in uno 2D. L'array 3D può essere visto come un parallelepipedo formato da tanti parallelepipedi più piccoli: in ognuno di essi c'è memorizzato un dato. Si tratta di "tagliare a fette" il parallelepipedo in tante fette sottili uno, e di metterli tutti adicenti, perdendo così una delle 3 dimensioni (un array che ha una certa "larghezza", "lunghezza", ma spessore 1 ha, in definitiva, 2 sole dimensioni).
===Liste e grid (data structure)===
Sono sostanzialmente degli array monodimensionali e bidimensionali.
Riga 254 ⟶ 251:
 
NB: anche queste strutture (come gli array "classici") possono essere rimosse dalla [[RAM]] quando i dati non servono più, pero il meccanismo è diverso: gli array classici per essere rimossi devono essere creati come privati di uno script o piece of code (verranno quindi autorimossi alla fine di esso), invece le liste e griglie sono condivise (obbligatoriamente) e possono essere cancellate (in qualsiasi momento) mediante l'apposita funzione nativa.
 
==Nomenclatura degli elementi==
Quando si crea un nuovo progetto vengono creati oggetti, sprite, rooms, suoni ed altre cose (generalmente visibili in un sistema di cartelle posizionato in alto a sinistra dell'ide). A Ognuno di questi elementi il programmatore da un nome significativo.