aboutsummaryrefslogtreecommitdiff
path: root/engines/mutationofjb/gamedata.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mutationofjb/gamedata.cpp')
-rw-r--r--engines/mutationofjb/gamedata.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/engines/mutationofjb/gamedata.cpp b/engines/mutationofjb/gamedata.cpp
index 4905bbb3e2..33f9ba2411 100644
--- a/engines/mutationofjb/gamedata.cpp
+++ b/engines/mutationofjb/gamedata.cpp
@@ -298,6 +298,15 @@ Static *Scene::getStatic(uint8 staticId, bool ignoreNo) {
return &_statics[staticId - 1];
}
+Bitmap *Scene::getBitmap(uint8 bitmapId) {
+ if (bitmapId == 0 || bitmapId > ARRAYSIZE(_bitmaps)) {
+ warning("Bitmap %d does not exist", bitmapId);
+ return nullptr;
+ }
+
+ return &_bitmaps[bitmapId - 1];
+}
+
uint8 Scene::getNoDoors(bool ignoreNo) const {
return (!ignoreNo ? MIN(_noDoors, static_cast<uint8>(ARRAYSIZE(_doors))) : ARRAYSIZE(_doors));
}
@@ -310,6 +319,10 @@ uint8 Scene::getNoStatics(bool ignoreNo) const {
return (!ignoreNo ? MIN(_noStatics, static_cast<uint8>(ARRAYSIZE(_statics))) : ARRAYSIZE(_statics));
}
+uint8 Scene::getNoBitmaps() const {
+ return ARRAYSIZE(_bitmaps);
+}
+
Door *Scene::findDoor(int16 x, int16 y, bool activeOnly, int *index) {
for (int i = 0; i < getNoDoors(); ++i) {
Door &door = _doors[i];