Are you saying that you want the game to remember a flag being set in a previous dialog? So, the character talks to someone which sets a flag "help", then the dialog ends (but the flag is now 'activated'), the character has a wacky adventure or maybe just some lunch, then later on opens a room and has a specific dialog with the occupant only because of the previous flag earlier in the day?

Sorry if that's not what you want!

If it is, try the following. We're going to make an entry in INIT, effectively stating that the prisoner is not yet met. When we hit the flag in the first dialog, we're going to remove that entry. In the second dialog, the specific dialog will only show if the entry in INIT is removed.

Try this, noting that we're putting a line in INIT and the rest going in KB.

Code
INIT

DB_PrisonerUnmet(1);



KB

IF
GlobalEventSet("help")
THEN
NOT DB_PrisonerUnmet(1);

IF
DialogStartRequested(CHARACTER_prisoner1,CHARACTER_Main_Char)
AND
NOT DB_PrisonerUnmet(1)
THEN
DialogStartTwoSpeakerDialog("prisoner1_dialogue_helped",CHARACTER_prisoner1,CHARACTER_Main_Char);


I've removed the stuff with the 'AND ItemGetVarInteger()' only because I haven't used that myself yet and also to keep the example as simple as I can. If this works (no promises it will!) you should be able to easily modify it to work as you like.

Last edited by Noaloha; 21/08/14 10:40 PM.

Escape From Smalcatraz: Steam/Nexus. Forum thread.