Revenons un peu sur le HUD plus en détail. Nous allons voir comment ajouter à notre jeu, une jauge de santé ("health") et de l'argent ("MONEY").
HUD
Dans l'arborscence de NESMaker, sélectionner "HUD & Boxes". La fenêtre de paramétrage des zones s'affiche.
Les zones
C'est ici que l'on définit :
- "HUD Area": la zone de HUD (zone dans laquelle s'affichera les élements du HUD). Remarque important, elle doit faire au moins 2 lignes de haut (sinon bug)
- "Playable Area": la zone de jeu, dans laquelle le Player peut évoluer. Lorsque le Player quite cette zone, il passe à l'écran suivant.
- "Textbox Area": la zone d'affichage des boites de texte (dialogues, etc... une des grosses nouveautés de la version 4.0.6)
- "Monster Spawn Area": la zone dans laquelle apparaitront les monstres qui sont paramétrés pour apparaître de façon aleatoire (le bouton "Rand", for "random/aléatoire", dans "Edit Monster Placement Details" sur l'écran).
- "Other Area": une aure zone qui ne semble pas servir pour l'instant.
Pour votre jeu, il est indispensables de définir les 3 premières zones "HUD Area", "Playable Area" et "Textbox Area". Prenez l'habitude de le faire dès le début de la mise en place de votre projet, comme ça vous serez tranquilles.
Les tiles
Cet onglet permet de definir les tiles (blocs de 8x8pixels) associés aux différents éléments utilisables pour composer votre HUD (tiles pour les différentes lettre de l'alphabet, pour les bordure de votre hud, le background, quelques icones,…).
Par defaut, il est vide. Nous allons créer le tilesets rapidement en reprenant un exemple fourni avec NESMaker.
Se rendre dans "Pixel Editor" :
Cliquer sur le bouton ouvrir et aller chercher le fichier "Letters_Numbers_Hud.bmp" qui se trouve das le dossier "BetaAssets\Graphics".
A l'aide de l'outil de sélection (à coté du petit crayon), sélectionner tout le tilesets (glissant et maintenant le curseur de la souris du coin haut-gauche jusqu'en bas-droite), faire CTRL+C pour copier tout.
Ensuite ouvrir le fichier "HudTiles.bmp" se trouvant dans le dossier "GraphicAssets\<NomDeVotreProjet>" (dans mon cas dans "GraphicAssets\JEU01").
Positionner le curseur de la souris au coin en haut-gauche et faire CTLR+V pour coller.
Et voilà, enregistrer le tilesets.
De retour dans "HUD & Boxes", dans l'onglet "TileSets", vous note qu'il n'est plus vide. Et normalement tout est déjà paramétré correctement.
(vous pouvez vérifier en sélectionnant chaque élément de la liste de gauche pour voir/modifier le tile associé)
Les Assets
Pour composer le contenu du HUD, il est possible d'utilsier des Assets que l'on construit dans cet onglet.
C'est un ensemble de tiles. Cela permet de créer des mots complets, ou des blocs graphiques (ensemble d'icones)…
Pour notre exemple, nous n'allons pas en créer.
Les variables du HUD
Cet onglet, vous donne accès aux différentes variables du HUD. Vous en avez 8 à votre disposition.
Pour le module Aventure, un certain nombre de ces variables sont déjà paramétrées: "MyHealth", "MyScore", "MyKeys", "MyMoney".
Si utilisées dans le HUD, elles permettent d'afficher la valeur correspondante.
Les variables "UserVar_X" sont inutilisées pour l'instant.
Sélectionner la variable "MyHealth" et indiquer "3" en valeur initiale (à noter que notre Player a "3" pour "health" dans ses paramètres, c'est la raison pour laquelle on choisit ici cette même valeur).
Les élémens du HUD
L'onglet qui nous intéresse le plus, il permet de composer comme bon nous semble notre HUD.
Nous avons accès à 8 élements possibles affichables. Pour chaque élément, vous pouvez choisir ce qu'il affichera (une chaine de caractères, la valeur contenue dans une variable, un asset …)
Pour l'exemple de notre jeu, nous allons safficher la santé "HEALTH" (sous forme de petits coeurs à la zelda, qui disparaitront à chaque fois que le player se fera toucher) et l'argent collecté "MONEY" (sous forme numerique, et qui augmentera dès que le palyer collectera une pièce).
- Sélectionner "Element 1" et choisissez le type "2:Text".
Dans "String", saisir la chaine de caractères que l'on souhaite faire apparaitre (Par exemple "HEALTH"). Ensuite, modifier la position de l'élément dans le HUD, à l'aide des valeurs de "X" et "Y".
- Sélectionner maintenant "Element 2" (correspondant à la variable "MyHealth") et choisissez le type "0:Var Tiles".
Cliquer sur le bouton "Full Tile" pour definir le "tile" qui representera votre coeur rempli, puis sur le bouton "Empty Tile" pour votre coeur vide (moi je choisis un *, mais on pourrait dessiner un coeur vide dans le tilesets ou même utiliser un tile vide).
Ensuite, indiquer "3" pour "Max value" et modifier la position de l'élément dans le HUD, à l'aide des valeurs de "X" et "Y".
Pour money c'est un peu le même principe...
- Sélectionner "Element 6" (correspondant à une variable non utilisée) et choisissez le type "2:Text".
Dans "String", saisir la chaine de caractères que l'on souhaite faire apparaitre (Par exemple "MONEY"). Ensuite, modifier la position de l'élément dans le HUD, à l'aide des valeurs de "X" et "Y".
- Sélectionner "Element 5" (correspondant à la variable "MyMoney") et choisissez le type "3:Number".
Ensuite, indiquer "3" pour "Max value" et modifier la position de l'élément dans le HUD, à l'aide des valeurs de "X" et "Y".
Voilà votre HUD est prêt
Il n'y a plus qu'à tester... via le menu "Test > Export & Test". Et constater qu'il s'affiche correctement.
Et si le Player se fait toucher par un monstre, vous deviez voir sa santé diminuer.
ITEMS COLLECTABLES - PIXEL EDITOR
Nous allons créer des élements collectables pour remplir notre santé et notre porte monnaie.
Dans "Pixel Editor", ouvrer le fichier "GameObjectTiles.bmp" se trouvant dans le dossier "GraphicAssets\<NomDeVotreProjet>" (dans mon cas dans "GraphicAssets\JEU01").
Et dessiner deux tiles pour représenter votre item "santé" et "argent" (je vais dessienr un "coeur" dans une tile vide et une "pièce" dans une autre).
Enregistrer votre tilesets.
ITEMS COLLECTABLES - GAME OBJECTS
Maintenant, dans l'arborescence de NESMaker, sous "Game Objects", sélectionner "Health Pickup".
Cet objet est l'item (élément collectable) qui recharge votre santé.
Configurer le simplement :
Indiquer quel tile utiliser (notre "coeur"), puis quelle palette. Attention, pour rappel, tous les game objects utilisent les palettes du Player, donc vous pouvez juste indiquer si vous voulez utliliser la 1ère sub-palette ou la 2ème sub-palette pour votre item.
Puis dans "Object details", dans l'onglet "Details", cocher juste la case "pickup/ powerup". Et definir une "Bounding box".
Voilà, votre Item est prêt.
Il ne reste plus qu'à faire exactement la même chose avec l'object detail "Currency Pickup"
Ensuite, vous pouvez poser ces élements sur vos écrans, en plus de vos tiles, vos monstres…
Pour cela, faire un clic-droit puis "Place Monster 1 > Health Pickup" ou "Place Monster 1 > Currency Pickup", etc
A noter que, dans le module Aventure, actuellement, lorsqu'un monstre est tué, il peut vous donner un item "Health Pickup" ou "Currency Pickup". C'est le comportement par défaut codé pour les monstres de ce module.