[Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.261,1.262 saveload.cpp,1.163,1.164 script_v2.cpp,2.247,2.248 scumm.cpp,1.107,1.108 scumm.h,1.431,1.432
Travis Howell
kirben at users.sourceforge.net
Mon Jul 26 08:22:26 CEST 2004
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25231/scumm
Modified Files:
actor.cpp saveload.cpp script_v2.cpp scumm.cpp scumm.h
Log Message:
Keep compatbility with older saved games.
Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.cpp,v
retrieving revision 1.261
retrieving revision 1.262
diff -u -d -r1.261 -r1.262
--- actor.cpp 26 Jul 2004 13:53:24 -0000 1.261
+++ actor.cpp 26 Jul 2004 15:14:10 -0000 1.262
@@ -811,6 +811,17 @@
}
}
+static const int v1MMActorTalkColor[25] = {
+ 1, 7, 2, 14, 8, 1, 3, 7, 7, 12, 1, 13, 1, 4, 5, 5, 4, 3, 1, 5, 1, 1, 1, 7, 7
+};
+
+void ScummEngine::setupV1ActorTalkColor() {
+ int i;
+
+ for (i = 1; i < _numActors; i++)
+ _actors[i].talkColor = v1MMActorTalkColor[i];
+}
+
void ScummEngine::showActors() {
int i;
Index: saveload.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/saveload.cpp,v
retrieving revision 1.163
retrieving revision 1.164
diff -u -d -r1.163 -r1.164
--- saveload.cpp 26 Jul 2004 04:03:11 -0000 1.163
+++ saveload.cpp 26 Jul 2004 15:14:10 -0000 1.164
@@ -256,6 +256,9 @@
setDirtyColors(0, 255);
+ if (_gameId == GID_MANIAC && _version == 1)
+ setupV1ActorTalkColor();
+
// Regenerate strip table (for V1/V2 games)
if (_version == 1) {
roomptr = getResourceAddress(rtRoom, _roomResource);
Index: scumm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.cpp,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -d -r1.107 -r1.108
--- scumm.cpp 26 Jul 2004 13:53:24 -0000 1.107
+++ scumm.cpp 26 Jul 2004 15:14:10 -0000 1.108
@@ -1101,8 +1101,6 @@
}
}
-int v1MMActorTalkColor[] = {1, 7, 2, 14, 8, 1, 3, 7, 7, 12, 1, 13, 1, 4, 5, 5, 4, 3, 1, 5, 1, 1, 1, 7, 7, 0};
-
void ScummEngine::scummInit() {
int i;
@@ -1166,13 +1164,14 @@
// this is from IDB
if ((_version == 1) || (_gameId == GID_MANIAC && _demoMode)) {
_actors[i].setActorCostume(i);
- _actors[i].talkColor = v1MMActorTalkColor[i];
}
}
- // HACK Some palette changes needed for demo script
- // in Maniac Mansion (Enchanced)
- if (_gameId == GID_MANIAC && _version == 2 && _demoMode) {
+ if (_gameId == GID_MANIAC && _version == 1) {
+ setupV1ActorTalkColor();
+ } else if (_gameId == GID_MANIAC && _version == 2 && _demoMode) {
+ // HACK Some palette changes needed for demo script
+ // in Maniac Mansion (Enchanced)
_actors[3].setPalette(3, 1);
_actors[9].talkColor = 15;
_actors[10].talkColor = 7;
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.431
retrieving revision 1.432
diff -u -d -r1.431 -r1.432
--- scumm.h 25 Jul 2004 11:29:38 -0000 1.431
+++ scumm.h 26 Jul 2004 15:14:10 -0000 1.432
@@ -798,6 +798,7 @@
void setActorRedrawFlags();
void putActors();
void showActors();
+ void setupV1ActorTalkColor();
void resetActorBgs();
void processActors();
void processUpperActors();
More information about the Scummvm-git-logs
mailing list