AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -17%
(Black Friday) Apple watch Apple SE GPS + Cellular ...
Voir le deal
249 €

 

 [Apprendre le GML] 5 - Ce qu'il reste a connaitre

Aller en bas 
AuteurMessage
onilink_
Modérateur
onilink_


Messages : 9183
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Apprendre le GML] 5 - Ce qu'il reste a connaitre Empty
MessageSujet: [Apprendre le GML] 5 - Ce qu'il reste a connaitre   [Apprendre le GML] 5 - Ce qu'il reste a connaitre EmptyJeu 28 Avr 2011 - 19:42


Apprendre le GML

Ce qu'il reste a connaitre


Sommaire
  1. Les mots clé switch, case et default
  2. Portée des variables
  3. Le mot clé with
  4. Les mots clé begin et end
  5. 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.

Revenir en haut Aller en bas
 
[Apprendre le GML] 5 - Ce qu'il reste a connaitre
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Objet qui reste sur une grille
» [Résolu] Changement d'arme ma nouvelle ne reste pas
» empècher que deux objets reste collés
» [Résolu]Caméra reste dans la room
» Connaître sa personnalité

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Game Maker-
Sauter vers: