[Résolu] Changer la tenue d'un PNJ selon le lieu

Le langage des scripts.
Avatar du membre
Tissendel
Maîtresse de Forge
Maîtresse de Forge
Messages : 1157

Re: Changer la tenue d'un PNJ selon le lieu

Message par Tissendel »

Ok, alors la première chose à faire c'est de vérifier que l’événement OnCellAttach est bien exécuté.

Pour ça tu peux ajouter cette ligne :
debug.notification("Le PNJ change de cellule")
Au tout début, juste après Event OnCellAttach()

Normalement une notification va apparaître en haut à gauche quand le PNJ changera de cellule.

Les cellules, comment dire, c'est des "espaces". Chaque intérieur est contenu dans une cellule, voir plusieurs parfois comme certains donjons où on a des portes avec un temps de chargement. L’extérieur de Bordeciel est elle divisées en cellules mais on ne les remarques pas.
Avatar du membre
Confrère_VF
Comédien
Comédien
Messages : 558

Re: Changer la tenue d'un PNJ selon le lieu

Message par Confrère_VF »

Ah mais les cellules je savais ce que c'était, oui. C'était par rapport à ces histoires de variables et de fonctions que j'avais du mal à suivre.
J'ai ajouté la ligne au bon endroit comme tu me l'avais dit, mais en effet le texte ne s'affiche pas :/ Au moins, on a une idée de l'origine du problème.

Je ne sais pas si ça fait une grosse différence dans notre cas, mais je suis sur le CK64.
« Le terme "doubleur" est totalement erroné quand il désigne les acteurs prêtant leur voix. Il définit un entrepreneur qui a une société de doublage. » - Éric Legrand.
Mes doublages réalisés et en cours.
Avatar du membre
Tissendel
Maîtresse de Forge
Maîtresse de Forge
Messages : 1157

Re: Changer la tenue d'un PNJ selon le lieu

Message par Tissendel »

Variables et fonctions c'est les bases de la programmation. Effectivement quand on connais pas ça doit semblé plutôt abstrait.

Bon je vais tester cet événement OnCellAttch pour voir comment elle fonctionne. Sinon il y aura une autre solution.

Non, CK64 ca ne change rien ^^
Avatar du membre
Confrère_VF
Comédien
Comédien
Messages : 558

Re: Changer la tenue d'un PNJ selon le lieu

Message par Confrère_VF »

Voici le script tel que je l'ai écrit, avec les vrais termes, les vrais espaces (ils sont automatiquement enlevés par le site) et tout le bazar histoire qu'il n'y ait pas de malentendu :
Hors-sujet
Scriptname EloraOutdoor extends Actor

Armor Property EloraOutfit Auto
Armor Property EloraOutfitOutdoor Auto

Event OnCellAttach()
debug.notification("Elora change de cellule")
Cell EloraHouse = Self.GetParentCell()
If EloraHouse.IsInterior()

If !Self.IsEquipped(EloraOutfit)
Self.EquipItem(EloraOutfitOutdoor)
else
If !Self.IsEquipped(EloraOutfitOutdoor)
Self.EquipItem(EloraOutfit)
endIf
endIf
endIf

endEvent
« Le terme "doubleur" est totalement erroné quand il désigne les acteurs prêtant leur voix. Il définit un entrepreneur qui a une société de doublage. » - Éric Legrand.
Mes doublages réalisés et en cours.
Avatar du membre
Tissendel
Maîtresse de Forge
Maîtresse de Forge
Messages : 1157

Re: Changer la tenue d'un PNJ selon le lieu

Message par Tissendel »

J'ai testé et ça marche.

J'ai essayé sur Alvor :
► Afficher le texte
Bon, il y a un léger soucis dans ton script avec l'imbrication des if. Je te copie le code corrigé.
Armor Property EloraOutfit Auto
Armor Property EloraOutfitOutdoor Auto

Event OnCellAttach()
	debug.notification("Elora change de cellule")

	Cell EloraHouse = Self.GetParentCell()
	If EloraHouse.IsInterior()

		If !Self.IsEquipped(EloraOutfit)
			Self.EquipItem(EloraOutfitOutdoor)
		endif

	else

		If !Self.IsEquipped(EloraOutfitOutdoor)
			Self.EquipItem(EloraOutfit)
		endIf

	endIf

endEvent  
Cela dit ça n'explique pas pourquoi tu n'as pas la notification. Tu as bien mis le script sur ton PNJ comme ceci ?:

Image
Avatar du membre
Confrère_VF
Comédien
Comédien
Messages : 558

Re: Changer la tenue d'un PNJ selon le lieu

Message par Confrère_VF »

Alors j'avais voulu tester sur une nouvelle partie, et pour le coup le texte apparaissait. Mais chaque fois que j'entrais dans la cellule EloraHouse, j'avais le message mais jamais en allant dans une autre. Comme si elle me fuyait.

Edit : Aaaaannh... Bah non, là voilà peut-être l'explication. J'avais mis le script dans la fenêtre quand on double-clique sur le PNJ dans la Render View, donc pas à la base. J'essaie ça tout de suite.

Bon ben c'est pas clair. J'ai la phrase "Elora change de cellule" seulement quand elle est déjà chez elle et que je rentre, mais jamais quand je la téléporte à moi (peu importe le sens).

Sinon, tu veux que je t'envoie l'ESP directement pour que tu le regardes dans le CK ? Ce serait peut-être plus simple...


Et dire qu'on galère pour un truc aussi bête que ça, qu'est-ce que ça va être après --'
« Le terme "doubleur" est totalement erroné quand il désigne les acteurs prêtant leur voix. Il définit un entrepreneur qui a une société de doublage. » - Éric Legrand.
Mes doublages réalisés et en cours.
Avatar du membre
Tissendel
Maîtresse de Forge
Maîtresse de Forge
Messages : 1157

Re: Changer la tenue d'un PNJ selon le lieu

Message par Tissendel »

Ba peut être que téléporter le PNJ court-circuite l’événement OnCellAttach. Les explications de Bethesda sur OnCellAttach sont pas claires du tout XD

Faudrait voir si ca fonctionne quand elle change de cellule d'elle même.
Avatar du membre
Confrère_VF
Comédien
Comédien
Messages : 558

Re: Changer la tenue d'un PNJ selon le lieu

Message par Confrère_VF »

Tissendel a écrit : 20 nov. 2019, 16:37 Faudrait voir si ca fonctionne quand elle change de cellule d'elle même.
Ça, je cherche encore^^ Je lui ai fait un package pour qu'au moins elle se promène dans sa maison, et ça ne marche pas bien. Alors dehors, tu penses :xD:
« Le terme "doubleur" est totalement erroné quand il désigne les acteurs prêtant leur voix. Il définit un entrepreneur qui a une société de doublage. » - Éric Legrand.
Mes doublages réalisés et en cours.
Avatar du membre
Tissendel
Maîtresse de Forge
Maîtresse de Forge
Messages : 1157

Re: Changer la tenue d'un PNJ selon le lieu

Message par Tissendel »

Il faut que tu assignes tes tenues au script sinon il ne saura pas quelles tenues lui faire équiper.

Image

Edit : J'ai été essayé le mod en jeu ( Et surprise nouvelle MAJ de Skyrim SE :mur: :S ). Je ne trouve pas Elora xD
Avatar du membre
Confrère_VF
Comédien
Comédien
Messages : 558

Re: Changer la tenue d'un PNJ selon le lieu

Message par Confrère_VF »

D'accord, mais comment j'assigne les tenues au script ? Dans la fenêtre Pick Object, ses différents Outfits n'existent pas (ni même les vêtements de manière individuelle).

Tu ne la trouves pas, c'est-à-dire ? Tu ne sais pas où elle habite ? (à Aubétoile, il y a normalement un MapMarker déjà découvert avec son nom dessus) Ou bien elle n'est pas là du tout quand tu entres dans la maison ? Parce que si c'est ce second cas, t'inquiète j'ai ce problème aussi xD (et pas qu'avec elle) Je ne sais pas comment régler ça ni d'où ça vient.
« Le terme "doubleur" est totalement erroné quand il désigne les acteurs prêtant leur voix. Il définit un entrepreneur qui a une société de doublage. » - Éric Legrand.
Mes doublages réalisés et en cours.
Répondre

Retourner vers « Entraide sur les scripts »