Saradas Posted April 3, 2014 Author Share Posted April 3, 2014 I have a question regarding a chain dialog between my npc and Edwin. At some point, I want my npc to ask charname's opinion about the discussion. The problem is, when you select the answer of your choice, Edwin's name will be displayed in the text box, not charname's. CHAIN IF ~InParty("!sartob") InParty("Edwin") !ActuallyInCombat() IsValidForPartyDialog("Edwin") IsValidForPartyDialog("!sartob") RealGlobalTimerExpired("nameoftimer","GLOBAL") Global("nameofglobal","GLOBAL",6)~ THEN Sarad25J NameOfChain ~BlaBlaBla~ DO ~SetGlobal("nameofglobal","GLOBAL",7)~ == EDWIN25J ~BlaBlaBla~ == Sarad25j ~BlaBlaBla~ == EDWIN25J ~BlaBlaBla~ == Sarad25j ~BlaBlaBla~ == EDWIN25J ~BlaBlaBla~ == Sarad25j ~BlaBlaBla~ = ~BlaBlaBla~ == EDWIN25J ~BlaBlaBla~ == Sarad25j ~BlaBlaBla~ = ~BlaBlaBla~ = ~BlaBlaBla. What do you think, <CHARNAME>?~ END ++ ~Option1~ + SomeDialog1 ++ ~Option2~ + SomeDialog2 +~InParty("Viconia")~+ ~Option3~ + SomeDialog3 +~!InParty("Viconia")~+ ~Option4~ + SomeDialog4 CHAIN IF ~~ THEN Sarad25J SomeDialog1 ~BlaBlaBla~ == EDWIN25J ~BlaBlaBla~ EXIT CHAIN IF ~~ THEN Sarad25J SomeDialog2 ~BlaBlaBla~ EXIT CHAIN IF ~~ THEN Sarad25J SomeDialog3 ~BlaBlaBla~ == EDWIN25J ~BlaBlaBla~ == VICON25J ~BlaBlaBla~ EXIT CHAIN IF ~~ THEN Sarad25J SomeDialog4 ~BlaBlaBla~ == EDWIN25J ~BlaBlaBla~ EXIT any idea about my error? Link to comment
jastey Posted April 3, 2014 Share Posted April 3, 2014 Hm, if it would be triggered by script, I would suggest replacing the "StratDialogNoSet/Interact("Edwin")" with "StratDialogNoSet/ Interact(Player1)" instead, to make the "active dialogue partner" Player1. But like this, I fear it's something hard-coded. I never noticed it while playing, though. I guess I just assume that all reply options are for <CHARNAME> - and never read the dialogue in the textbox after it happened. Link to comment
Saradas Posted April 3, 2014 Author Share Posted April 3, 2014 Alright jastey, I just tried putting StartDialogNoSet(Player1) and now Charname replies correctly Thanks, I didn't think about that Link to comment
jastey Posted April 3, 2014 Share Posted April 3, 2014 Then I have to ask: Is this the dialogue state header for a triggered talk? Because then I would give you the advice to move all triggers except the trigger variable into the script block, or you might encounter stutter bugs. Meaning: remove these from the dialogue state trigger: ~InParty("!sartob") InParty("Edwin") !ActuallyInCombat() IsValidForPartyDialog("Edwin") IsValidForPartyDialog("!sartob") RealGlobalTimerExpired("nameoftimer","GLOBAL")~ All these should only be in the script to activate the dialogue. Just leave only this in the dialogue state trigger: CHAIN IF ~Global("nameofglobal","GLOBAL",6)~ THEN Sarad25J NameOfChain ~BlaBlaBla~ DO ~SetGlobal("nameofglobal","GLOBAL",7)~ Link to comment
Saradas Posted April 3, 2014 Author Share Posted April 3, 2014 No the trigger for the dialog is inside my npc script file. I will take your advice and reduce the conditions in the dialog to only one variable Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.