Partie 6 : Ajout d'ennemis
Introduction
Maintenant que vous avez des pièces collectables dans votre jeu, il est temps d'ajouter des obstacles pour créer un défi pour le joueur.
Cette partie du guide s'appuie sur Partie 5, qui suppose que vous avez un personnage contrôlable, des pièces collectables et une compréhension de base de l'ajout d'objets à votre scène, du système de comportement et des collisions.
Votre Premier Ennemi
Dans la bibliothèque d'Asset, revenez au "Pack de Démarrage Plateforme" que vous avez téléchargé à l'étape précédente et sélectionnez la Slime Rose, puis ajoutez l'animation "Déplacer" au dock.
Une fois que la Slime Rose est ajoutée à votre dock, faites-la glisser hors du dock et placez-la dans votre scène.
Appuyez sur la slime que vous venez d'ajouter à la scène pour ouvrir les Propriétés de l'Objet, puis définissez-la comme un Objet Physique.
Ensuite, depuis les Propriétés de l'Objet, appuyez sur l'icône des collisions pour ouvrir l'éditeur de collision. Nous devons réduire légèrement la boîte de collision autour d'elle afin que notre joueur ne soit pas frappé trop tôt. Avec votre doigt, déplacez le point vert sur les côtés plus près de la slime, puis appuyez sur le bouton de coche verte pour accepter les modifications.
Maintenant, nous devons faire patrouiller l'ennemi sur un chemin. Pour ce faire, allez dans les comportements de la slime. Dans la catégorie Objet, ajoutez le comportement "Patrouiller".
Ensuite, dans les Propriétés du Comportement, vous pouvez définir à quelle distance la slime doit se déplacer, et combien de temps il lui faut pour atteindre la destination souhaitée.
Dans la section "Mouvement", la valeur X indique combien l'ennemi se déplacera le long de l'Axe X (à gauche ou à droite). Un nombre négatif indique qu'il se déplacera vers la gauche, un nombre positif indique qu'il se déplacera vers la droite.
Nous laisserons la valeur par défaut (-6) pour l'instant. Mais vous pouvez changer cela en fonction de votre scène et de la distance que vous souhaitez que l'ennemi parcoure.
Pour ralentir la vitesse des ennemis, nous allons changer la durée à 2 secondes. Cela signifie qu'il faudra 2 secondes pour se déplacer de -6 mètres.
Détruire l'Ennemi
Pour détruire l'ennemi, nous allons utiliser le système de tags dans hyperPad. Les tags vous permettent de référencer plusieurs objets sans avoir à ajouter des comportements supplémentaires pour chaque objet. Dans cette situation, les tags nous aideront en ne nécessitant d'ajouter des comportements que pour un seul ennemi, et cela fonctionnera automatiquement pour tout nouvel ennemi avec le même tag. Vous pouvez en apprendre davantage sur les tags ici : Tags d'Objet et Application des Comportements aux Objets Tagués.
Alors, commençons par taguer notre Slime Rose. D'abord, quittez l'éditeur de comportement et revenez à l'éditeur principal. Ensuite, sélectionnez la Slime Rose pour afficher les propriétés de l'objet.
En bas des propriétés de l'objet, sélectionnez l'onglet "Tags" (C'est le dernier onglet en bas).
Pour ajouter un tag, entrez un nom dans le champ de recherche en haut. Assurez-vous de choisir des tags faciles à retenir. Pour ce tutoriel, nous allons simplement utiliser le tag "Ennemi". Ensuite, appuyez sur le bouton + pour ajouter le tag.
Maintenant, nous pouvons passer à l'ajout de nos comportements. Cette fois, sélectionnez le personnage du joueur et NE PAS l’ennemi. Ensuite, ouvrez les comportements pour le personnage du joueur.
Dans la catégorie Objet, ajoutez un comportement "Collisionné", puis sélectionnez-le pour afficher les propriétés du comportement.
Dans les propriétés du comportement collisionné, désactivez tous les commutateurs sauf "Sur le Dessus". Cela garantit que le comportement collisionné ne déclenchera un événement que lorsque notre joueur touche le dessus de l'ennemi.
Ensuite, en bas des propriétés du comportement, passez à l'onglet Tags. Puis sélectionnez le tag Ennemi que nous avons ajouté précédemment. Un point vert à côté du tag signifie qu'il est sélectionné et actif. Maintenant, au lieu de déclencher un événement en touchant un ennemi spécifique, il déclenchera un événement en touchant le dessus de tout objet ayant le tag ennemi.
Maintenant, dans la catégorie Objet, ajoutez un comportement "Désactiver Objet" et connectez-le au comportement collisionné, ce qui arrêtera l'ennemi de patrouiller et d'interagir.
Encore une fois, changez-le pour qu'il n'affecte que le tag Ennemi. Puisque les comportements collisionné et Désactiver objet ont le même tag, seul cet objet collisionné spécifique sera désactivé et non tous les autres objets avec ce même tag.
Enfin, pour donner un peu plus de polish au jeu, nous allons faire en sorte que l'ennemi ait une apparence différente lorsqu'il est écrasé. Ajoutez un comportement "Jouer Animation" depuis la catégorie FX et connectez-le au Désactiver Objet.
Ensuite, appuyez sur la zone où il est écrit "Sélectionner Animation". Naviguez jusqu'à la slime rose dans la bibliothèque d'assets, et choisissez l'animation "Touché".
Encore une fois, changez le comportement pour qu'il n'affecte que les objets avec le tag Ennemi.
Ensuite, ajoutez un comportement d'attente et connectez-le au comportement Désactiver Objet (à côté de l'animation à jouer) et définissez-le à une très courte durée comme 0.25 secondes.
Enfin, ajoutez un comportement "Détruire Objet" à partir de la catégorie objet et connectez-le à l'attente que vous avez ajoutée précédemment. Ensuite, une fois encore, définissez-le sur le tag Ennemi. (notez qu'à l'image ci-dessous, le Désactiver a été renommé en "8")
Et c'est tout ! Vous avez maintenant un ennemi que vous pouvez détruire.
Créer un défi
Il est maintenant temps de faire en sorte que l'ennemi ait la capacité de vous détruire et de mettre fin au jeu.
Tout en étant toujours dans les comportements des joueurs, ajoutez un nouveau comportement collisionné. Cette fois, depuis les propriétés du comportement collisionné, désactivez uniquement le commutateur On Top. Et encore une fois, assurez-vous que le tag ennemi est sélectionné.
Ensuite, ajoutez un comportement "Détruire Objet" et connectez-le au comportement collisionné. Puisque vous êtes dans les comportements du joueur, il est automatiquement configuré pour détruire le joueur.
Enfin, ajoutez le comportement "Charger Overlay" depuis la catégorie Scène et connectez-le au comportement Détruire Objet que vous avez ajouté précédemment.
Un overlay est comme une scène spéciale, qui peut fonctionner au-dessus de votre scène actuelle. Ceux-ci sont souvent utilisés pour des menus, des écrans de pause ou des écrans de fin de jeu. hyperPad inclut déjà 2 overlays créés. Un pour un menu de pause, et un autre pour un écran de fin de jeu. Vous pouvez les modifier selon vos besoins, depuis le Menu du Projet. Vous pouvez en savoir plus sur les Scènes et les Overlays en recherchant les sujets dans le manuel.
Depuis les propriétés du comportement Charger Overlay, appuyez sur "Sélectionner Overlay". Puis depuis la liste qui apparaît, sélectionnez l'overlay "Game Over" fourni par hyperPad.
Et c'est tout ! Maintenant, lorsque vous entrez en collision avec votre ennemi, le joueur disparaît et l'écran de fin de jeu apparaît vous permettant de redémarrer la scène.
À ce stade, vous pouvez ajouter plus d'ennemis à votre niveau. Assurez-vous simplement de les taguer en tant qu'Ennemi.

