[RM2K3] [RM2K] WHEN DOES THE TEXT BOX PORTRAIT GET CLEARED?

Posts

Pages: 1
If you use the event command to set a portrait for the text box, you might intuitively expect it to stick around forever, or at least until you change it. But it doesn't; at some point it gets cleared automatically.

This seems to happen either at the start of an event script or at the end of an event script, and I've been running tests trying to figure out what the rule is, but I can't come up with any consistent rule, especially when I start doing things like running two scripts that show text boxes in two parallel process scripts at once, or running a parallel process script that doesn't show any text at all, and doesn't end up resetting the portrait either when it starts or when it ends.

Does anyone know what the rule is for this?
Give the demo so others can try (and perhaps help)
This is all quite chaotic, don't guarantee that my summary is complete.

The face gets reset in the following cases:

For events that run on the main interpreter (Autostart, Touch, Action... everything not Parallel):
  • On Start, only when the event is not a child (Invoked by "Call (Common)Event")
  • On End, only when the event is not a child (Invoked by "Call (Common)Event")

This means Parallel Processes (PP) never clear the face on their own.

Another shared case where the face is cleared is: The message box closes. A message box closes when no text is pending (added through ShowMessage, ShowInput & co.) to be rendered anymore and you press ENTER when the v-arrow appears.

More detailed explanation of the timing:

Terminology for the remaining part: I differ between "No text pending" as in "The last text was rendered and you press ENTER when the v-arrow appears" and "Message box is closed" as in "You don't see the box anymore"

Main events block the execution of the next event line when any text is pending.

Parallel events block the execution when that one specific PP used ShowMessage & co. OR when a message is already visible and they want to call ShowMessage & co. This is a important difference: Normal events continue when all text is rendered (and you pressed ENTER when the v-arrow appears), PPs wait until the window is closed!

ChangeFaceGraphic blocks when the owner (the event that opened the messagebox) is different to the caller of the face graphic change.

You see the difference between "pending" and "visible" when you have 2 Parallel events the message box will close between the two messages. For Autorun events that won't happen, the message stays open.
Pages: 1