5. Intégrer et déplacer votre vaisseau

Dans ce guide, nous allons apprendre à placer votre vaisseau dans la room et à lui donner vie grâce aux bases du Game Maker Language (GML).

Résumé des notions clés#

  • Placement dans la Room : Utilisez l’onglet “Object” pour sélectionner votre vaisseau et le placer dans votre niveau. L’utilisation de la grille (Grid) est essentielle pour aligner précisément vos éléments.
  • Le concept Événement/Action : La logique de Game Maker repose sur ce duo. Un événement (ex: appui sur une touche) déclenche une action spécifique.
  • Utilisation du GML (Game Maker Language) : Plutôt que le Drag & Drop, nous utilisons ici l’éditeur de code pour une meilleure flexibilité.
  • Variables intégrées : Game Maker gère nativement les coordonnées x et y de vos objets, vous évitant de les déclarer manuellement.
  • Système de coordonnées : Dans Game Maker, l’origine (0,0) se situe en haut à gauche. Pour monter, on soustrait une valeur à y ; pour descendre, on l’additionne.
  • Syntaxe condensée : Apprenez à utiliser les opérateurs d’affectation composée comme y -= 5 ou y += 5 pour un code plus propre et rapide.
  • Commentaires : Utilisez // pour des notes personnelles et /// pour nommer vos blocs de code dans l’interface de l’objet.

Ce qui reste d’actualité aujourd’hui#

Bien que les versions récentes de Game Maker aient évolué, les fondamentaux abordés ici restent le socle de tout projet :

6. Limiter les déplacements de votre vaisseau

Apprenez à restreindre les déplacements de votre vaisseau à l’intérieur de votre zone de jeu pour éviter qu’il ne disparaisse hors de l’écran grâce à la fonction clamp.

Résumé des notions clés#

  • L’événement Step : Comprendre que cet événement s’exécute à chaque image (60 fois par seconde selon la vitesse de votre room), ce qui est idéal pour les vérifications constantes de position.
  • La fonction clamp() : Utilisation de cette fonction intégrée à Game Maker pour contraindre une valeur entre un minimum et un maximum.
  • Gestion de l’origine du sprite : Importance de prendre en compte le point d’origine de votre sprite (souvent au centre) pour calculer correctement les limites de collision avec les bords de l’écran.
  • Calcul des marges : Ajustement des valeurs de clamp en fonction de la taille réelle de votre objet (hauteur/largeur) pour que le vaisseau reste entièrement visible à l’écran.

Ce qui reste d’actualité aujourd’hui#

Bien que les versions de Game Maker aient évolué, les principes fondamentaux abordés ici restent des piliers du développement 2D :

8. Créer des ennemis et un système de spawn dynamique

Apprenez à donner vie à votre jeu en intégrant des ennemis mobiles et un système de génération automatique (spawner) pour dynamiser vos niveaux.

Résumé des notions clés#

  • Initialisation du mouvement : Utilisation de la variable hspeed (horizontal speed) avec une valeur négative pour déplacer un objet de la droite vers la gauche.
  • Gestion des sprites : Utilisation de l’outil “Mirror Flip” dans l’éditeur de sprite pour corriger l’orientation des ennemis sans modifier les ressources graphiques originales.
  • Le concept de Spawner : Création d’un objet invisible (sans sprite ou avec un sprite de repère) dont le rôle unique est de générer d’autres instances dans la room.
  • Automatisation avec les Alarmes : Utilisation de l’événement Alarm combiné à instance_create pour déclencher l’apparition d’ennemis à intervalles réguliers.
  • Contrôle du rythme : Ajustement de la fréquence d’apparition en utilisant room_speed (le nombre de frames par seconde du jeu) pour définir un timing précis en secondes.

Ce qui reste d’actualité aujourd’hui#

Bien que les versions récentes de GameMaker aient introduit des fonctionnalités comme les Sequences ou les Pathfinding, les principes abordés ici restent les fondations indispensables de tout développeur :