diff options
Diffstat (limited to 'engines/cruise/mainDraw.cpp')
-rw-r--r-- | engines/cruise/mainDraw.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/engines/cruise/mainDraw.cpp b/engines/cruise/mainDraw.cpp index be128a3ffb..2932e6dc7d 100644 --- a/engines/cruise/mainDraw.cpp +++ b/engines/cruise/mainDraw.cpp @@ -25,6 +25,7 @@ #include "cruise/cruise_main.h" #include "cruise/polys.h" +#include "common/endian.h" #include "common/util.h" namespace Cruise { @@ -163,14 +164,14 @@ void flipPoly(int fileId, int16 *dataPtr, int scale, char** newFrame, int X, int dataPtr ++; - offset = *(dataPtr++); - flipShort(&offset); + offset = (int16)READ_BE_UINT16(dataPtr); + dataPtr++; - newX = *(dataPtr++); - flipShort(&newX); + newX = (int16)READ_BE_UINT16(dataPtr); + dataPtr++; - newY = *(dataPtr++); - flipShort(&newY); + newY = (int16)READ_BE_UINT16(dataPtr); + dataPtr++; offset += fileId; @@ -828,11 +829,9 @@ void buildPolyModel(int positionX, int positionY, int scale, char *pMask, char * m_color = *dataPointer; // color dataPointer += 2; - minimumScale = *(uint16 *)(dataPointer); + minimumScale = READ_BE_UINT16(dataPointer); dataPointer += 2; - flipShort(&minimumScale); - if ((minimumScale <= scale)) { if (m_flipLeftRight) { drawPolyMode1((unsigned char *)dataPointer, linesToDraw); @@ -989,11 +988,9 @@ bool findPoly(char* dataPtr, int positionX, int positionY, int scale, int mouseX m_color = *dataPointer; // color dataPointer += 2; - minimumScale = *(uint16 *)(dataPointer); + minimumScale = READ_BE_UINT16(dataPointer); dataPointer += 2; - flipShort(&minimumScale); - if ((minimumScale <= scale)) { if (m_flipLeftRight) { drawPolyMode1((unsigned char *)dataPointer, linesToDraw); |