[Scummvm-cvs-logs] CVS: scummvm/scumm script_v5.cpp,1.152,1.153 scummvm.cpp,2.343,2.344
Jamieson Christian
jamieson630 at users.sourceforge.net
Sat Aug 16 14:46:01 CEST 2003
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv1213/scummvm/scumm
Modified Files:
script_v5.cpp scummvm.cpp
Log Message:
Changed fix for hanging MI1 EGA Demo after
finding GFX regressions in Indy3. New fix
runs exit script immediately when nuking
the resource for the current room, and
resets the current room to 0 (nothing).
Again, a warning is output in case other
cases of nuking the current room are found
and have undesirable behavior as a result
of this change.
Index: script_v5.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v5.cpp,v
retrieving revision 1.152
retrieving revision 1.153
diff -u -d -r1.152 -r1.153
--- script_v5.cpp 16 Aug 2003 15:13:15 -0000 1.152
+++ script_v5.cpp 16 Aug 2003 21:45:00 -0000 1.153
@@ -1461,12 +1461,7 @@
int room = getVarOrDirectByte(0x40);
a = derefActor(act, "o5_putActorInRoom");
-
- 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();
}
@@ -1529,10 +1524,16 @@
ensureResourceLoaded(rtRoom, resid);
break;
+ case 8: // nuke room
+ if (resid == _currentRoom) {
+ warning ("Nuking current room %d - exit script called early", resid);
+ runExitScript();
+ _currentRoom = 0;
+ }
+ // Fall through
case 5: // nuke script
case 6: // nuke sound
case 7: // nuke costume
- case 8: // nuke room
if (_gameId == GID_ZAK256)
warning("o5_resourceRoutines %d should not occur in Zak256", op);
else
Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.343
retrieving revision 2.344
diff -u -d -r2.343 -r2.344
--- scummvm.cpp 16 Aug 2003 17:08:22 -0000 2.343
+++ scummvm.cpp 16 Aug 2003 21:45:00 -0000 2.344
@@ -1761,7 +1761,8 @@
if (!(_features & GF_SMALL_HEADER) && VAR_NEW_ROOM != 0xFF) // Disable for SH games. Overwrites
VAR(VAR_NEW_ROOM) = room; // gamevars, eg Zak cashcards
- runExitScript();
+ if (_currentRoom)
+ runExitScript();
killScriptsAndResources();
clearEnqueue();
stopCycle(0);
More information about the Scummvm-git-logs
mailing list