aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Howell2003-10-15 09:40:44 +0000
committerTravis Howell2003-10-15 09:40:44 +0000
commitf0ffea2d6417ee1aac9ad3e92ffcfd5c8c6ebbd2 (patch)
tree8cd5b6f256dd6f5ed2e5e30ba36357f282b35bb3
parent83bf2f0e1749412792fdbf53625d78670a0dd224 (diff)
downloadscummvm-rg350-f0ffea2d6417ee1aac9ad3e92ffcfd5c8c6ebbd2.tar.gz
scummvm-rg350-f0ffea2d6417ee1aac9ad3e92ffcfd5c8c6ebbd2.tar.bz2
scummvm-rg350-f0ffea2d6417ee1aac9ad3e92ffcfd5c8c6ebbd2.zip
Disable code which seems to be real cause of lock up in title screen of MI1 demos
svn-id: r10811
-rw-r--r--scumm/camera.cpp7
-rw-r--r--scumm/script_v5.cpp16
2 files changed, 6 insertions, 17 deletions
diff --git a/scumm/camera.cpp b/scumm/camera.cpp
index 872cb593ce..a59bd4ec57 100644
--- a/scumm/camera.cpp
+++ b/scumm/camera.cpp
@@ -367,13 +367,18 @@ void ScummEngine::actorFollowCamera(int act) {
if (!(_features & GF_NEW_CAMERA)) {
int old;
- /* mi1 compatibilty */
+// Exactly why is this code needed for Monkey Island 1?
+// Seems to be the real cause of lock up at title screen
+// in Amiga and PC demo versions.
+/*
+ // MI1 compatibilty
if (act == 0) {
camera._mode = CM_NORMAL;
camera._follows = 0;
camera._movingToActor = false;
return;
}
+*/
old = camera._follows;
setCameraFollows(derefActor(act, "actorFollowCamera"));
diff --git a/scumm/script_v5.cpp b/scumm/script_v5.cpp
index 3822b01d41..6271d3981c 100644
--- a/scumm/script_v5.cpp
+++ b/scumm/script_v5.cpp
@@ -1639,22 +1639,6 @@ void ScummEngine_v5::o5_putActorInRoom() {
a = derefActor(act, "o5_putActorInRoom");
- // WORKAROUND: Fix for Bug #770710
- // This fixes conflicting actor usage by two different scripts
- // in MI1 Demo (PC GID_MONKEY_EGA or Amiga GID_MONKEY_VGA). The
- // exit script for the LucasArts logo screen attempts to reset an
- // actor that has already been set up for the next scene by the
- // boot script. The fix cannot be used as a general behavior
- // because it does cause GFX glitches in other games that try to
- // do legitimate cleanup of actors that are in another room.
- // (The Indy3 "Indy at Donovan's" cutscene, for instance.)
- if (_gameId == GID_MONKEY_EGA || _gameId == GID_MONKEY_VGA) {
- if (room == 0 && a->room != _currentRoom && a->room != room && _currentRoom != room) {
- warning ("o5_putActorInRoom (%d [%d], %d) ignored", act, a->room, room);
- return;
- }
- }
-
if (a->visible && _currentRoom != room && VAR(VAR_TALK_ACTOR) == a->number) {
clearMsgQueue();
}