aboutsummaryrefslogtreecommitdiff
path: root/scumm/boxes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scumm/boxes.cpp')
-rw-r--r--scumm/boxes.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/scumm/boxes.cpp b/scumm/boxes.cpp
index ec0d3ea3cd..ae7d0c2839 100644
--- a/scumm/boxes.cpp
+++ b/scumm/boxes.cpp
@@ -566,12 +566,22 @@ int Scumm::getPathToDestBox(byte from, byte to) {
byte *boxm;
byte i;
int dest = -1;
-
+ const int numOfBoxes = getNumBoxes();
+
if (from == to)
return to;
+ assert(from < numOfBoxes);
+ assert(to < numOfBoxes);
+
boxm = getBoxMatrixBaseAddr();
+ if (_features & GF_AFTER_V2) {
+ i = boxm[from];
+ boxm += numOfBoxes;
+ return boxm[to];
+ }
+
i = 0;
while (i != from) {
while (*boxm != 0xFF)