[Scummvm-cvs-logs] CVS: scummvm/scumm script_v5.cpp,1.153,1.154 scummvm.cpp,2.344,2.345
Travis Howell
kirben at users.sourceforge.net
Sat Aug 16 19:35:05 CEST 2003
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv6596/scumm
Modified Files:
script_v5.cpp scummvm.cpp
Log Message:
Fix regressions in MI1 Amiga
Revert last change to MI1 demo fix and make it monkeyega target only.
Index: script_v5.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v5.cpp,v
retrieving revision 1.153
retrieving revision 1.154
diff -u -d -r1.153 -r1.154
--- script_v5.cpp 16 Aug 2003 21:45:00 -0000 1.153
+++ script_v5.cpp 17 Aug 2003 02:34:34 -0000 1.154
@@ -1462,6 +1462,13 @@
a = derefActor(act, "o5_putActorInRoom");
+ if (_gameId & GID_MONKEY_EGA) {
+ 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();
}
@@ -1524,22 +1531,15 @@
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
setResourceCounter(resType[op-5], resid, 0x7F);
break;
-
case 9: // lock script
if (resid >= _numGlobalScripts)
break;
Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.344
retrieving revision 2.345
diff -u -d -r2.344 -r2.345
--- scummvm.cpp 16 Aug 2003 21:45:00 -0000 2.344
+++ scummvm.cpp 17 Aug 2003 02:34:34 -0000 2.345
@@ -624,7 +624,7 @@
_playerV2 = NULL;
if (_features & GF_DIGI_IMUSE) {
_imuseDigital = new IMuseDigital(this);
- } else if ((_features & GF_AMIGA) && (_features & GF_OLD_BUNDLE)) {
+ } else if ((_features & GF_AMIGA) && (_version < 5)) {
_playerV2 = NULL;
} else if (((_midiDriver == MD_PCJR) || (_midiDriver == MD_PCSPK)) && ((_version > 2) && (_version < 5))) {
_playerV2 = new Player_V2(this);
@@ -1057,7 +1057,7 @@
case MD_PCSPK:
case MD_PCJR: VAR(VAR_SOUNDCARD) = 1; break;
default:
- if (_features & GF_SMALL_HEADER)
+ if (_features & GF_SMALL_HEADER && !(_features & GF_AMIGA))
VAR(VAR_SOUNDCARD) = 4;
else
VAR(VAR_SOUNDCARD) = 3;
@@ -1761,8 +1761,7 @@
if (!(_features & GF_SMALL_HEADER) && VAR_NEW_ROOM != 0xFF) // Disable for SH games. Overwrites
VAR(VAR_NEW_ROOM) = room; // gamevars, eg Zak cashcards
- if (_currentRoom)
- runExitScript();
+ runExitScript();
killScriptsAndResources();
clearEnqueue();
stopCycle(0);
More information about the Scummvm-git-logs
mailing list