[Résolu] Placer un objet ds un coffre à un moment précis d'une quête

C'est ici que vous pouvez poser vos questions techniques.
Répondre
daan
Moddeur aspirant
Moddeur aspirant
Messages : 171

Placer un objet ds un coffre à un moment précis d'une quête

Message par daan »

Bonjour,

Je cherche à placer un objet (un livre) dans le coffre d’un marchand à un moment précis d’une quête (stage20).
Ayant récemment appris une méthode avec les alias pour placer un acteur (méthode décrite dans ce poste : http://www.confrerie-des-traducteurs.fr ... 8&start=10), j’ai donc tenté de reproduire l’opération avec mon livre.

Pour ce faire j’ai :
Créé un livre,
Dans ma quête j’ai créé un nouvel alias pointant vers le coffre de mon marchand (alias_coffre)
Toujours dans la quête j’ai créé un deuxième alias (alias_livre) : "create reference to object" + Mon livre + "In" et «alias_coffre» )
Pour ce deuxième alias j’ai également coché les cases « allow Diesabled » et « Initially Diesabled »

Enfin dans le fragment du stage voulu j’ai rédigé :
” Alias_livre.GetReference().enable()”

Et vous l’aurez compris cela ne fonctionne pas.
J’ai décoché la case « Initially Diesabled » pour un test histoire de voir si l’alias était bien créé et c’est bien le cas sauf que bien sûr ce dernier est créé au tout début de la quête.

L’un d’entre vous pourrait-il me dire d’où vient mon problème ?
(Ced mon sauveur es-tu là ? ) :siffle: :honneur: :D

D’avance merci,
Daan.
Modifié en dernier par daan le 28 avr. 2013, 11:20, modifié 2 fois.
Parce qu'on a pas commencer avec Skyrim ;
faites donc un tour a cette adresse pour vous rappelez votre jeunesse:
http://www.abandonware-france.org
avec par exemple:
http://www.abandonware-france.org/ltf_a ... php?id=332
Avatar du membre
ced909
Confrère
Messages : 151

Re: placer un objet ds un coffre de marchant a un moment pré

Message par ced909 »

Bonsoir,

Alors à ma connaissance, on ne peut pas Disable() et Enable() une référence (objets, livres, armure, armes...) contenue dans un coffre... et ceci depuis Morrowind.
Ces fonctions ne marchent que si l'object référencé est présent dans une Cell interior/exterior. Tes enable/disable et autres flags dans le genre sont donc inutils ici tant que l'objet est dans un container.

Sinon tu peux rendre actif ton 2e alias "create ref in coffre", en lui mettant des conditions dans cet alias "book" cible de la condition "player" car c'est une référence "Create"
voir la section "Fill Type Conditions" -> http://www.creationkit.com/Alias
Sur ce point, je ne pourrais pas beaucoup t'aider, je n'ai jamais testé les conditions d'Alias / essaie de regarder les Alias de quêtes existantes.

Tu peux l'ajouter autrement de l'exterieur par fonction de script aussi à toi de voir.
daan
Moddeur aspirant
Moddeur aspirant
Messages : 171

Re: placer un objet ds un coffre de marchant a un moment pré

Message par daan »

Bonjour,

Si j'ai bien compris pour conditionner les alias "créate" je n'ai droit qu’à des conditions sur le player ! c'est bien ça ? (Désolé , mon anglais est plus que limité.)

Si c'est bien ça je pense me diriger vers un petit script, les conditions sur le player alors que je voudrai mettre en place a un stage de quête me semble compliqué.
Une petite ligne de script me sera plus accessible, après tout j'ai eu un excellent prof de scripting ! ;) :D

Daan
Parce qu'on a pas commencer avec Skyrim ;
faites donc un tour a cette adresse pour vous rappelez votre jeunesse:
http://www.abandonware-france.org
avec par exemple:
http://www.abandonware-france.org/ltf_a ... php?id=332
daan
Moddeur aspirant
Moddeur aspirant
Messages : 171

Re: Placer un objet ds un coffre de marchand à un moment pré

Message par daan »

re-bonjour,

Le prof est bon mais l'élève est toujours aussi nul ! :embaras:
j'ai tenté un " MonContainer.AddItem(MonLivre)" dans le fragment du stage de la quête mais il n'arrive pas a compiler :"AddItem is not a function or does not exist
"
j'ai également tenté dans un fragment de dialogue mais j'ai le même résultat . ( pourtant j'ai déjà utilisé un "PlayerRef.addItem(TrucBidul) )
Où est mon erreur ?

D'avance merci ,
Daan
Parce qu'on a pas commencer avec Skyrim ;
faites donc un tour a cette adresse pour vous rappelez votre jeunesse:
http://www.abandonware-france.org
avec par exemple:
http://www.abandonware-france.org/ltf_a ... php?id=332
Avatar du membre
ced909
Confrère
Messages : 151

Re: Placer un objet ds un coffre de marchand à un moment pré

Message par ced909 »

Hello,

"MonContainer" est l'ID du "ReferenceAlias" ? Et c'est pareil pour "MonLivre" ?
Si oui alors essaie ceci : MonContainer.GetRef().AddItem(MonLivre.GetRef())
daan
Moddeur aspirant
Moddeur aspirant
Messages : 171

Re: Placer un objet ds un coffre de marchand à un moment pré

Message par daan »

Bonjour,

d'abord merci , une fois de plus , pour ton aide. :bisou: :biere:
"MonContainer" est l'ID du "ReferenceAlias" ?
non , "MonContainer" est une propriété du type container qui contenait le coffre du marchant.
Et c'est pareil pour "MonLivre" ?
pas d'alias non plus ici : propriété du type book.

Mais ça c'était avant ! :mdr:
après ton poste j'ai tenté de mettre en place des alias, si pour le coffre c'était facile je ne voyais pas comment faire avec le livre ( le coffre existe dans la cell et donc je peux le "spécifier" mais pour le livre je ne sais/savais pas comment procéder.)
J'ai donc fais un mixe :
AliasMonContainer.GetRef().AddItem(MonLivre)
avec MonLivre qui est toujours une propriété du type book.
et la ... ça marche ! :top:

Ça fonctionne mais je comprend pas pourquoi , peux tu éclairer ma lanterne ?
pourquoi avec l'alias ça marche et pas avec une propriété "classique"?
et pourquoi faut il l'alias sur le container et pas sur l'objet ( livre) ?

D'avance merci pour ton aide.
Daan
Parce qu'on a pas commencer avec Skyrim ;
faites donc un tour a cette adresse pour vous rappelez votre jeunesse:
http://www.abandonware-france.org
avec par exemple:
http://www.abandonware-france.org/ltf_a ... php?id=332
Avatar du membre
Gerauld
Confrère
Messages : 2439

Re: Placer un objet ds un coffre de marchand à un moment pré

Message par Gerauld »

Quand le compilateur te dit qu'une fonction n'existe pas pour un objet, comme ton additem sur ta variable moncontainer, cela peut vouloir dire deux choses :
- ta propriété ou variable est d'un type pour lequel cette instruction n'existe pas. (par exemple, on ne peut faire un additem sur un arbre (enfin normalement... Avec Beth, il faut tester avant de dire ce genre de trucs...))
- Le compilateur a eu du mal à comprendre la déclaration de ta propriété... donc aucun type n'y est attaché donc pas facile... Quête? Stage? Normal. Il faut en effet refermer le tout et le ré-ouvrir pour pouvoir ajouter des propriétés. Avec les quest Stages, il est normalement impossible d'ajouter des properties le 1er coup sans avoir refermer le script après sa création.

PETIT LIEN
Hors-sujet
Heu... Sujet résolu? Petit balise [Résolu] dans le titre du sujet. Merci d'avance.
Répondre

Retourner vers « Entraide sur le Creation Kit »