diff options
-rw-r--r-- | engines/dm/gfx.h | 3 | ||||
-rw-r--r-- | engines/dm/inventory.cpp | 9 | ||||
-rw-r--r-- | engines/dm/inventory.h | 13 |
3 files changed, 23 insertions, 2 deletions
diff --git a/engines/dm/gfx.h b/engines/dm/gfx.h index 023535f704..07dabce88a 100644 --- a/engines/dm/gfx.h +++ b/engines/dm/gfx.h @@ -32,7 +32,8 @@ enum GraphicIndice { kPanelEmptyIndice = 20, // @ C020_GRAPHIC_PANEL_EMPTY kFoodLabelIndice = 30, // @ C030_GRAPHIC_FOOD_LABEL kWaterLabelIndice = 31, // @ C031_GRAPHIC_WATER_LABEL - kPoisionedLabelIndice = 32 // @ C032_GRAPHIC_POISONED_LABEL + kPoisionedLabelIndice = 32, // @ C032_GRAPHIC_POISONED_LABEL + kPanelResurectReincaranteIndice // @ C040_GRAPHIC_PANEL_RESURRECT_REINCARNATE }; extern uint16 gPalSwoosh[16]; diff --git a/engines/dm/inventory.cpp b/engines/dm/inventory.cpp index 68ebd616ed..e4887100d4 100644 --- a/engines/dm/inventory.cpp +++ b/engines/dm/inventory.cpp @@ -14,7 +14,9 @@ Box gBoxFood = Box(112, 159, 60, 68); // @ G0035_s_Graphic562_Box_Food Box gBoxWater = Box(112, 159, 83, 91); // @ G0036_s_Graphic562_Box_Water Box gBoxPoisoned = Box(112, 207, 105, 119); // @ G0037_s_Graphic562_Box_Poisoned -InventoryMan::InventoryMan(DMEngine *vm) : _vm(vm) {} +InventoryMan::InventoryMan(DMEngine *vm) : _vm(vm) { + _panelContent = kPanelContentFoodWaterPoisoned; +} void InventoryMan::toggleInventory(ChampionIndex championIndex) { ChampionMan &cm = *_vm->_championMan; @@ -137,4 +139,9 @@ void InventoryMan::drawPanelFoodWaterPoisoned() { drawPanelFoodOrWaterBar(champ._water, 92, kColorBlue); } +void InventoryMan::drawPanelResurrectReincarnate() { + _panelContent = kPanelContentResurrectReincarnate; + _vm->_displayMan->blitToScreen(_vm->_displayMan->getBitmap(kPanelResurectReincaranteIndice), 144, 0, 0, gBoxPanel, kColorDarkGreen, gDungeonViewport); +} + } diff --git a/engines/dm/inventory.h b/engines/dm/inventory.h index 5fb3f7560f..b6b23c4109 100644 --- a/engines/dm/inventory.h +++ b/engines/dm/inventory.h @@ -8,16 +8,29 @@ namespace DM { #define kChampionStatusBoxSpacing 69 // @ C69_CHAMPION_STATUS_BOX_SPACING + +enum PanelContent { + kPanelContentFoodWaterPoisoned = 0, // @ C00_PANEL_FOOD_WATER_POISONED + kPanelContentScroll = 2, // @ C02_PANEL_SCROLL + kPanelContentChest = 4, // @ C04_PANEL_CHEST + kPanelContentResurrectReincarnate = 5 // @ C05_PANEL_RESURRECT_REINCARNATE +}; + + + class InventoryMan { DMEngine *_vm; public: int16 _inventoryChampionOrdinal; // @ G0423_i_InventoryChampionOrdinal + PanelContent _panelContent; // @ G0424_i_PanelContent InventoryMan(DMEngine *vm); void toggleInventory(ChampionIndex championIndex); // @ F0355_INVENTORY_Toggle_CPSE void drawStatusBoxPortrait(ChampionIndex championIndex); // @ F0354_INVENTORY_DrawStatusBoxPortrait void drawPanelHorizontalBar(int16 x, int16 y, int16 pixelWidth, Color color); // @ F0343_INVENTORY_DrawPanel_HorizontalBar void drawPanelFoodOrWaterBar(int16 amount, int16 y, Color color); // @ F0344_INVENTORY_DrawPanel_FoodOrWaterBar void drawPanelFoodWaterPoisoned(); // @ F0345_INVENTORY_DrawPanel_FoodWaterPoisoned + void drawPanelResurrectReincarnate(); // @ F0346_INVENTORY_DrawPanel_ResurrectReincarnate + }; }
\ No newline at end of file |