Utiliser les variables d'instance
Les variables d'instance permettent à chaque Monstre de stocker sa propre valeur de santé. Une variable est simplement une valeur qui change (ou varie) et elles sont stockées séparément pour chaque instance, d'où le nom variable d'instance.
Ajoutons une variable d'instance Santé à notre Monstre. Cela fonctionne à peu près comme pour ajouter un Comportement. Cliquez sur le Monstre dans la Barre de Projet. Sinon vous pouvez retourner sur la scène en utilisant les onglets en haut et sélectionner l'objet Monstre. Cela montrera les propriétés de l'objet Monstre dans la Barre de Propriétés. Cliquez sur le lien Variables d'instance pour ouvrir la fenêtre de dialogue Variables d'instance.
Vous pouvez ajouter à un objet autant de variables d'instances que vous le souhaitez, mais nous n'en avons besoin que d'une pour notre Monstre. Cliquez sur Ajouter une nouvelle variable d'instance. La fenêtre de dialogue suivante pour ajouter une variable d'instance s'affiche.
Tapez Santé pour le nom, laissez le Type en tant que Nombre et en tant que Valeur initiale indiquez 5 (comme montré). Cela débutera chaque Monstre à 5 santé. Quand ils seront touchés, on ôtera 1 dans la Santé et ensuite quand Santé sera à 0 on détruira l'objet.
Une fois terminé, cliquez sur OK. Notez que la variable apparaît désormais dans la fenêtre de dialogue Variable d'instance et aussi dans les propriétés du Monstre. Vous pouvez rapidement changer la Valeur initiale dans la Barre des Propriétés, mais pour ajouter ou enlever une variable il faudra ouvrir la fenêtre de dialogue Variables d'instance. Notez également que tous les objets dans la scène peuvent avoir une valeur de variable d'instance unique, donc vous pourriez commencer tous les Monstres avec une quantité de Santé différente par exemple.
Changer les Évènements
Retournez à la Feuille d’Évènements. A ce moment, nous détruisons les monstres dès qu'une Balle les touche. Changeons cela en soustraire 1 de leur Santé.
Trouvez l’Évènement qui se lit Balle: Lors de la collision avec Monstre. Notez que nous avons une action "Détruire Monstre". Remplaçons cela avec "Soustraire 1 de Santé". Cliquez droit sur l'action "Détruire Monstre" et cliquez sur "Remplacer l'action".
La même fenêtre de dialogue que si l'on insérait une nouvelle action apparaît, mais cette fois elle remplacera l'action que nous avons cliqué à la place. Choisissez Monstre►Soustraire de (dans la catégorie Variables d'instance), choisissez la variable d'instance "Santé" et entrez 1 comme valeur. Cliquez sur "Valider". L’Évènement devrait maintenant ressembler à ça:
Maintenant, quand vous tirez sur des Monstres, ils perdent 1 santé et la Balle explose, mais nous n'avons pas fait d'Évènement pour tuer les Monstres quand leur Santé atteint 0. Ajoutez un nouvel Évènement:
Condition: Monstre►Comparer une variable d'instance►Santé, Moins ou égal, 0
Action: Monstre►Faire apparaître un autre objet►Explosion
Action: Monstre►Détruire
Pourquoi "Moins ou égal à 0" plutôt que "égal à 0" ? Supposez que nous ajoutions une autre arme plus puissante qui enlève 2 de Santé. Alors que vous tirez sur le Monstre, sa Santé passerait par 5, 3, 1, -1, -3, .... Notez que jamais sa Santé n'est directement égale à 0, donc il ne mourrait jamais ! Ainsi, c'est une bonne pratique d'utiliser "Moins ou égal" pour tester si la Santé de quelque chose a disparu.
Exécutez le jeu. Vous devez maintenant toucher les Monstres cinq fois pour les tuer !