Jump to content

How to kill a NPC in a CHAIN?


Garfield

Recommended Posts

Okay, the title may seem obscure, but I'll explain.

 

I want my NPC and Jaheira to have a short talk after a rest, and then, at the end of this dialogue, Jaheira must die, and the PC have to chose one answersout ouf tree. Here is my file:

 

CHAIN IF ~PartyRested()

  InParty("Rkd#Rak")

  See("Rkd#Rak")

  !StateCheck("Rkd#Rak",STATE_SLEEPING)

  Global("JaheirPois","GLOBAL",0)~ THEN BJAHEIR Meutre

  ~Aaahh! Le chien! Il m'a eu...~

  =

  ~*Jaheira est livide, elle sue a grosses goutes. Des cernes sous ses yeux indiquent qu'elle n'a pas trouvé le repos de la nuit.*~

  =

  ~Orque...soit... maudit...à jamais...~

  =

  ~<CHARNAME>, venge moi, au nom de notre amitié.~

  =

  ~*La poitrine de Jaheira se soulève d'une convulsion, cherchant l'air qui commence à lui manquer. Elle retombe sur le sol sans l'avoir trouvé, et les paupières de la druidesse se referment alors qu'un flotde sang s'échappe de ses lèvres laissés pâles par le poison.*~

  DO ~SetGlobal("JaheirPois","GLOBAL",1)

  Kill("JAHEIRA")

  ActionOverride("JAHEIRA",LeaveParty())~

  ==Rkd#Rak

  ~Grmbl. La chienne est morte, l'écume aux lèvres... Bon débarras.~ END

  ++ THEN REPLY ~J'espère que tu es fier de toi, nous venons de perdre un élément de valeur. Mais à choisir, tu es plus utile au groupe. Continuons, paix à l'âme de Jaheira.~ + PaixJaja

  ++ ~Il est temps de rendre des comptes, orque! Comment as-tu osé? Vas t'en, que je ne te vois plus.~ + Part

  ++ ~Ainsi la druidesse retourne à la terre qu'elle aimait tant. Une bonne chose de faite. Merci a vous. Continuons!~ + Merci

 

IF ~~ THEN BEGIN PaixJaja

  SAY ~C'est ça, paix à Jaheira...~

  IF ~~ THEN EXIT

END

 

IF ~~ THEN ++ BEGIN Part

  SAY ~Très bien, je pars. Vous me regretterez sans doute beaucoup plus que votre druidesse...~

  IF ~~ THEN DO~ SetGlobal ("RakJoined","LOCALS" ,0)

  LeaveParty()

  EscapeArea()~ EXIT

END

 

IF ~~ THEN BEGIN Merci

  SAY ~Prr. Je savais que vous me remercieriez.~

  IF ~~ THEN EXIT

END

 

They tell me there is a syntax problem at the red cross. Is there something I missed? :D

Link to comment

Ok, I tried with this:

 

CHAIN IF ~PartyRested()

  InParty("Rkd#Rak")

  See("Rkd#Rak")

  !StateCheck("Rkd#Rak",STATE_SLEEPING)

  Global("JaheirPois","GLOBAL",0)~ THEN BJAHEIR Meutre

  ~Aaahh! Le chien! Il m'a eu...~

  =

  ~*Jaheira est livide, elle sue a grosses goutes. Des cernes sous ses yeux indiquent qu'elle n'a pas trouvé le repos de la nuit.*~

  =

  ~Orque...soit... maudit...à jamais...~

  =

  ~<CHARNAME>, venge moi, au nom de notre amitié.~

  =

  ~*La poitrine de Jaheira se soulève d'une convulsion, cherchant l'air qui commence à lui manquer. Elle retombe sur le sol sans l'avoir trouvé, et les paupières de la druidesse se referment alors qu'un flotde sang s'échappe de ses lèvres laissés pâles par le poison.*~

  DO ~SetGlobal("JaheirPois","GLOBAL",1)

  Kill("JAHEIRA")

  ActionOverride("JAHEIRA",LeaveParty())~

  ==Rkd#Rak

  ~Grmbl. La chienne est morte, l'écume aux lèvres... Bon débarras.~ END

  ++ ~J'espère que tu es fier de toi, nous venons de perdre un élément de valeur. Mais à choisir, tu es plus utile au groupe. Continuons, paix à l'âme de Jaheira.~ + PaixJaja

  ++ ~Il est temps de rendre des comptes, orque! Comment as-tu osé? Vas t'en, que je ne te vois plus.~ + Part

  ++ ~Ainsi la druidesse retourne à la terre qu'elle aimait tant. Une bonne chose de faite. Merci a vous. Continuons!~ + Merci

 

APPEND BRkd#Rak

 

IF ~~ THEN BEGIN PaixJaja

  SAY ~C'est ça, paix à Jaheira...~

  IF ~~ THEN EXIT

END

 

IF ~~ THEN BEGIN Part

  SAY ~Très bien, je pars. Vous me regretterez sans doute beaucoup plus que votre druidesse...~

  IF ~~ THEN DO~ SetGlobal ("RakJoined","LOCALS" ,0)

  LeaveParty()

  EscapeArea()~ EXIT

END

 

IF ~~ THEN BEGIN Merci

  SAY ~Prr. Je savais que vous me remercieriez.~

  IF ~~ THEN EXIT

END

END

 

But I get an errormessage wich tells me :

 

ERROR/ Cannot resolve internalsymbolic label [PaixJaja] for DLG [bJAHEIR].

 

Obviously, the 3 answers are not pointing in the proper DLG (must be because the chain uses Jaheira's dlg even if it's in Rakdar's one...)

 

So I guess I should put an EXTERN, but where?

 

Thanks

Garf

Link to comment

You need EXTERN here:

 

++ ~J'espère que tu es fier de toi, nous venons de perdre un élément de valeur. Mais à choisir, tu es plus utile au groupe. Continuons, paix à l'âme de Jaheira.~ + PaixJaja

 

++ ~...~ EXTERN BRkd#Rak PaixJaja

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...