@Agro hacked up some pretty fast events for an asm condition for me to test out, and I found out what I figured to be a sneaking suspicion that I had had before.
Talk_Event:
IFAT 0x30 <my asm condition>
TEX1 0x84B
REMA
ELSE 0x31
ENIF 0x30
ITGC <Character> <Cool Item>
ENIF 0x31
ENDA
Names removed to keep privacy for @Agro in case it’s need or something; idk, but they’re not relevant.
So I made this just for testing purposes to make sure my routine sucks and not the events:
.thumb
mov r0, #0x1
bx lr
For those of you who don’t even know a bit of assembly, this is the equivalent of saying “Always True”.
So I insert it into the ROM and… I get the cool item. Sweet. I mean, no, not sweet; why is it following the false condition on a true return?
My point is this, I think the IFAT and IFAF conditions are mislabeled; if IFAT triggers the if-conditioned-commands when the routine returns false. Could anyone peer-review this and make sure I’m not just going crazy? Is it supposed to work this way?