aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schickel2009-08-10 18:04:53 +0000
committerJohannes Schickel2009-08-10 18:04:53 +0000
commit066dc925516a0deb8a969df863a69aa11239b6d6 (patch)
tree3fc757f4df48bf667937d5d02f256044b1e2e959
parent10b74c336b12104bac47c22eae0678123c67fab4 (diff)
downloadscummvm-rg350-066dc925516a0deb8a969df863a69aa11239b6d6.tar.gz
scummvm-rg350-066dc925516a0deb8a969df863a69aa11239b6d6.tar.bz2
scummvm-rg350-066dc925516a0deb8a969df863a69aa11239b6d6.zip
Fix GUI menu colors for Kyrandia 1 Amiga.
svn-id: r43215
-rw-r--r--engines/kyra/items_lok.cpp8
-rw-r--r--engines/kyra/staticres.cpp16
2 files changed, 20 insertions, 4 deletions
diff --git a/engines/kyra/items_lok.cpp b/engines/kyra/items_lok.cpp
index 543cdf7a57..e87a1212a3 100644
--- a/engines/kyra/items_lok.cpp
+++ b/engines/kyra/items_lok.cpp
@@ -920,19 +920,19 @@ int KyraEngine_LoK::getItemListIndex(uint16 item) {
// The first item names are mapped directly
else if (item <= 28)
return item;
- // There's only one string for all "Fireberries"
+ // There's only one string for "Fireberries"
else if (item >= 29 && item <= 33)
return 29;
// Correct offsets
else if (item >= 34 && item <= 59)
return item - 4;
- // There's only one string for all "Red Potion"
+ // There's only one string for "Red Potion"
else if (item >= 60 && item <= 61)
return 56;
- // There's only one string for all "Blue Potion"
+ // There's only one string for "Blue Potion"
else if (item >= 62 && item <= 63)
return 57;
- // There's only one string for all "Yellow Potion"
+ // There's only one string for "Yellow Potion"
else if (item >= 64 && item <= 65)
return 58;
// Correct offsets
diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp
index b36b77d7a3..2062b9e88a 100644
--- a/engines/kyra/staticres.cpp
+++ b/engines/kyra/staticres.cpp
@@ -2254,6 +2254,22 @@ void GUI_LoK::initStaticResource() {
_menu[5].item[2].callback = BUTTON_FUNCTOR(GUI_LoK, this, &GUI_LoK::controlsChangeWalk);
_menu[5].item[4].callback = BUTTON_FUNCTOR(GUI_LoK, this, &GUI_LoK::controlsChangeText);
_menu[5].item[5].callback = BUTTON_FUNCTOR(GUI_LoK, this, &GUI_LoK::controlsApply);
+
+ // The AMIGA version uses different colors, due to its 32 color nature. We did setup the 256 color version
+ // colors above, so we need to overwrite those with the correct values over here.
+ if (_vm->gameFlags().platform == Common::kPlatformAmiga) {
+ for (int i = 0; i < 6; ++i) {
+ _menu[i].bkgdColor = 17;
+ _menu[i].color1 = 31;
+ _menu[i].color2 = 18;
+
+ for (int j = 0; j < _menu[i].numberOfItems; ++j) {
+ _menu[i].item[j].bkgdColor = 17;
+ _menu[i].item[j].color1 = 31;
+ _menu[i].item[j].color2 = 18;
+ }
+ }
+ }
}
void KyraEngine_LoK::setupButtonData() {