diff options
Diffstat (limited to 'saga/actionmap.h')
-rw-r--r-- | saga/actionmap.h | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/saga/actionmap.h b/saga/actionmap.h index 594ce24006..f9b3e643e2 100644 --- a/saga/actionmap.h +++ b/saga/actionmap.h @@ -28,14 +28,28 @@ namespace Saga { +enum ACTION_FLAGS { + ACTION_ENABLED = (1<<0), // Zone is enabled + ACTION_EXIT = (1<<1), // Causes char to exit + + // The following flag causes the zone to act differently. + // When the actor hits the zone, it will immediately begin walking + // in the specified direction, and the actual specified effect of + // the zone will be delayed until the actor leaves the zone. + ACTION_AUTOWALK = (1<<2), + + // zone activates only when character stops walking + ACTION_TERMINUS = (1<<3) +}; + struct R_ACTIONMAP_ENTRY { - int unknown00; - int unknown02; + int flags; + int nClickareas; + int defaultVerb; int exitScene; - int unknown06; + int entranceNum; - int pt_count; - Point *pt_tbl; + R_CLICKAREA *clickareas; }; class ActionMap { @@ -44,6 +58,8 @@ class ActionMap { ActionMap(SagaEngine *vm, const byte *exmap_res, size_t exmap_res_len); ~ActionMap(void); + const int getExitScene(int exitNum); + int hitTest(Point imousePt); int draw(R_SURFACE *ds, int color); void info(void); |