From f5b9d417b7b6f2d1a86ba68b22fa84aa04a7992d Mon Sep 17 00:00:00 2001 From: Nipun Garg Date: Fri, 12 Jul 2019 03:35:35 +0530 Subject: HDB: Set and Draw Bonus Stars --- engines/hdb/ai-player.cpp | 20 +++++++++++++++++++- engines/hdb/ai.h | 7 +++++++ engines/hdb/hdb.cpp | 5 +++-- engines/hdb/menu.h | 7 ------- 4 files changed, 29 insertions(+), 10 deletions(-) (limited to 'engines') diff --git a/engines/hdb/ai-player.cpp b/engines/hdb/ai-player.cpp index 6f3ba615f8..56a08eddb1 100644 --- a/engines/hdb/ai-player.cpp +++ b/engines/hdb/ai-player.cpp @@ -21,6 +21,7 @@ */ #include "hdb/hdb.h" +#include "hdb/menu.h" namespace HDB { @@ -1589,7 +1590,24 @@ void aiMonkeystoneUse(AIEntity *e) { g_hdb->_window->openMessageBar(monkBuff, kMsgDelay); // have we unlocked a secret star(tm)??? - warning("STUB: Set Secret Stars"); + if (val == 7) { + g_hdb->_window->openMessageBar("Red Star is Ready!", kMsgDelay * 2); + g_hdb->setStarsMonkeystone7(STARS_MONKEYSTONE_7); + g_hdb->_menu->writeConfig(); + g_hdb->_gfx->turnOnBonusStars(0); + } + if (val == 14) { + g_hdb->_window->openMessageBar("Green Star is GO!", kMsgDelay * 2); + g_hdb->setStarsMonkeystone14(STARS_MONKEYSTONE_14); + g_hdb->_menu->writeConfig(); + g_hdb->_gfx->turnOnBonusStars(1); + } + if (val == 21) { + g_hdb->_window->openMessageBar("Blue Star is Born!", kMsgDelay * 2); + g_hdb->setStarsMonkeystone21(STARS_MONKEYSTONE_21); + g_hdb->_menu->writeConfig(); + g_hdb->_gfx->turnOnBonusStars(2); + } } void aiGemAction(AIEntity *e) { diff --git a/engines/hdb/ai.h b/engines/hdb/ai.h index 2e213ce430..4ac3eae917 100644 --- a/engines/hdb/ai.h +++ b/engines/hdb/ai.h @@ -25,6 +25,13 @@ #include "common/system.h" +#define STARS_MONKEYSTONE_7 0xfe257d // magic value in the config file for the unlocking of the Monkeystone secret #7 +#define STARS_MONKEYSTONE_7_FAKE 0x11887e // fake value that means it hasn't been unlocked +#define STARS_MONKEYSTONE_14 0x3341fe // for the Monkeystone #14 +#define STARS_MONKEYSTONE_14_FAKE 0x1cefd0 // fake value that means it hasn't been unlocked +#define STARS_MONKEYSTONE_21 0x77ace3 // for the Monkeystone #21 +#define STARS_MONKEYSTONE_21_FAKE 0x3548fe // fake value that means it hasn't been unlocked + namespace HDB { enum { diff --git a/engines/hdb/hdb.cpp b/engines/hdb/hdb.cpp index 29869e2734..72e1aa0a71 100644 --- a/engines/hdb/hdb.cpp +++ b/engines/hdb/hdb.cpp @@ -845,10 +845,11 @@ Common::Error HDBGame::run() { _window->drawInventory(); _window->drawMessageBar(); _window->drawDeliveries(); + debug(9, "STUB: Draw Try Again"); + _window->drawPanicZone(); _window->drawTextOut(); _window->drawPause(); - - //_gfx->drawBonusStars(); + _gfx->drawBonusStars(); _gfx->drawSnow(); if (_changeLevel == true) { diff --git a/engines/hdb/menu.h b/engines/hdb/menu.h index 4c30aeb3c6..59650b6451 100644 --- a/engines/hdb/menu.h +++ b/engines/hdb/menu.h @@ -25,13 +25,6 @@ namespace HDB { -#define STARS_MONKEYSTONE_7 0xfe257d // magic value in the config file for the unlocking of the Monkeystone secret #7 -#define STARS_MONKEYSTONE_7_FAKE 0x11887e // fake value that means it hasn't been unlocked -#define STARS_MONKEYSTONE_14 0x3341fe // for the Monkeystone #14 -#define STARS_MONKEYSTONE_14_FAKE 0x1cefd0 // fake value that means it hasn't been unlocked -#define STARS_MONKEYSTONE_21 0x77ace3 // for the Monkeystone #21 -#define STARS_MONKEYSTONE_21_FAKE 0x3548fe // fake value that means it hasn't been unlocked - #define CONFIG_MUSICVOL "music_volume" #define CONFIG_SOUNDVOL "sound_volume" #define CONFIG_MSTONE7 "hdb_memory_heap" -- cgit v1.2.3