diff options
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/actor.cpp | 4 | ||||
-rw-r--r-- | scumm/saveload.cpp | 5 | ||||
-rw-r--r-- | scumm/saveload.h | 2 | ||||
-rw-r--r-- | scumm/script.cpp | 4 | ||||
-rw-r--r-- | scumm/script_v8.cpp | 4 |
5 files changed, 7 insertions, 12 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp index 5a5b780ded..095b8535cc 100644 --- a/scumm/actor.cpp +++ b/scumm/actor.cpp @@ -1746,6 +1746,8 @@ const SaveLoadEntry *Actor::getSaveLoadEntries() { static const SaveLoadEntry actorEntries[] = { MKLINE(Actor, _pos.x, sleInt16, VER(8)), MKLINE(Actor, _pos.y, sleInt16, VER(8)), + MKLINE(Actor, offs_x, sleInt16, VER(32)), + MKLINE(Actor, offs_y, sleInt16, VER(32)), MKLINE(Actor, top, sleInt16, VER(8)), MKLINE(Actor, bottom, sleInt16, VER(8)), MKLINE(Actor, elevation, sleInt16, VER(8)), @@ -1775,11 +1777,9 @@ const SaveLoadEntry *Actor::getSaveLoadEntries() { MKLINE(Actor, speedy, sleUint16, VER(8)), MKLINE(Actor, cost.animCounter, sleUint16, VER(8)), MKLINE(Actor, cost.soundCounter, sleByte, VER(8)), -/* MKLINE(Actor, actorDrawVirScr, sleByte, VER(32)), MKLINE(Actor, flip, sleByte, VER(32)), MKLINE(Actor, skipLimb, sleByte, VER(32)), -*/ // Actor palette grew from 64 to 256 bytes MKARRAY_OLD(Actor, palette[0], sleByte, 64, VER(8), VER(9)), diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp index aa07434dad..b2e806732b 100644 --- a/scumm/saveload.cpp +++ b/scumm/saveload.cpp @@ -183,7 +183,6 @@ bool ScummEngine::loadState(int slot, bool compat) { if (_screenTop < 0) _screenTop = 0; -/* if (hdr.ver < VER(32) && _heversion == 70) { roomptr = getResourceAddress(rtRoom, _roomResource); const byte *ptr = findResourceData(MKID('REMP'), roomptr); @@ -196,8 +195,6 @@ bool ScummEngine::loadState(int slot, bool compat) { } } -*/ - if (hdr.ver < VER(30)) { // For a long time, we used incorrect location, causing it to default to zero. if (_version == 8) @@ -737,10 +734,8 @@ void ScummEngine::saveOrLoad(Serializer *s, uint32 savegameVersion) { s->saveLoadArrayOf(_roomPalette, sizeof(_roomPalette), 1, sleByte); } -/* if (savegameVersion >= VER(32) && _heversion == 70) s->saveLoadArrayOf(_HEV7ActorPalette, sizeof(_HEV7ActorPalette), 1, sleByte); -*/ // PalManip data was not saved before V10 save games if (savegameVersion < VER(10)) diff --git a/scumm/saveload.h b/scumm/saveload.h index 4b0b6146c8..389a215a9e 100644 --- a/scumm/saveload.h +++ b/scumm/saveload.h @@ -32,7 +32,7 @@ namespace Scumm { // Can be useful for other ports too :) #define VER(x) x -#define CURRENT_VER 31 +#define CURRENT_VER 32 // To work around a warning in GCC 3.2 (and 3.1 ?) regarding non-POD types, // we use a small trick: instead of 0 we use 42. Why? Well, it seems newer GCC diff --git a/scumm/script.cpp b/scumm/script.cpp index 8d1f353c49..56ad1ae5b1 100644 --- a/scumm/script.cpp +++ b/scumm/script.cpp @@ -552,8 +552,8 @@ void ScummEngine::writeVar(uint var, int value) { // FIXME: Find some better place to put this. if (var == VAR_CHARINC && ConfMan.hasKey("talkspeed")) { - int talkspeed = ConfMan.getInt("talkspeed") / 20; - if (talkspeed >= 0 && talkspeed <= 180) + uint talkspeed = ConfMan.getInt("talkspeed"); + if (talkspeed <= 9) VAR(VAR_CHARINC) = talkspeed; } else _scummVars[var] = value; diff --git a/scumm/script_v8.cpp b/scumm/script_v8.cpp index 0d09074430..500ad1b913 100644 --- a/scumm/script_v8.cpp +++ b/scumm/script_v8.cpp @@ -426,8 +426,8 @@ void ScummEngine_v8::writeVar(uint var, int value) { if (var == VAR_CHARINC) { if (ConfMan.hasKey("talkspeed")) { - int talkspeed = ConfMan.getInt("talkspeed") / 20; - if (talkspeed >= 0 && talkspeed <= 9) + uint talkspeed = ConfMan.getInt("talkspeed"); + if (talkspeed <= 9) VAR(VAR_CHARINC) = talkspeed; } else VAR(VAR_CHARINC) = (_features & GF_DEMO) ? value : (9 - value); |