aboutsummaryrefslogtreecommitdiff
path: root/saga/scene.h
diff options
context:
space:
mode:
authorAndrew Kurushin2004-12-28 21:33:46 +0000
committerAndrew Kurushin2004-12-28 21:33:46 +0000
commitcc18520fe5351e33db9e720ad6e13f1a5d876ff6 (patch)
treea6979e08f74387ac90968d986d2399ca9ae7e77f /saga/scene.h
parentd6a4ffc2b034aa4ee065451ce7d611e0501d305b (diff)
downloadscummvm-rg350-cc18520fe5351e33db9e720ad6e13f1a5d876ff6.tar.gz
scummvm-rg350-cc18520fe5351e33db9e720ad6e13f1a5d876ff6.tar.bz2
scummvm-rg350-cc18520fe5351e33db9e720ad6e13f1a5d876ff6.zip
-addition to previous
svn-id: r16364
Diffstat (limited to 'saga/scene.h')
-rw-r--r--saga/scene.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/saga/scene.h b/saga/scene.h
index b05693ca01..b82f0a41f6 100644
--- a/saga/scene.h
+++ b/saga/scene.h
@@ -31,6 +31,8 @@
namespace Saga {
+#define SCENE_DOORS_MAX 16
+
class ActionMap;
class ObjectMap;
@@ -228,8 +230,18 @@ class Scene {
int queueScene(SCENE_QUEUE *scene_queue);
int draw(SURFACE *);
int getMode();
- int getBGMaskInfo(int *w, int *h, byte **buf, size_t *buf_len);
- int isBGMaskPresent(void);
+
+ void getBGMaskInfo(int &width, int &height, byte *&buffer, size_t &bufferLength);
+ int isBGMaskPresent() {
+ return _bgMask.loaded;
+ }
+ int getBGMaskType(const Point &testPoint);
+ bool canWalk(const Point &testPoint);
+ bool offscreenPath(Point &testPoint);
+
+ void setDoorState(int doorNumber, int doorState);
+ int getDoorState(int doorNumber);
+
int getBGInfo(SCENE_BGINFO *bginfo);
int getBGPal(PALENTRY **pal);
int getInfo(SCENE_INFO *si);
@@ -276,6 +288,7 @@ class Scene {
TEXTLIST *_textList;
SCENE_IMAGE _bg;
SCENE_IMAGE _bgMask;
+ int _sceneDoors[SCENE_DOORS_MAX];
static int SC_defaultScene(int param, SCENE_INFO *scene_info, void *refCon);
int defaultScene(int param, SCENE_INFO *scene_info);