Tuto GB Studio : Chapitre 2 - les monstres

   

Dans ce deuxième chapitre, nous allons voir de plus près comment fonctionnent les monstres. 😉

Pour cela, j'ai créé un monstre, qui s'appelle Globulos (ici de la série des Wiwi / Aron / Rabidja). Celui-ci est un monstre très basique:

  

  • il patrouille dans une zone en faisant des allers-retours,
  • il est vulnérable si le joueur lui saute dessus (qui ne le serait pas ? 😅),
  • il peut aussi être shooté de loin par des shurikens (c'est pointu, ces trucs ! 😱),
  • en revanche, il tuera le joueur, s'il le touche (ouh, le méchant ! 😡).

    

Comment fonctionne le Globulos ?

    

On va regarder rapidement comment fonctionne le monstre dans GB Studio avant de voir comment le dupliquer et en rajouter d'autres dans le niveau. 😋

Si vous cliquez sur un Globulos, n'importe lequel, vous trouverez toujours le même code :

   

  

D'abord, les coordonnées de spawn (apparition) du Globulos : pour les changer il suffit de laisser cliquer sur le Globulos et le déplacer où vous voulez sur la map.

Ensuite, la direction dans laquelle il se déplace au début (en général face au joueur comme dans 99% des jeux de plateformes 😜).

On trouve ensuite sa feuille de sprite : on verra plus tard comment la changer et créer de nouveaux sprites.

Puis, sa vitesse de déplacement et d'animation (nombre de frames par seconde comme dans le tuto Pygame 😉).

Pour les collisions, on le place dans le groupe 1 pour gérer les shurikens.

On trouve ensuite 3 onglets pour dire au programme ce qu'il doit faire au Touché, soit quand il y a une collision, à l'initialisation du sprite et à l'actualisation (la fonction update() dans notre tuto Pygame).

Commençons par l'initialisation, car c'est le plus simple : on ne fait rien de spécial. Ensuite, à l'initialisation, on va déplacer le sprite avec le code suivant. C'est ce code-là qu'il faudra modifier quand vous créerez d'autres monstres :

  

  

En fait, c'est très simple : on va tester si le Globulos est à son point de départ, si c'est le cas, on va le déplacer à gauche jusqu'aux coordonnées indiquées. Une fois ce code exécuté, notre monstre va se retrouver à son point d'arrivée, on va alors le retourner pour aller à gauche jusqu'à son point de départ et ainsi de suite, à l'infini. 😄 Notez qu'on met une pause de 0,5 seconde pour éviter de saturer le pauvre processeur de la Game Boy Color (qui tourne à 8Mhz, comparé aux 4000Mhz de nos processeurs actuels, en moyenne ! 🤪). 

  

Les collisions

    

On a 2 types de collisions dans Au Touché : Joueur pour les collisions avec le joueur et Groupe 1 pour celles avec les shurikens.

   

   

   

Dans les 2 cas, on va appeler un script (qu'on pourra rappeler pour d'autres monstres ☺️) et qui se trouve dans Scripts dans la colonne de gauche. 

  

  

Commençons par Ennemy Collisions.

Il se découpe en 2 parties, suivant que le joueur est au-dessus du monstre ou pas.

S'il est au-dessus, on désactive les collisions (pour éviter que le monstre ne tue le joueur par la suite... 😡), on arrête le script "on update" du monstre pour qu'il arrête de se déplacer, on fait rebondir le joueur sur sa tête, puis on change l'animation à l'état "Dead" pour le faire exploser (on reverra les animations plus tard 😜). On joue ensuite l'effet sonore de l'explosion et on désactive le monstre pour qu'il disparaisse.

  

    

Dans le cas contraire, c'est le joueur qui "explose" : 

   

    

Le fonctionnement est à peu près le même, sauf qu'on crée aussi des secousses de caméra pour le fun, et qu'on doit ensuite recharger le dernier point de sauvegarde pour que le joueur puisse recommencer sa partie. On reverra les checkpoints plus tard. 😉

Pour le script Ennemy Shoot, qui gère les collisions avec les shurikens, c'est quasiment la mème chose que pour la 1ère partie du script précédent.

Notez que si vous enlevez ce script, votre monstre deviendra invincible aux shurikens (pratique pour créer des types de monstres différents 😜).

  

   

  

Comment rajouter des monstres ?

    

Voyons maintenant comment rajouter des Globulos.

Commencez par sélectionner un Globulos (n'importe lequel) puis choisissez Copier l'acteur en haut à droite en cliquant sur la petite flèche.

  

   

Recliquez sur la flèche et choisissez Coller l'acteur, placez-le ensuite où vous voulez :

   

   

Voilà, vous avez un nouveau monstre ! 😁

Cependant, ses coordonnées de patrouille ne sont pas la bonnes, changeons-les !

Repérez ses coordonnées tout en haut

 et recopiez-les ici :

   et là :

  

Voilà pour le point de départ, choisissons maintenant le point d'arrivée : allez dans Joueur se déplace vers et changez les coordonées X et Y jusqu'à choisir un point d'arrivée (de préférence en ligne droite et pas trop loin). Un rectangle rouge vous l'indiquera sur la map du niveau :

   

  

Et voilà un nouveau Globulos prêt à être testé ! 🥳

Notez que vous pouvez aussi les copier dans d'autres niveaux (mais on va d'abord agrandir le niveau 2 dans le prochain chapitre 😉).

  

TP 1

Rajoutez de nouveaux Globulos et testez votre niveau ! 😋

         

    

Attention, notez que vous êtes limités à 20 Acteurs (monstres ou autres) par niveau. Vous pouvez voir leur nombre en bas de chaque niveau (la lettre A pour Actors, S est pour les Sprites et T pour les déclencheurs (Triggers)) :

   

 

 

This site uses cookies to enable you to log in. We do not store or sell any personal data. By continuing to use this website, you agree to their use. Thanks!