IrrAdventure - Partie 2 - Creation du monde et liens entre les lieux

Revenir à l'index

Création d'un deuxième noeud - Fichier xml

Chaque "lieu" du monde est appelé noeud (node) dans tout le code source, dans tous les fichiers, etc ...

Editez le fichier data.xml avec un éditeur de texte basique (bloc-notes). Le XML ressemble beaucoup au HTML. Au début, il n'y a aucun son, aucune variable, et un seul noeud. Les noeuds sont définis entre les balises <nodes> et </nodes>. On va créer un deuxième noeud. Remplacez la fin du fichier :

<node0>
</node>
</nodes>

par :

<node0 north="1">
</node>
<node1 south="0">
</node>
</nodes>

Remarque 1 : les espaces et tabulations en plus ou en moins dans le fichier n'ont pas d'importance, et ne sont là que pour clarifier la chose.

Remarque 2 : attention à ne jamais omettre les guillemets ! C'est la source de beaucoup d'erreurs.

Remarque 3 : comme vous pouvez le constater, les noeuds sont numérotés à partir de 0.

Création d'un deuxième noeud - Rajout des images

A partir de votre logiciel d'infographie 3D de tout à l'heure, déplacez les 6 caméras de quelques "mètres" vers le "nord" (le "nord" est la direction de la caméra pointée vers l'"avant"). Générez de nouveau 6 images, et créez 6 nouveaux fichiers jpg (n'oubliez pas de les inverser horizontalement). Mettez ces nouveaux fichiers dans le dossier "1" (pour le noeud 1), que vous allez créer dans le dossier "data".

Création d'un deuxième noeud - Test

Lancez le jeu. Vous avez normalement créé un lien entre les deux noeuds : si vous cliquez vers le nord avec le bouton gauche de la souris, vous vous retrouverez dans l'autre noeud (patientez une seconde le chargement). Ensuite, faites un demi-tour (vers le sud), et cliquez : vous êtes dans le noeud de départ.

Comment ça marche ? En fait, on a créé un deuxième noeud dans le fichier xml, et on a dit que quand on va vers le nord à partir du noeud 0, on se retrouve dans 1, et quand on va vers le sud à partir du noeud 1, on se retrouve dans 0.

On aurait pu écrire :

<node0 north="1" west="0" south="0" east="0">
</node>
<node1 north="1" west="1" south="0" east="1">
</node>
</nodes>
</body>

c'est pareil.

Maintenant vous pouvez faire tout plein d'autres noeuds de la même manière, et les lier entre eux. Remarque : les liens vers le haut ou vers le bas n'existent pas !

Aller à la partie 3