aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2005-10-23 13:34:06 +0000
committerTravis Howell2005-10-23 13:34:06 +0000
commitf874a87c903aa89a3ab445a4fe77d11972dea976 (patch)
tree06786a016c552e49908b7a8d4ebdc3ba67f35064 /scumm
parent53e08e9a703e1aa625558771c693ea0f48666865 (diff)
downloadscummvm-rg350-f874a87c903aa89a3ab445a4fe77d11972dea976.tar.gz
scummvm-rg350-f874a87c903aa89a3ab445a4fe77d11972dea976.tar.bz2
scummvm-rg350-f874a87c903aa89a3ab445a4fe77d11972dea976.zip
Add work around for bug:
1252606 - ZAK: crash when trying to fly back to SF svn-id: r19264
Diffstat (limited to 'scumm')
-rw-r--r--scumm/script_v2.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 1795fed755..d66b454fb7 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -1104,7 +1104,15 @@ void ScummEngine_v2::o2_ifClassOfIs() {
void ScummEngine_v2::o2_walkActorTo() {
int x, y;
Actor *a;
- a = derefActor(getVarOrDirectByte(PARAM_1), "o2_walkActorTo");
+
+ int act = getVarOrDirectByte(PARAM_1);
+
+ // FIXME: Work around for bug #1252606
+ if (_gameId == GID_ZAK && _version == 1 && vm.slot[_currentScript].number == 115 && act == 249) {
+ act = VAR(VAR_EGO);
+ }
+
+ a = derefActor(act, "o2_walkActorTo");
x = getVarOrDirectByte(PARAM_2) * 8;
y = getVarOrDirectByte(PARAM_3) * 2;