From d01ac29dd213935a54e447e9a5b189266ffab5f6 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sat, 29 Aug 2020 15:01:19 +0200 Subject: [PATCH] DM: Properly set mapX and mapY. CID #1362609 --- engines/dm/champion.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/engines/dm/champion.h b/engines/dm/champion.h index 60c45a88252..0f06e451d5c 100644 --- a/engines/dm/champion.h +++ b/engines/dm/champion.h @@ -47,9 +47,9 @@ public: uint16 getMapY() { return (_scent >> 5) & 0x1F; } uint16 getMapIndex() { return (_scent >> 10) & 0x3F; } - void setMapX(uint16 val) { _scent = (_scent & ~0x1F) & (val & 0x1F); } - void setMapY(uint16 val) { _scent = (_scent & ~(0x1F << 5)) & (val & 0x1F); } - void setMapIndex(uint16 val) { _scent = (_scent & ~(0x1F << 10)) & (val & 0x3F); } + void setMapX(uint16 val) { _scent = (_scent & ~0x1F) | (val & 0x1F); } + void setMapY(uint16 val) { _scent = (_scent & ~(0x1F << 5)) | (val & 0x1F); } + void setMapIndex(uint16 val) { _scent = (_scent & ~(0x1F << 10)) | (val & 0x3F); } void setVal(uint16 val) { _scent = val; } uint16 toUint16() { return _scent; }