Aller au contenu


Dialogue : Les Variables Locales


  • Veuillez vous connecter pour répondre
11 réponses à ce sujet

#1 drakan

drakan

Posté 20 avril 2010 - 21:38

bonjour,

depuis quelque temps je m'evertue à comprendre les limites des locales variables ( qui sont qu'a moitié locale )
et comme precisé dans mon titre, je voudrais savoir si on peut utilisé un variable locale comme condition dans un dialogue

les symptomes .... ^^
Spoiler

mes recherches...
Spoiler

voila mon petit resumé de ma prise de tete hebdomadaire sur TES3 :)

Modifié par drakan, 21 avril 2010 - 09:40.


#2 Nerwal

Nerwal

    SAMU Kalendaarien


Posté 20 avril 2010 - 23:34

Le filtre teste les variables locales du script local attaché à la référence.

#3 drakan

drakan

Posté 21 avril 2010 - 10:05

simple et rapide :sorcerer: merci!

Citation

Le filtre teste les variables locales du script local attaché à la référence.

en effet mes dialogues apparaissent maintenant qd je filtre sur mon perso
en revanche, quand je lui parle et qu'on arrive au dialogue " conditionné " par la variable local : ca plante =>retour au bureau

mes petites recherches...
Spoiler


#4 drakan

drakan

Posté 25 avril 2010 - 12:58

personne n'a d'idée? ;)


j'ai beau lire "Morrowind Scripting for Dummies v9" mais ce n'est pas super clair...

#5 abg

abg

    L'ABG pour les civilisés


Posté 25 avril 2010 - 13:16

Voir le messagedrakan, le 25 avril 2010 - 12:58, dit :

personne n'a d'idée? ;)

La description que tu fais du problème n'est pas franchement claire non plus...
Filtrer des dialogues sur une variable locale est une méthode massivement utilisée dans Morrowind.esm comme dans les mods ;)
Antoninus Bibulus Glaber
Coaching de PNJs chez Morrowind Renaissance

#6 elendell

elendell

    Mécano Dell'Arte


Posté 25 avril 2010 - 21:40

Bonjour drakan,

Voir le messagedrakan, le 25 avril 2010 - 12:58, dit :

personne n'a d'idée? :rolleyes:

Comme l'a dit abg, ce n'est pas facile de t'aider sans avoir plus d'éléments. Peut-être pourrais-tu poster un screen des dialogues en questions dans le Tescs, ainsi que ton script local qui contient la variable.

Question : As-tu essayé avec une nouvelle partie depuis les changements ou avec une sauvegarde ?

Tu peux aussi essayer de faire un autre esp de test avec juste un dialogue conditionné par une variable locale, dès fois que ce serait ton esp qui ait un bug.

Pour ça, tu fais un script qui ne contient qu'une variable, tu le mets en local sur un PNJ et tu fais un dialogue pour ce PNJ qui a cette variable=0 en condition. Tu sauvegardes, coche le mod et va voir si ça fonctionne.

#7 drakan

drakan

Posté 26 avril 2010 - 20:41

Citation

Filtrer des dialogues sur une variable locale est une méthode massivement utilisée dans Morrowind.esm comme dans les mods :mrgreen:

c'est un soulagement ^^ je me voyai mal faire des quetes sans ca

Citation

Question : As-tu essayé avec une nouvelle partie depuis les changements ou avec une sauvegarde ?

j'ai essayé , meme resultat

Citation

Tu peux aussi essayer de faire un autre esp de test avec juste un dialogue conditionné par une variable locale, dès fois que ce serait ton esp qui ait un bug.

c'est une exellente idée , de cette maniere je pourrai isoler le probleme

merci :)

#8 drakan

drakan

Posté 19 mai 2010 - 10:24

j'abandonne l'utilisation des variables locales dans les dialogues.
j'ai essayé ce que tu as dit elendell, mais j'ai obtenu le mm resultat

de tt maniere, d'apres ce que j'ai vu dans morrowind, l'utilisation des variables locales est tres limité (ne prend que la valeur 1 ou 0 et ,d'apres ce que dit le didactiel pour "dummy" ^^, l'utilisation est assez complexe

#9 abg

abg

    L'ABG pour les civilisés


Posté 19 mai 2010 - 10:31

Voir le messagedrakan, le 19 mai 2010 - 10:24, dit :

de tt maniere, d'apres ce que j'ai vu dans morrowind, l'utilisation des variables locales est tres limité (ne prend que la valeur 1 ou 0 et ,d'apres ce que dit le didactiel pour "dummy" ^^, l'utilisation est assez complexe

Hein  :grin: C'est à se demander si on parle bien de la même chose !
Les variables (qu'elles soient locales ou globales) peuvent prendre toutes valeurs dans les limites de leur type (short, long ou float)
Mais en fait on ne sait pas ce que tu fais, ce que tu as essayé. Cette dernière sortie me suggère un malentendu complet  :ph34r:
Antoninus Bibulus Glaber
Coaching de PNJs chez Morrowind Renaissance

#10 drakan

drakan

Posté 29 mai 2010 - 11:37

difficile de se refaire un test qui remonte à loin ^^ mais bon si jamais vous savez comment ca fonctionne les variable locales dans les dialogues , ca pourrait etre plus qu'interessant :paladin:

mon test en image:

premier teste avec une variable globale. tout marche c'est parfait!


Image IPB



deuxieme teste, je remplace celle ci par une variable locale

Image IPB


je lance le jeu puis via la console , je lance le script contenant la variable et je met cette variable à 1

et... " ca ne marche pas"

je me rappelle mon test precedent ou ca avait carrement fait un retour sur le bureau.
la seule chose qui changeait etait que j'avais mis au lieu de 1 , 20

je vous remerci pour votre aide en se qui concerne le scriptage , mon mod avance assez bien, suffisament pour que bientot j'aille l'annoncer dans les "mod en cours" ^^

Modifié par drakan, 29 mai 2010 - 11:40.


#11 Kafou

Kafou

    Le canari a bouffé le rominet !


Posté 29 mai 2010 - 14:30

Il ne faut pas "lancer le script contenant la variable", ça n'a pas de sens. Une variable locale, comme son nom l'indique, n'a portée que sur le script dans lequel elle est déclarée (et, dans le cas de script locaux, sa valeur est propre à chaque référénce de l'objet). Il faut que la variable Phh soit déclarée dans le script de ton PNJ "LefisHan" pour que ton entrée de dialogue ait un sens. Sinon, c'est normal et évident que ça ne marchera pas.

PS : un gros conseil, mets des préfixes à tes ID. De préférence séparés avec un underscore. Comme Ph_nomdelobjet par exemple. "LefisHan", c'est un coup à perdre du temps lors du modding et à créer des incompatiblités entre mods.
You look like you need a monkey!

Attention : perfectionniste paresseux.

#12 abg

abg

    L'ABG pour les civilisés


Posté 29 mai 2010 - 14:38

Voir le messagedrakan, le 29 mai 2010 - 11:37, dit :

je lance le jeu puis via la console , je lance le script contenant la variable et je met cette variable à 1

et... " ca ne marche pas"

Si "Phh" est une variable locale, c'est à dire propre à un script "local" placé sur le PNJ, tu n'as rien à lancer  :paladin:

J'ai l'impression depuis un moment qu'il y a maldonne sur les termes : une variable locale est une variable déclarée dans un script qui va être attaché à un id du jeu (PNJ, objet...etc.). Le script est instancié aux références de l'id. Il tourne en permanence tant que le PJ est dans les environs (une cell en intérieur, une cell + les 8 contiguës en extérieur...)
Antoninus Bibulus Glaber
Coaching de PNJs chez Morrowind Renaissance




0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)