aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics/celobj32.cpp
diff options
context:
space:
mode:
authorColin Snover2016-11-27 10:53:06 -0600
committerColin Snover2016-12-19 14:46:59 -0600
commit4cff1e400f7e1e885b12990a5a34772d05eb2285 (patch)
treea9e85d62fa6fd48bd2cc19d0d6a55d855fc5a6f4 /engines/sci/graphics/celobj32.cpp
parent5220ce1e4f9090d0e6272d680dbfa3813233399b (diff)
downloadscummvm-rg350-4cff1e400f7e1e885b12990a5a34772d05eb2285.tar.gz
scummvm-rg350-4cff1e400f7e1e885b12990a5a34772d05eb2285.tar.bz2
scummvm-rg350-4cff1e400f7e1e885b12990a5a34772d05eb2285.zip
SCI32: Add support for alternate graphics selectors
Used by at least Phantasmagoria 2.
Diffstat (limited to 'engines/sci/graphics/celobj32.cpp')
-rw-r--r--engines/sci/graphics/celobj32.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/engines/sci/graphics/celobj32.cpp b/engines/sci/graphics/celobj32.cpp
index 09ea05bd59..fe0fbf7cc4 100644
--- a/engines/sci/graphics/celobj32.cpp
+++ b/engines/sci/graphics/celobj32.cpp
@@ -21,6 +21,7 @@
*/
#include "sci/resource.h"
+#include "sci/engine/features.h"
#include "sci/engine/seg_manager.h"
#include "sci/engine/state.h"
#include "sci/graphics/celobj32.h"
@@ -949,6 +950,9 @@ CelObjView::CelObjView(const GuiResourceId viewId, const int16 loopNo, const int
_width = READ_SCI11ENDIAN_UINT16(celHeader);
_height = READ_SCI11ENDIAN_UINT16(celHeader + 2);
_origin.x = _width / 2 - (int16)READ_SCI11ENDIAN_UINT16(celHeader + 4);
+ if (g_sci->_features->usesAlternateSelectors() && _mirrorX) {
+ _origin.x = _width - _origin.x - 1;
+ }
_origin.y = _height - (int16)READ_SCI11ENDIAN_UINT16(celHeader + 6) - 1;
_skipColor = celHeader[8];
_compressionType = (CelCompressionType)celHeader[9];