ISDONE/ISNOTDONE mechanics not working properly
Closed this issue · 3 comments
Say we have this entry at PRO 5:
XYZZY _ MESSAGE "HEY HEY XYZZY!"
On running the game, typing "XYZZY" would output the message "HEY HEY XYZZY!" , which is OK... but it will be inmediaytely followed by a "No puedo hacer eso.", which is obvlously wrong (this very same code won't output "No puedo..." in any of the original DAAD terps).
At the very moment a condact is executed 'cause no condition has prevoiusly avoided it (in this case a MESSAGE condact) DAAD is aware that "something has been DONE" even when no DONE condact has been explicitly reached. That means the ISDONE condact at PRO 1 (right after we come back from PRO 5) equals to True, so REDO happens and the part of PRO 5 that invokes sysmess 8 ("No puedo...") is not reached.
This is not working in msax2daad, I mean, at least not the way it works in DAAD.
Seems fixed in the last commit, please check it.
If you need the compiled executable please contact me...
Not fixed yet...
ISDONE/ISNOTDONE is fixed finally.
In the next commit I will publish the bugfix.
Thanks!