[WeiDU] Dialogue et commande EXTERN
Posté : sam. 18 oct. 2014, 14:12
1-J'utilise la commande EXTERN pour appeler un block d'un autre fichier et dans le jeu, je n'ai pas la texte prévu.
J'ai commencé à écrire la discussion à 3 avec les ducs Belt et Liia:
Je sélectionne le 1ier choix de réplique du Charname:
"Eviter cette guerre imminente et rétablir la paix avec Amn est un tour de force dont vous êtes les vrais héros."
Belt enchaine normalement mais pas avec la phrase
(BELTP Begin 1)
"Effectivement, nous nous sommes préparés au pire tout en usant de toute notre diplomatie pour mettre un terme à ces tensions. Je vous avoue que nous sommes épuisés"
mais avec
(BELTP Begin 2)
"(surprise) cette Grotte humide et nauséabonde? Non, ce lieu n’est pas digne d’intérêt. L’entrée est sous bonne garde et nos architectes s'assurent que les fondations de la cité sont solides."
J'utilise la syntaxe Nom du fichier +" "+nom du BEGIN ciblé. Les .TRA sont correctement numérotés.
Exemple: EXTERN BELTP 1
j'ai essayé aussi EXTERN ~BELTP~ 1 mais ca ne change rien dans le jeu. J'ai l'impression que Weidu ne tient pas compte du n° transmis ou que je n'ai pas compris la logique du n° signalé.
Duc LIIA (LIIAP.DLG)
BEGIN ~LIIAP~
IF ~NumTimesTalkedTo(0)~ THEN BEGIN CONTACT
SAY @1=@2
IF ~~ THEN
GOTO 1
END
IF ~~ THEN BEGIN 1
SAY @3 /* ~calmer les tensions avec Amn ont monopolisé toute notre attention.~ */
IF ~Global("choix1","AR7208",0)~ THEN
REPLY @4 /* ~Eviter cette guerre imminente et rétablir la paix avec Amn est un tour de force dont vous êtes les vrais héros.~ */
DO ~SetGlobal("choix1","AR7208",1)~
EXTERN BELTP 1
IF ~Global("choix2","Ar7208",0)~ THEN
REPLY @5 /* ~Inutile de vous fatiguer! Vous me demandez de quitter l’auberge n’est ce pas! Je vous rappelle que j’ai risqué ma vie pour vous et cette cité!~ */
DO ~SetGlobal("choix2","ar7208",1)~
GOTO MEPRISE
IF ~Global("choix3","AR7208",0)~ THEN
REPLY @9 /* ~En poursuivant Sarevok, je ne m’attendais pas à découvrir une antique cité sous Baldur. Je pourrais l’explorer si vous le désirez.~ */
DO ~SetGlobal("choix3","AR7208",1)~
EXTERN BELTP 2
END
IF ~~ THEN BEGIN 2
SAY @6 /* ~Charname, votre modestie n’a d’égal que votre bravoure. Vous avez tout de même poursuivi ce dangereux Sarevok dans ces horribles catacombes!~ */
IF ~~ THEN
REPLY @7 /* ~J’avais un compte à régler. Maintenant il a payé sa dette de sang.~ */
EXIT
END
Duc BELT (BELTP.CRE + BELTP.DLG)
BEGIN ~BELTP~
IF ~~ THEN BEGIN 1
SAY @4 /* ~Effectivement, nous nous sommes préparés au pire tout en usant de toute notre diplomatie pour mettre un terme à ces tensions. Je vous avoue que nous sommes épuisés.~ */
IF ~~ THEN EXIT
END
IF ~~ THEN BEGIN 2
SAY @3 /* ~(surprise) cette Grotte humide et nauséabonde? Non, ce lieu n’est pas digne d’intérêt. L’entrée est sous bonne garde et nos architectes s'assurent que les fondations de la cité sont solides.~ */
IF ~~ THEN EXIT
END
IF ~NumTimesTalkedTo(0)~ THEN BEGIN CONTACT
SAY @1 /* ~Ahhh voilà notre HEROS!~ */
IF ~~ THEN EXIT
END
2- Nom du BEGIN dans le EXTERN
J'ai essayé de mettre du texte dans me nom des BEGIN. si c'est un bloc lié à un EXTERN, WEIDU est erreur pour un problème de LABEL. On est visiblement obligé de mettre un chiffre.
Je sais que l'on peut utiliser le CHAIN IF pour les discussions à plusieurs mais mon éditeur ne gère pas ce point pour le moment.
J'ai commencé à écrire la discussion à 3 avec les ducs Belt et Liia:
Je sélectionne le 1ier choix de réplique du Charname:
"Eviter cette guerre imminente et rétablir la paix avec Amn est un tour de force dont vous êtes les vrais héros."
Belt enchaine normalement mais pas avec la phrase
(BELTP Begin 1)
"Effectivement, nous nous sommes préparés au pire tout en usant de toute notre diplomatie pour mettre un terme à ces tensions. Je vous avoue que nous sommes épuisés"
mais avec
(BELTP Begin 2)
"(surprise) cette Grotte humide et nauséabonde? Non, ce lieu n’est pas digne d’intérêt. L’entrée est sous bonne garde et nos architectes s'assurent que les fondations de la cité sont solides."
J'utilise la syntaxe Nom du fichier +" "+nom du BEGIN ciblé. Les .TRA sont correctement numérotés.
Exemple: EXTERN BELTP 1
j'ai essayé aussi EXTERN ~BELTP~ 1 mais ca ne change rien dans le jeu. J'ai l'impression que Weidu ne tient pas compte du n° transmis ou que je n'ai pas compris la logique du n° signalé.
Duc LIIA (LIIAP.DLG)
BEGIN ~LIIAP~
IF ~NumTimesTalkedTo(0)~ THEN BEGIN CONTACT
SAY @1=@2
IF ~~ THEN
GOTO 1
END
IF ~~ THEN BEGIN 1
SAY @3 /* ~calmer les tensions avec Amn ont monopolisé toute notre attention.~ */
IF ~Global("choix1","AR7208",0)~ THEN
REPLY @4 /* ~Eviter cette guerre imminente et rétablir la paix avec Amn est un tour de force dont vous êtes les vrais héros.~ */
DO ~SetGlobal("choix1","AR7208",1)~
EXTERN BELTP 1
IF ~Global("choix2","Ar7208",0)~ THEN
REPLY @5 /* ~Inutile de vous fatiguer! Vous me demandez de quitter l’auberge n’est ce pas! Je vous rappelle que j’ai risqué ma vie pour vous et cette cité!~ */
DO ~SetGlobal("choix2","ar7208",1)~
GOTO MEPRISE
IF ~Global("choix3","AR7208",0)~ THEN
REPLY @9 /* ~En poursuivant Sarevok, je ne m’attendais pas à découvrir une antique cité sous Baldur. Je pourrais l’explorer si vous le désirez.~ */
DO ~SetGlobal("choix3","AR7208",1)~
EXTERN BELTP 2
END
IF ~~ THEN BEGIN 2
SAY @6 /* ~Charname, votre modestie n’a d’égal que votre bravoure. Vous avez tout de même poursuivi ce dangereux Sarevok dans ces horribles catacombes!~ */
IF ~~ THEN
REPLY @7 /* ~J’avais un compte à régler. Maintenant il a payé sa dette de sang.~ */
EXIT
END
Duc BELT (BELTP.CRE + BELTP.DLG)
BEGIN ~BELTP~
IF ~~ THEN BEGIN 1
SAY @4 /* ~Effectivement, nous nous sommes préparés au pire tout en usant de toute notre diplomatie pour mettre un terme à ces tensions. Je vous avoue que nous sommes épuisés.~ */
IF ~~ THEN EXIT
END
IF ~~ THEN BEGIN 2
SAY @3 /* ~(surprise) cette Grotte humide et nauséabonde? Non, ce lieu n’est pas digne d’intérêt. L’entrée est sous bonne garde et nos architectes s'assurent que les fondations de la cité sont solides.~ */
IF ~~ THEN EXIT
END
IF ~NumTimesTalkedTo(0)~ THEN BEGIN CONTACT
SAY @1 /* ~Ahhh voilà notre HEROS!~ */
IF ~~ THEN EXIT
END
2- Nom du BEGIN dans le EXTERN
J'ai essayé de mettre du texte dans me nom des BEGIN. si c'est un bloc lié à un EXTERN, WEIDU est erreur pour un problème de LABEL. On est visiblement obligé de mettre un chiffre.
Je sais que l'on peut utiliser le CHAIN IF pour les discussions à plusieurs mais mon éditeur ne gère pas ce point pour le moment.