From 111d5ddc3836e9fb6f94a42bb76ae1db4bcfef59 Mon Sep 17 00:00:00 2001 From: Bendegúz Nagy Date: Wed, 27 Jul 2016 13:58:02 +0200 Subject: DM: Fix champion bargraphs --- engines/dm/TODOs/todo.txt | 3 ++- engines/dm/champion.cpp | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/engines/dm/TODOs/todo.txt b/engines/dm/TODOs/todo.txt index 65e7251161..1ef449d1c5 100644 --- a/engines/dm/TODOs/todo.txt +++ b/engines/dm/TODOs/todo.txt @@ -9,7 +9,8 @@ Bugs: Logic: When object are put on the right side of the current square, they disappear Object display is a bit mixed up with regards to which cell is it drawn in - + Method cthulu messes up the callstack sometimes + Possible bugs: diff --git a/engines/dm/champion.cpp b/engines/dm/champion.cpp index a7d27d1011..b600f28683 100644 --- a/engines/dm/champion.cpp +++ b/engines/dm/champion.cpp @@ -1998,13 +1998,13 @@ void ChampionMan::f287_drawChampionBarGraphs(ChampionIndex champIndex) { int16 barGraphIdx = 0; if (champ->_currHealth > 0) { int32 barGraphHeight = (((int32)champ->_currHealth << 10) * 25) / champ->_maxHealth; - barGraphHeights[barGraphIdx++] = (barGraphHeight >> 10) + (barGraphHeight & 0x000003FF) ? 1 : 0; + barGraphHeights[barGraphIdx++] = (barGraphHeight >> 10) + ((barGraphHeight & 0x000003FF) ? 1 : 0); } else barGraphHeights[barGraphIdx++] = 0; if (champ->_currStamina > 0) { int32 barGraphHeight = (((int32)champ->_currStamina << 10) * 25) / champ->_maxStamina; - barGraphHeights[barGraphIdx++] = (barGraphHeight >> 10) + (barGraphHeight & 0x000003FF) ? 1 : 0; + barGraphHeights[barGraphIdx++] = (barGraphHeight >> 10) + ((barGraphHeight & 0x000003FF) ? 1 : 0); } else barGraphHeights[barGraphIdx++] = 0; @@ -2013,7 +2013,7 @@ void ChampionMan::f287_drawChampionBarGraphs(ChampionIndex champIndex) { barGraphHeights[barGraphIdx] = 25; else { int32 barGraphHeight = (((int32)champ->_currMana << 10) * 25) / champ->_maxMana; - barGraphHeights[barGraphIdx] = (barGraphHeight >> 10) + (barGraphHeight & 0x000003FF) ? 1 : 0; + barGraphHeights[barGraphIdx] = (barGraphHeight >> 10) + ((barGraphHeight & 0x000003FF) ? 1 : 0); } } else { barGraphHeights[barGraphIdx] = 0; -- cgit v1.2.3