Je suis en train de me pencher sur les écritures de fichiers.
Je pense avoir pigé comme utiliser un fichier simple, pour une sauvegarde simple des variables du jeu.
J’ai un peu plus de mal à comprendre le fonctionnement des fichiers xml au sein de GD …
J’aimerai gérer mes dialogues dans un fichier xml extérieur.
Je trouve ça plus pratique pour gérer des traductions, ou simplement faire des corrections avec un simple bloc notes.
Voici ma DTD, validée par Internet explorer (la référence, n’est-ce pas … )
[code]<!DOCTYPE dialogs[
<!ATTLIST box
nid CDATA #REQUIRED
title CDATA #IMPLIED
face CDATA #IMPLIED
deco CDATA #IMPLIED
color CDATA "#000000"
size CDATA "20">
<!ELEMENT texte (#PCDATA)>
]>
bla bla bla bli bli blo
Bula bula bula buli buli bolo
[/code]
Ma question est donc comment récupérer les lignes de dialogue d’une traduction dans GD ?
Avec le groupe “dialogs/translation/lang=FR/box/nid=1/text” ?
Un petit exemple d’utilisation de fichier xml serait sympa.
Merci d’avance.
Et bonnes fêtes à tous les Gdeurs.
Game Develop ne gère pas l’ensemble des possibilités du XML, mais un sous ensemble relativement réduit.
Les DTD ne sont pas gérés, et les valeurs accessibles doivent être dans des attributs nommés texte ou value. Par exemple, si on met dans Game Develop : Root/Langs/FR/IntroText, il faut que le fichier XML ait cette forme :
<Root>
<Langs>
<FR text="Chaque balise peut posséder un texte ou une valeur, ou même les deux" value="42">
<IntroText texte="MonJoliTexte" value="42" />
</FR>
</Langs>
</Root>
Il s’agit donc de choses très basique, mais suffisante pour enregistrer normalement tout ce qu’on souhaite.
Oui, et au fait:
Je crois que si l’on fait:
ecrire “Text” dans “Data” de “fichier”
Puis
Ecrire 1 dans “Data” de “fichier”
GD écrase le texte pour écrire la valeur
Disons que je passais par un attribut “nid” pour différencier le numéro de dialogue.
J’espérais pouvoir faire un /root/langs:langue=FR/box:nid=3 pour obtenir le contenu du dialogue no 3 en langue FR.
Là, c’est un peu comme si les balises INPUT n’étaient plus identifiées par leur name, mais par INPUT1 INPUT2 INPUT3 etc.
Pas très standard xml tout ça.