Ta première ligne désigne le début du bloc.
IF ~condition~ THEN BEGIN blabla veut dire que si la condition est remplie, alors le bloc appelé "blabla" commencera.
Et le bloc ne s'arrête que lorsque tu mets la fonction "END".
En clair, ton bloc est obligatoirement sous la forme:
IF ~condition~ THEN BEGIN bloc
(Ici, tu mets tout ce que tu veux qu'il se passe dans ton bloc)
END
Jusque là, ça va ? Ok, alors on rentre un peu plus dans le détail.
Un bloc de dialogue commence *obligatoirement* par une phrase que prononce ton gars. Je répète, c'est *obligatoire*. Tu ne peux pas avoir de bloc de dialogue sans phrase prononcée.
Pour que ton gars prononce sa phrase, tu utilises les commandes:
SAY ~blablabla~
Et ton personnage dira "blablabla". Simple, clair, efficace.
Enfin, la dernière partie du bloc, ce sont les conditions de réponse à ce que vient de dire ton personnage. Elles se présentent sous la forme:
IF ~condition~ THEN REPLY ~blehblehbleh~ GOTO blocsuivant
Bon, là, ça demande plus d'attention. Qu'est-ce que tout ça veut dire ?
Bah ca veut dire que si jamais la condition est remplie, alors tu auras le choix dans le jeu de pouvoir répondre "blehblehbleh". Et si jamais tu la choisis, alors tu iras au bloc nommé "blocsuivant".
On va prendre un exemple pour que ce soit plus simple.
Supposons que je veux qu'un personnage dise: "j'ai faim !"
Et toi, tu veux pouvoir lui répondre, au choix: "tiens, mange !" ou alors "tais-toi !".
Comment on va faire ça ?
D'abord, on va créer le bloc, qu'on va appeler par exemple "faim".
Donc, si tu as bien suivi, ça donne:
IF ~NumTimesTalkedTo(0)~ THEN BEGIN faim
-> Ici, on explique au jeu que si jamais on n'a pas encore parlé à ce personnage, alors il faut commencer le bloc de dialogue appelé "faim".
SAY ~J'ai faim !~
-> Ca y est, le bloc de dialogue commence, et ton gars va dire "j'ai faim"
IF ~~ THEN REPLY ~tiens, mange !~ GOTO mange
IF ~~ THEN REPLY ~tais-toi !~ GOTO silence
-> Ici, on explique que *dans tous les cas* (on n'a pas mis de condition), le joueur pourra répondre "tiens, mange" ou bien "tais-toi". S'il répond "tiens, mange", le jeu enchaîne sur le bloc de dialogue appelé "mange". S'il répond "tais-toi", le jeu enchaîne sur le bloc de dialogue appelé "silence".
END
-> On explique au programme que, ça y est, notre bloc est fini.
D'où le bloc final:
IF ~NumTimesTalkedTo(0)~ THEN BEGIN faim
SAY ~J'ai faim !~
IF ~~ THEN REPLY ~tiens, mange !~ GOTO mange
IF ~~ THEN REPLY ~tais-toi !~ GOTO silence
END
Voilà, tu as vu comment coder un dialogue. Maintenant, que se passe-t-il lorsque tu veux que le dialogue se termine ? Eh bien, au lieu de mettre une commande "GOTO", tu vas juste taper "EXIT", et le dialogue s'arrêtera là.
Par exemple, supposons que tu veux que, si le joueur choisit "tais-toi", le dialogue s'arrête. Alors le bloc deviendra:
IF ~NumTimesTalkedTo(0)~ THEN BEGIN faim
SAY ~J'ai faim !~
IF ~~ THEN REPLY ~tiens, mange !~ GOTO mange
IF ~~ THEN REPLY ~tais-toi !~ EXIT
END
Voilà. Il ne te reste plus qu'à créer le bloc nommé "mange" pour compléter ton dialogue.
IF ~~ THEN BEGIN mange // commencer le bloc "mange"
SAY ~ Oh, merci beaucoup !~ // commencer le dialogue
IF ~~ THEN EXIT // terminer le dialogue
END // terminer le bloc "mange"
J'espère que j'ai été clair