diff options
author | Strangerke | 2014-06-03 07:28:33 +0200 |
---|---|---|
committer | Strangerke | 2014-06-03 07:28:33 +0200 |
commit | 41f9195f5608df90ab08f397678f064d4e785b5b (patch) | |
tree | 40fe45c87442f9e4e5807adcd9e6e4be0656b665 | |
parent | 5d9e31c708849ef495e07da9271e1039d177a0d4 (diff) | |
download | scummvm-rg350-41f9195f5608df90ab08f397678f064d4e785b5b.tar.gz scummvm-rg350-41f9195f5608df90ab08f397678f064d4e785b5b.tar.bz2 scummvm-rg350-41f9195f5608df90ab08f397678f064d4e785b5b.zip |
CGE2: Fix flags synchronization
-rw-r--r-- | engines/cge2/vga13h.cpp | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/engines/cge2/vga13h.cpp b/engines/cge2/vga13h.cpp index fb219998de..ff58ccd25d 100644 --- a/engines/cge2/vga13h.cpp +++ b/engines/cge2/vga13h.cpp @@ -616,43 +616,41 @@ void Sprite::sync(Common::Serializer &s) { if (s.isLoading()) { s.syncAsUint16LE(flags); _flags._hide = flags & 0x0001 ? true : false; - _flags._near = flags & 0x0002 ? true : false; - _flags._drag = flags & 0x0004 ? true : false; - _flags._hold = flags & 0x0008 ? true : false; - //_flags._dummy = flags & 0x0010 ? true : false; - _flags._slav = flags & 0x0020 ? true : false; - //_flags._syst = flags & 0x0040 ? true : false; - _flags._kill = flags & 0x0080 ? true : false; - _flags._xlat = flags & 0x0100 ? true : false; - _flags._port = flags & 0x0200 ? true : false; - _flags._kept = flags & 0x0400 ? true : false; - _flags._east = flags & 0x0800 ? true : false; + _flags._drag = flags & 0x0002 ? true : false; + _flags._hold = flags & 0x0004 ? true : false; + _flags._trim = flags & 0x0008 ? true : false; + _flags._slav = flags & 0x0010 ? true : false; + _flags._kill = flags & 0x0020 ? true : false; + _flags._xlat = flags & 0x0040 ? true : false; + _flags._port = flags & 0x0080 ? true : false; + _flags._kept = flags & 0x0100 ? true : false; + _flags._frnt = flags & 0x0200 ? true : false; + _flags._east = flags & 0x0400 ? true : false; + _flags._near = flags & 0x0800 ? true : false; _flags._shad = flags & 0x1000 ? true : false; _flags._back = flags & 0x2000 ? true : false; - //_flags._bDel = flags & 0x4000 ? true : false; + _flags._zmov = flags & 0x4000 ? true : false; _flags._tran = flags & 0x8000 ? true : false; } else { flags = (flags << 1) | _flags._tran; - //flags = (flags << 1) | _flags._bDel; + flags = (flags << 1) | _flags._zmov; flags = (flags << 1) | _flags._back; flags = (flags << 1) | _flags._shad; + flags = (flags << 1) | _flags._near; flags = (flags << 1) | _flags._east; + flags = (flags << 1) | _flags._frnt; flags = (flags << 1) | _flags._kept; flags = (flags << 1) | _flags._port; flags = (flags << 1) | _flags._xlat; flags = (flags << 1) | _flags._kill; - //flags = (flags << 1) | _flags._syst; flags = (flags << 1) | _flags._slav; - //flags = (flags << 1) | _flags._dummy; + flags = (flags << 1) | _flags._trim; flags = (flags << 1) | _flags._hold; flags = (flags << 1) | _flags._drag; - flags = (flags << 1) | _flags._near; flags = (flags << 1) | _flags._hide; s.syncAsUint16LE(flags); } - warning("STUB: Sprite::sync() - Flags changed compared to CGE1's Sprite type."); - s.syncAsUint16LE(_pos3D._x); s.syncAsUint16LE(_pos3D._y); s.syncAsByte(_pos3D._z); |