aboutsummaryrefslogtreecommitdiff
path: root/saga/actionmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'saga/actionmap.h')
-rw-r--r--saga/actionmap.h26
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);