aboutsummaryrefslogtreecommitdiff
path: root/engines/mutationofjb/gamedata.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mutationofjb/gamedata.h')
-rw-r--r--engines/mutationofjb/gamedata.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/engines/mutationofjb/gamedata.h b/engines/mutationofjb/gamedata.h
index 8a67db61e7..5d7dea1b05 100644
--- a/engines/mutationofjb/gamedata.h
+++ b/engines/mutationofjb/gamedata.h
@@ -83,6 +83,12 @@ struct Door {
/* Unknown for now - likely not even used. */
uint8 _SP;
+ /**
+ * Check if this door can be interacted with.
+ * @return True if this door can be interacted with, false otherwise.
+ */
+ bool isActive();
+
bool loadFromStream(Common::ReadStream &stream);
};
@@ -259,7 +265,16 @@ struct Scene {
uint8 getNoObjects(bool ignoreNo = false) const;
uint8 getNoStatics(bool ignoreNo = false) const;
- Door *findDoor(int16 x, int16 y, int *index = nullptr);
+ /**
+ * Finds the door at the given position. By default, only active doors are considered.
+ *
+ * @param x X coordinate.
+ * @param y Y coordinate.
+ * @param activeOnly If true, consider only active doors; otherwise consider any.
+ * @param index Output parameter for the found door's ID.
+ * @return A door if found, nullptr otherwise.
+ */
+ Door *findDoor(int16 x, int16 y, bool activeOnly = true, int *index = nullptr);
/**
* Finds the static at the given position. By default, only active statics are considered.
*