aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2003-05-31 12:16:49 +0000
committerMax Horn2003-05-31 12:16:49 +0000
commit320c34f01776f86cd88328e9ac46d0ce041c4f7c (patch)
tree44425a801cc75248774b365f613a0f2dd99d7a7b
parentd5d0440e8ceb295dfd67c4993c205e268b3ba6d7 (diff)
downloadscummvm-rg350-320c34f01776f86cd88328e9ac46d0ce041c4f7c.tar.gz
scummvm-rg350-320c34f01776f86cd88328e9ac46d0ce041c4f7c.tar.bz2
scummvm-rg350-320c34f01776f86cd88328e9ac46d0ce041c4f7c.zip
FIXME comment added
svn-id: r8170
-rw-r--r--scumm/saveload.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp
index 075103c7cb..791c161411 100644
--- a/scumm/saveload.cpp
+++ b/scumm/saveload.cpp
@@ -566,13 +566,17 @@ void Scumm::saveOrLoad(Serializer *s, uint32 savegameVersion) {
s->saveLoadArrayOf(_verbs, _numVerbs, sizeof(_verbs[0]), verbEntries);
s->saveLoadArrayOf(vm.nest, 16, sizeof(vm.nest[0]), nestedScriptEntries);
s->saveLoadArrayOf(_sentence, 6, sizeof(_sentence[0]), sentenceTabEntries);
- /* XXX: next time save game format changes, Fingolfin wants to revise StringTab - contact him */
s->saveLoadArrayOf(_string, 6, sizeof(_string[0]), stringTabEntries);
s->saveLoadArrayOf(_colorCycle, 16, sizeof(_colorCycle[0]), colorCycleEntries);
if (savegameVersion >= VER_V13)
s->saveLoadArrayOf(_scaleSlots, 20, sizeof(_scaleSlots[0]), scaleSlotsEntries);
+ // Save all resource. Fingolfin doesn't like this part of the save/load code a bit.
+ // It is very fragile: e.g. if we change the num limit for one resource type, this
+ // code will break down. Worse, there is no way such a problem could easily be detected.
+ // We should at least store for each save resource it's type and ID. Then at least
+ // we can perform some integrety checks when loading.
for (i = rtFirst; i <= rtLast; i++)
if (res.mode[i] == 0)
for (j = 1; j < res.num[i]; j++)