24 — Zone Entry by...
Satisfied when an object of the named house reaches a cell that shares a movement zone with the cell the tag sits in.
- Numeric ID
24- Engine ID
TEVENT_ENTERS_ZONE- Editor name
- Zone Entry by...
- Need token
NEED_HOUSE- Parameters
- House
house
- House
- Attachment
- cell or map
[Events]
<TriggerID>=1,24,0,<House>How the offer is made
Section titled “How the offer is made”The event puts its tag on the map list, and that list is walked in full each time an object reaches the center of a new cell. For every tag on it that watches for zone entry, the mover compares its own cell against the tag’s, and an offer is made to each tag the comparison agrees with. A tag far away from the moving object is therefore offered the event as readily as one beside it, which is the whole point of a zone.
A movement zone is a group of cells reachable from one another without leaving the terrain a given movement class may cross. Ground separated by a cliff, by water, or by a destroyed bridge span is in different zones even where the two sides are a cell apart, and that is what the comparison tests.
The comparison is made under any of, in this order:
- the mover’s type has no movement zone at all;
- the tag’s cell lies inside the playfield but outside the playable area;
- the tag’s cell and the mover’s cell belong to the same zone of the mover’s movement class.
The first two settle the answer as yes before any zone is looked up.
Valid values
- A house the scenario declares. The test compares it against the owner of the object that moved.
- Naming a house the scenario does not contain crashes the game at the moment the event is offered. The test looks the house up among the houses in play and reads a field of the result without checking that it found one.
- The zone compared is the one the moving object's own type travels in, named by its
MovementZone. Two objects of different movement zones standing on the same cell need not agree about whether they are in the tag's zone. - A type whose
MovementZonenames something the engine does not recognize is treated as having no movement zone at all, and then satisfies the zone test wherever it moves, for every zone tag on the map. - A tag sitting in a cell that lies inside the playfield but outside the playable area satisfies the zone test for every object that moves anywhere, because the comparison is skipped for such a cell.
- The tag has to sit in a map cell. A tag type listed against several cells is a single tag whose position is the last of those cells, so only that one decides the zone, although the tag still rides on all of them.
- A fully cloaked object makes no offer at all.
- Satisfying the event switches remembering on for the rest of that offer, which reaches the events written before it on the trigger's line in the map file.