aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/dm/TODOs/methodtree.txt2
-rw-r--r--engines/dm/gfx.h4
-rw-r--r--engines/dm/inventory.cpp9
-rw-r--r--engines/dm/inventory.h1
4 files changed, 14 insertions, 2 deletions
diff --git a/engines/dm/TODOs/methodtree.txt b/engines/dm/TODOs/methodtree.txt
index ab44a3f179..65b79bbc38 100644
--- a/engines/dm/TODOs/methodtree.txt
+++ b/engines/dm/TODOs/methodtree.txt
@@ -57,7 +57,7 @@ F0280_CHAMPION_AddCandidateChampionToParty // done, so-so
F0335_INVENTORY_DrawPanel_ObjectDescriptionString // done
G0421_i_ObjectDescriptionTextX // done
G0422_i_ObjectDescriptionTextY // done
- F0339_INVENTORY_DrawPanel_ArrowOrEye
+ F0339_INVENTORY_DrawPanel_ArrowOrEye // done
G0430_apc_DirectionNames
G0034_s_Graphic562_Box_ObjectDescriptionCircle
G0032_s_Graphic562_Box_Panel
diff --git a/engines/dm/gfx.h b/engines/dm/gfx.h
index 25ffbb220e..e4fe12ac68 100644
--- a/engines/dm/gfx.h
+++ b/engines/dm/gfx.h
@@ -76,7 +76,9 @@ enum GraphicIndice {
kMenuSpellAreLinesIndice = 11, // @ C011_GRAPHIC_MENU_SPELL_AREA_LINES
kMenuSpellAreaBackground = 9, // @ C009_GRAPHIC_MENU_SPELL_AREA_BACKGROUND
kPanelOpenScrollIndice = 23, // @ C023_GRAPHIC_PANEL_OPEN_SCROLL
- kPanelOpenChestIndice = 25 // @ C025_GRAPHIC_PANEL_OPEN_CHEST
+ kPanelOpenChestIndice = 25, // @ C025_GRAPHIC_PANEL_OPEN_CHEST
+ kEyeForObjectDescriptionIndice = 19, // @ C019_GRAPHIC_EYE_FOR_OBJECT_DESCRIPTION
+ kArrowForChestContentIndice = 18 // @ C018_GRAPHIC_ARROW_FOR_CHEST_CONTENT
};
extern uint16 gPalSwoosh[16];
diff --git a/engines/dm/inventory.cpp b/engines/dm/inventory.cpp
index fe7807de13..9724d83ab6 100644
--- a/engines/dm/inventory.cpp
+++ b/engines/dm/inventory.cpp
@@ -405,4 +405,13 @@ void InventoryMan::drawPanelObjectDescriptionString(char* descString) {
}
}
}
+
+Box gBoxArrowOrEye = Box(83, 98, 57, 65); // @ G0033_s_Graphic562_Box_ArrowOrEye
+
+void InventoryMan::drawPanelArrowOrEye(bool pressingEye) {
+ DisplayMan &dispMan = *_vm->_displayMan;
+ dispMan.blitToScreen(dispMan.getBitmap(pressingEye ? kEyeForObjectDescriptionIndice : kArrowForChestContentIndice),
+ 16, 0, 0, gBoxArrowOrEye, kColorRed, gDungeonViewport);
+}
+
}
diff --git a/engines/dm/inventory.h b/engines/dm/inventory.h
index 18fe179958..8868a53800 100644
--- a/engines/dm/inventory.h
+++ b/engines/dm/inventory.h
@@ -76,6 +76,7 @@ public:
void buildObjectAttributeString(int16 potentialAttribMask, int16 actualAttribMask, char ** attribStrings,
char *destString, char *prefixString, char *suffixString); // @ F0336_INVENTORY_DrawPanel_BuildObjectAttributesString
void drawPanelObjectDescriptionString(char *descString); // @ F0335_INVENTORY_DrawPanel_ObjectDescriptionString
+ void drawPanelArrowOrEye(bool pressingEye); // @ F0339_INVENTORY_DrawPanel_ArrowOrEye
};