Free Hero Mesh

Turn order
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.

The phases of the turn are:

Input phase

There is a Hero Mesh keycode present; the KEY message is sent, either to the popup quiz object (if any), or to all objects with the Input flag if there is currently no popup quiz object.

If IgnoreKey is used, then the game engine checks that only unchanging operations are performed and the rest of the turn is skipped. The move is not entered into the replay list in this case.

Begin phase

The BEGIN_TURN message is sent to all objects.

In some cases, this phase may be skipped.

Trigger phase

First, any destroyed compatible objects are garbage collected.

Next, the MOVED, DEPARTED, ARRIVED, and/or LASTIMAGE messages may be sent to objects as applicable; the Image variable may also be changed. LASTIMAGE is sent during the trigger phase only for busy objects.

The trigger phase is then repeated if there are any more triggers to perform.

End phase

The END_TURN message is sent.

The trigger phase is then repeated if there are any more triggers to perform.

Animation phase

The LASTIMAGE message is sent to non-busy objects if applicable.

This phase may occur multiple times depending on how the animations are set, although there is a limit.

Cleanup phase

First, the CLEANUP message is sent to all objects; there are restrictions on the possible actions to be performed at this time.

Next, all destroyed objects are garbage collected (only incompatible ones will still be waiting to be garbage collected, though).

Next, any remaining objects have their Distance variable set to zero and their Done and KeyCleared flags cleared.