[SOLVED] What's wrong with this condition setup?

So, I’m trying to have this condition where

if Lyn_t and Leila have their normal talk conversation, then trigger the second talk conversation which ends the chapter. My event is this.

BramRedEnd:
IFET 0x01 0x13 //0x13 which is the normal talk
TEX1 0x8F1
REMA
MUEN 0x3
FADI 3
ASMC 0x7A8B9
LOU1 EndingUnits
FADU 3
CAM1 Lyn_t
STAL 10
MOVE Lyn_t [7,12] 2
MOVE Eliwood [5,12] 2
MOVE Heath [6,12] 2
ENUN
TEX1 0x8F2
REMA
MNCH (0x6) //Events that lead to ending the chapter
ELSE 0x02 // If they didn’t have their normal talk yet, trigger this talk.
ENIF 0x01
TEX1 0x8F8
REMA
ENIF 0x02
ENDA

My Char events are this:

Character_events:
CharacterEventBothWays(0x10, BramRedEnd, Lyn_t, Leila) //End
CharacterEventBothWays(0x13, BramRed, Lyn_t, Leila) //Normal

I also have this here in my events

BramRed:
TEX1 0x8F8
REMA
ENDA

Idk if i need that anymore lol


so what happens is that the normal talk conversation happens, then next turn, the talk option shows up again, but it triggers the normal talk conversation again.

help pls

There’s a much easier way to do this actually;
Add this

#define CharacterEventBothWays(eventID,eventPtr,char1,char2,aftereventID) "CHAR eventID eventPtr [char1,char2] 3+aftereventID*0x10000; CHAR eventID eventPtr [char1,char2] 3+aftereventID*0x10000"

this macro lets you do exactly what you’re trying to do; it won’t let this convo be active until an ID (aftereventID) has been triggered
somewhere in your definitions or to the standard library
then you can just set up your event like this:

Character_events:
CharacterEventBothWays(0x13, BramRed, Lyn_t, Leila) //Normal
CharacterEventBothWays(0x10, BramRedEnd, Lyn_t, Leila,0x13) //End
$00
...
BramRedEnd:
IFET 0x01 0x13 //0x13 which is the normal talk // <-- Remove; not necessary anymore
TEX1 0x8F1
REMA
GOTO Ending_event // Add
ENDA // Add

Ending_event:
FADI 3
ASMC 0x7A8B9
LOU1 EndingUnits
FADU 3
CAM1 Lyn_t
STAL 10
MOVE Lyn_t [7,12] 2
MOVE Eliwood [5,12] 2
MOVE Heath [6,12] 2
ENUN
TEX1 0x8F2
REMA
MNCH (0x6) //Events that lead to ending the chapter
ELSE 0x02 // If they didn't have their normal talk yet, trigger this talk. // <-- Remove; not necessary anymore
ENIF 0x01 // <-- Remove; not necessary anymore
TEX1 0x8F8 // <-- Remove; not necessary anymore
REMA // <-- Remove; not necessary anymore
ENIF 0x02 // <-- Remove; not necessary anymore
ENDA

Oh right, if you did want to do it without this macro, this is how.

Character_events:
CharacterEventBothWays(0x10, BramRedEnd, Lyn_t, Leila) //End
CharacterEventBothWays(0x13, BramRed, Lyn_t, Leila) //Normal
$00

Opening_event:
ENUT 0x10 // Makes the conversation unable to be activated
//Whatever is in the opening event
...
BramRed:
TEX1 0x8F8
REMA
ENUF 0x10 // Makes the conversation possible now
ENDA

//The rest is identical to my previous version

Side note: why are you making your life more difficult by not editing any definition files(I see people do this all the time and I never get why); you are aware you can change them right?

I have no idea what definition files are/how to use them is the answer to this question…

:smiley:

Definitions are probably one of the most basic core elements you should know…

well i spoke to my buddy, and he came up with this.

BramRed:
IFET 0x01 0x13
JUMP BramRedEnd
ENIF 0x01
TEX1 0x8f8
REMA
ENDA

so i guess it’s solved lol

okay guys i get it jeez xD

Macro and definitions guide courtesy @Arch: Eventing for Dummies

1 Like