onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: [Apprendre le GML] 5 - Ce qu'il reste a connaitre Jeu 28 Avr 2011 - 19:42 | |
|
Apprendre le GML
Ce qu'il reste a connaitre
Sommaire- Les mots clé switch, case et default
- Portée des variables
- Le mot clé with
- Les mots clé begin et end
- Autres syntaxes possibles
1. Les mots clé switch, case et default
Je vais vous présenter ici switch, case et default, encore 3 mots clé de GM. Ils ne sont pas extrêmement importants mais peuvent s'avérer très utiles, et apportent une syntaxe claire au code.
Le switch remplace les conditions multiples. Il a cette forme :
switch(<expression>) { case <expression1> : <instructions 1> break case <expression2> : <instructions 2> break ... default : <instructions d> }
Et cela remplace l'utilisation de conditions successives tels que
if(<expression> == <expression1>) { <instructions 1> } else if(<expression> == <expression2>) { <instructions 2> } else { <instructions d> }
Exemple : - Code:
-
switch(keyboard_key) { case vk_up : draw_text(16, 16, "vous pressez up") break case vk_down : draw_text(16, 16, "vous pressez down") break case vk_left : draw_text(16, 16, "vous pressez left") break case vk_right : draw_text(16, 16, "vous pressez right") break default : draw_text(16, 16, "rien a signaler") }
2. Portée des variables
Il se peut qu'un jour, vous aillez besoin de modifier une certaine variable des instances d'un objet, voir d'une instance. Voici la syntaxe. -modifier une variable de toutes les instances d'un objet : object.variable = valeur -modifier une variable d'une instance spécifique, ou instance est un id : instance.variable = valeur -modifier une variable de toutes les instances : all.variable = valeur -dans un event de collision, modifier une variable de l'instance en collision : other.variable = valeur
3. Le mot clé with
Ce mot clé permet de faire exécuter du code a des instances spécifiques.
Syntaxe : with(<expression>) <instructions>
Ou <expression> peut être : -un id d'instance -un objet -other pour un event de collision -all
Note: Dans l'instruction d'un with, l'utilisation de other correspond a l'id de l'instance ou le with est lancé.
4. Les mots clé begin et end
Pour créer des blocs d'instructions, nous utilisons couramment les accolades { et } . Il existe deux mots clé sous GM qui en sont l'équivalent : begin et end. Ce n'est pas une syntaxe très jolie, mais elle peut parfois être utile pour ce repérer dans le code. Par exemple lorsque le bloc d'instruction est très long, et qu'il contient de nombreux autres blocs.
Exemple : - Code:
-
if(keyboard_check(vk_space)) begin
//<instruction> /* blabla blabla blabla */ if(keyboard_check(vk_up)) { draw_text(16, 16, 'vous pressez up :)') //<instructions> } //<instructions> if(keyboard_check(vk_down)) { draw_text(16, 16, 'vous pressez down :(') //<instructions> } //blabla end
5. Autres syntaxes possibles
GM possède aussi la syntaxe 'algorithmique' pour les affectations et l'opérateur 'différent de'
En effet nous pouvons écrire une affectation de cette manière : variable := valeur ce qui équivaut a variable = valeur
Pour différencier deux valeurs nous utilisons couramment != . Et bien il existe une autre manière : <> .
Exemple : - Code:
-
a := 5 b := 6
draw_text(16, 16, a)
if( a <> b ) draw_text(16, 32, 'a différent de b')
Il est possible aussi d'utiliser une notation hexadécimale grâce a $.
Exemple : - Code:
-
color = $FF // c_red
Voici la fin de cette série de tutoriels consacrés a l'apprentissage du GML. La suite (s'il y en a une) porteras sur l'utilisation des fonctions de GM.
|
|