Comment faire pour que mon NPC attaque le PC avec lequel il est en train de parler ?

Je voudrais ajouter un script qui fait que le NPC devienne hostile. Placez le script dans la case « Action Taken » en bas à droite de l’éditeur de dialogue…vérifiez que vous avez bien sélectionné le nœud où vous voulez que la battaille commence.
Si vous voulez que la faction du NPC devienne hostile contre la cible, utilisez le script générique "nw_d1_attonend":


//::///////////////////////////////////////////////
//:: Attaque à la fin de la conversation.
//:: NW_D1_AttOnEnd
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Le script dit au NPC d’attaque le PC avec lequel il est en train de parler.
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Nov 7, 2001
//:://////////////////////////////////////////////

#include "NW_I0_GENERIC"
void main()
{
AdjustReputation(GetPCSpeaker(), OBJECT_SELF, -100);
DetermineCombatRound();
}

Si vous voulez juste que seul le NPC devienne hostile et attaque, utilisez le script générique "nw_d1_attonend02":


//::///////////////////////////////////////////////
//:: Attaque à la fin de la conversation.
//:: NW_D1_AttOnEnd02
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Le script dit au NPC d’attaque le PC avec lequel il est en train de parler.Il ne change que l’attitude du NPC,
pas de la faction toute entière.*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Nov 7, 2001
//:://////////////////////////////////////////////

#include "NW_I0_GENERIC"
void main()
{
SetIsTemporaryEnemy(GetPCSpeaker());
DetermineCombatRound();
}

Une chose dont il faut se méfier: Si vous appliquez ce script au nœud ou le NPC est en train de parler, il deviendra hostile tout de suite et le nœud ne sera pas affiché. Comme si le NPC n’avait pas le temps de le lire entièrement, si c’est une longue partie du dialogue.
Si vous êtes d’accord avec ça, tant mieux. Sinon, utilisez le bouton Add pour rajouter un nœud après le dernier nœud du NPC. Effacez le texte de la réponse du PC et appuyez sur Enter…Cela affichera un nœud [End Dialogue]. Ajoutez le script dans la zone « Action Taken » de la fin du dialogue à la place de l’autre emplacement. Comme cela, le Pc peut lire ce que le NPC lui dit…et quand il appuie sur « Enter » pour continuer, le NPC attaque.

PROBLEMES FREQUENTS:
Verifiez que la créature qui doit entammer le combat n’a AUCUN niveau en « Commoner ». Les roturiers sont définis par l’IA pour prendre la fuite face à quelqu’un hostile, et de former un groupe uniquement si il y a des roturiers de niveau 10 ou plus à proximitée.
Vérifiez aussi que si vous utilisez les « Special Behaviors » (comportements spéciaux) dans le script OnSpawn, vous n’utilisez pas le comportement « Herbivore » (on ne sait jamais ). Les herbivores n’engagent jamais le combat et prennent toujours la fuite.

__________________
Théranthil, Mage Elfe prêtre de Mystra Membre des GdE
Parti Elmotiste pour un parler jowilien: Ministre supérieur de la corruption

"Les langues vont toujours bon train. Les pieds ont du mal à suivre."
(les bourses aussi NdT )
Mespert de la porte de Baldur