Affichage des résultats 1 à 8 sur 8

Discussion: [DLG] Problème avec la commande INTERJECT

  1. #1
    Date d'inscription
    December 2007
    Localisation
    Dordogne
    Messages 
    1 141

    [DLG] Problème avec la commande INTERJECT

    Comme certains le savent peut être je ne jure que par la commande CHAIN. Je la met sur tous mes dialogues car il me permet de rajouter des interventions d'autres persos facilement tout en m’économisant beaucoup de code.

    Cependant dans les cas présent ça m'a posé quelques soucis pour la simple et bonne raison qu'il y a un domaine où il est impossible d'utiliser un CHAIN c'est à dire à l'intérieur d'un append. Et en l’occurrence je me trouve dans le seul cas ou je suis obligé d'en utiliser un à savoir à l'intérieur d'un player1 (pour faire parler Charname). Étant dans un cas figure ou mon fichier comprend un certain nombres de dlg j'ai fini par mettre mon append en début de fichier pour éviter les incohérence du type "ce bloc n'existe pas". Un petit exemple pour vous faire une idée :


    Code:
    BEGIN ~#VAngh~
    BEGIN ~#VRat~
    BEGIN ~#VMyri~
    BEGIN ~#VGard03~
    BEGIN ~#VGard04~
    BEGIN ~#VMonk6~
    BEGIN ~#VMonk7~
    BEGIN ~#VMonk8~
    BEGIN ~#VMonk9~
    BEGIN ~#VMonk10~
    BEGIN ~#VMonk11~
    BEGIN ~#VMonk12~
    BEGIN ~#VMonk13~
    BEGIN ~#VJack~
    BEGIN ~#VElen~
    
    
    // On colle les append au début pour zapper les problèmes de fichiers inexistants
    
    
    APPEND ~Player1~
    
    IF ~Global("#VElenspeak","#V7000",1)~ THEN BEGIN RencontreElenna
     SAY @243001
      IF ~~ THEN EXTERN ~#VElen~ ELLENALASANGLANTE
    END
    
    
    IF ~~ THEN BEGIN SANG
     SAY @243023
      IF ~~ THEN EXTERN ~Player1~ SANG02
    END
    
    
    IF ~~ THEN BEGIN SANG02
     SAY @243024
      IF ~~ THEN EXIT
    END
    Voila. Ayant l'intention de rajouter du texte sur le bloc nommé "SANG" j'ai rajouté un INTERJECT dans le d :


    Code:
     // BOURREAU
    
     CHAIN IF ~~ THEN "#VElen" BOURREAU
     @243022
     END
      IF ~~ THEN EXTERN ~Player1~ SANG
      
    INTERJECT PLAYER1 SANG SANGBIS
    
    
     == KORGANJ IF ~InParty("Korgan")~ THEN @243125
     == MAZZYJ IF ~InParty("Mazzy")~ THEN @243126
     == KELDORJ IF ~InParty("Keldorn")~  THEN @243127
     == EDWINJ IF ~InParty("Keldorn")~ THEN @243128
     == VALYGARJ IF ~InParty("Valygar")~ THEN @243129
     == NALIAJ IF ~InParty("Nalia")InParty("Valygar") ~ THEN @243130
     == VALYGARJ IF ~InParty("Nalia")InParty("Valygar") ~ THEN @243131
     == AERIE IF ~InParty("Aerie")~ THEN @243132 
    END PLAYER1 SANG02
    J'utilise ici la commande INTERJECT et non INTERJECT_COPY_TRANS car il me renvoie une erreur : il ne semble pas trouver le state correspondant. A la compilation ça marche mais ingame le bloc se coupe à la fin de la réplique de Korgan alors que Aerie est dans le groupe et qui plus est le bloc ne me renvoie pas sur "SANG02".

    Je cale donc un peu sur ce bloc, je vois pas trop ce qui le fait planter en fait. Si vous avez des idées, je prend parce qu’après 90 minutes de test non stop je bloque (je bloque sur un bloc ahaha ! Désolé... )
    Dernière modification par Freddy_Gwendo ; 02/04/2016 à 03h57. Motif: Modification du titre de la discussion et mise en page

    http://toutlemondesontrolistes.blogs...nitiation.html
    Ancien moddeur pour bg2, critique sur la sphère roliste et gamedesigner en herbe

  2. #2
    Date d'inscription
    February 2011
    Messages 
    674
    Euh, ça fonctionne ça pour faire parler CHARNAME ??
    Code:
    APPEND ~Player1~
    
    
    IF ~Global("#VElenspeak","#V7000",1)~ THEN BEGIN RencontreElenna
    SAY @243001
    IF ~~ THEN EXTERN ~#VElen~ ELLENALASANGLANTE
    END
    « Pssst. Tu as remarqué comme elle me dévore du regard ? Hein ? Tu as vu ça ? La façon dont elle a regardé la courbe de mon os occipital ? »

  3. #3
    Date d'inscription
    December 2007
    Localisation
    Dordogne
    Messages 
    1 141
    Oui bien sur le problème se situe pas la. Mon append se situe à la fin de mes begin donc pas de souci, après pour les CHAIN le fonctionnement est différent.

    http://toutlemondesontrolistes.blogs...nitiation.html
    Ancien moddeur pour bg2, critique sur la sphère roliste et gamedesigner en herbe

  4. #4
    Date d'inscription
    February 2011
    Messages 
    674
    Ok. Eh bien, je savais pas

    Pour ton INTERJECT, il ne manquerait pas un GOTO à la fin par zazard ?
    Dernière modification par mirandir ; 01/10/2012 à 19h19.
    « Pssst. Tu as remarqué comme elle me dévore du regard ? Hein ? Tu as vu ça ? La façon dont elle a regardé la courbe de mon os occipital ? »

  5. #5
    Date d'inscription
    December 2007
    Localisation
    Dordogne
    Messages 
    1 141
    Pas si l'on suit les instructions du read me de weidu, la syntaxe est assez particulière en l’occurrence et faut dire que la manip est assez old school donc peu usité. Après peut être que c'est moi qui interprète mal mais de ce que je vois dans les instructions à la suite du END il faut mettre le nom du dlg cible en premier argument suivi du nom du bloc cible.

    Aprés de ce que je vois in game l'erreur devrait venir d'ailleurs. Bon aprés si j'avais eu un euro chaque fois que j'ai dit ça...

    http://toutlemondesontrolistes.blogs...nitiation.html
    Ancien moddeur pour bg2, critique sur la sphère roliste et gamedesigner en herbe

  6. #6
    Date d'inscription
    February 2011
    Messages 
    674
    Perso, dans le mod que je suis en train de finaliser, j'utilise des INTERJECT et terminer par GOTO nomdunblocdanslemêmefichierdialogue fonctionne bien.

    Mais je suis incapable de me souvenir pourquoi je n'ai pas suivi le readme sur ce coup là.
    Dernière modification par mirandir ; 01/10/2012 à 19h37.
    « Pssst. Tu as remarqué comme elle me dévore du regard ? Hein ? Tu as vu ça ? La façon dont elle a regardé la courbe de mon os occipital ? »

  7. #7
    Date d'inscription
    December 2007
    Localisation
    Dordogne
    Messages 
    1 141
    Ben en l’occurrence je suis dans aucun fichier dialogue si ce n'est dans le dlg player1 vu que j'utilise des CHAIN je n'ai pas besoin d'être "dans un fichier". Après je peux toujours essayer de le mettre dans un BEGIN peu importe lequel d’ailleurs. Mais je pense que le problème doit provenir de la particularité du fichier dlg player1.


    EDIT : désolé j'avais mal compris ton message je vais essayer avec le GOTO voir...

    EDIT 2 : weidu aime pas ça avec le GOTO j'ai eu droit à une syntax error.
    Dernière modification par Armand ; 01/10/2012 à 19h41.

    http://toutlemondesontrolistes.blogs...nitiation.html
    Ancien moddeur pour bg2, critique sur la sphère roliste et gamedesigner en herbe

  8. #8
    Date d'inscription
    December 2007
    Localisation
    Dordogne
    Messages 
    1 141
    En fait l'erreur était toute conne, c'est à s'en faire rager tellement c'était simple. Vu qu'ils 'agit d'interjection ici je dois faire référence au fichier dialogue AERIEJ et non AERIE. Un bête oubli qui fait tout planter vu que le fichier dialogue ne correspond pas du tout à la situation.
    Dernière modification par Freddy_Gwendo ; 02/04/2016 à 03h54.

    http://toutlemondesontrolistes.blogs...nitiation.html
    Ancien moddeur pour bg2, critique sur la sphère roliste et gamedesigner en herbe

Discussions similaires

  1. Réponses: 4
    Dernier message: 08/04/2016, 09h07
  2. [BGT][TECH] Installation BGT "Trop d'arguments dans la ligne de commande"
    Par teddyden dans le forum Baldur's Gate Reloaded : les mods TUTU et Baldur's Gate Trilogy
    Réponses: 25
    Dernier message: 11/10/2011, 19h51
  3. [WeiDU] La commande STRING_SET
    Par zefklop dans le forum Programmation WeiDU
    Réponses: 3
    Dernier message: 28/12/2005, 09h50
  4. [WeiDU] Je n'arrive pas à utiliser la commande "automate"
    Par zefklop dans le forum Programmation WeiDU
    Réponses: 3
    Dernier message: 15/07/2005, 01h34
  5. Réponses: 3
    Dernier message: 08/06/2005, 22h31

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256