[Scummvm-git-logs] scummvm master -> 56e782ef8c05e7e9cfac9618593eb883f107a312
mgerhardy
noreply at scummvm.org
Sun Jul 21 06:56:01 UTC 2024
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
c294d43b38 TWINE: LBA2: fixed y position of the first button in the main menu
726a1ed422 TWINE: replaced magic numbers
56e782ef8c TWINE: don't try to load inventory items for lba2 from hqr
Commit: c294d43b38802aad9d447683f649378ebd32f488
https://github.com/scummvm/scummvm/commit/c294d43b38802aad9d447683f649378ebd32f488
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2024-07-21T08:53:03+02:00
Commit Message:
TWINE: LBA2: fixed y position of the first button in the main menu
Changed paths:
engines/twine/menu/menu.cpp
diff --git a/engines/twine/menu/menu.cpp b/engines/twine/menu/menu.cpp
index 9d180129c3c..01a09d19e2c 100644
--- a/engines/twine/menu/menu.cpp
+++ b/engines/twine/menu/menu.cpp
@@ -82,13 +82,14 @@ namespace _priv {
static MenuSettings createMainMenu(bool lba1) {
MenuSettings settings;
- settings.setButtonsBoxHeight(200);
if (lba1) {
+ settings.setButtonsBoxHeight(200);
settings.addButton(TextId::kNewGame);
settings.addButton(TextId::kContinueGame);
settings.addButton(TextId::kOptions);
settings.addButton(TextId::kQuit);
} else {
+ settings.setButtonsBoxHeight(335);
settings.addButton(TextId::toContinueGame);
settings.addButton(TextId::toNewGame);
settings.addButton(TextId::toLoadGame);
Commit: 726a1ed422d732cbf894adef93adfb7ac2882d6b
https://github.com/scummvm/scummvm/commit/726a1ed422d732cbf894adef93adfb7ac2882d6b
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2024-07-21T08:53:04+02:00
Commit Message:
TWINE: replaced magic numbers
Changed paths:
engines/twine/menu/menu.cpp
engines/twine/menu/menu.h
engines/twine/shared.h
diff --git a/engines/twine/menu/menu.cpp b/engines/twine/menu/menu.cpp
index 01a09d19e2c..f76e17db430 100644
--- a/engines/twine/menu/menu.cpp
+++ b/engines/twine/menu/menu.cpp
@@ -56,6 +56,9 @@ namespace TwinE {
static const uint32 kPlasmaEffectFilesize = 262176;
+#define HEIGHT_STANDARD 50
+#define MENU_SPACE 6
+
namespace MenuButtonTypes {
enum MenuButtonTypesEnum {
kMusicVolume = 1,
@@ -313,9 +316,9 @@ void Menu::drawButtonGfx(const MenuSettings *menuSettings, const Common::Rect &r
processPlasmaEffect(rect, COLOR_80);
if (!(_engine->getRandomNumber() % 5)) {
- _plasmaEffectPtr[_engine->getRandomNumber() % 140 * 10 + 1900] = 255;
+ _plasmaEffectPtr[(_engine->getRandomNumber() % PLASMA_WIDTH * 10) + 20 * PLASMA_WIDTH] = 255;
}
- _engine->_interface->drawFilledRect(Common::Rect(newWidth, rect.top, rect.right, rect.bottom), COLOR_68);
+ _engine->_interface->drawFilledRect(Common::Rect(newWidth, rect.top, rect.right, rect.bottom), COLOR_SELECT_MENU);
} else {
processPlasmaEffect(rect, COLOR_64);
if (!(_engine->getRandomNumber() % 5)) {
@@ -343,7 +346,7 @@ int16 Menu::drawButtons(MenuSettings *menuSettings, bool hover) {
if (topHeight == 0) {
topHeight = 35;
} else {
- topHeight = topHeight - (((maxButton - 1) * 6) + (maxButton * 50)) / 2;
+ topHeight = topHeight - (((maxButton - 1) * 6) + (maxButton * HEIGHT_STANDARD)) / 2;
}
if (maxButton <= 0) {
@@ -422,7 +425,7 @@ int16 Menu::drawButtons(MenuSettings *menuSettings, bool hover) {
const int32 menuItemId = menuSettings->getButtonState(i);
const char *text = menuSettings->getButtonText(_engine->_text, i);
const int32 border = 45;
- const int32 mainMenuButtonHeightHalf = 25;
+ const int32 mainMenuButtonHeightHalf = HEIGHT_STANDARD / 2;
const Common::Rect rect(border, topHeight - mainMenuButtonHeightHalf, _engine->width() - border, topHeight + mainMenuButtonHeightHalf);
if (hover) {
if (i == buttonNumber) {
@@ -439,7 +442,7 @@ int16 Menu::drawButtons(MenuSettings *menuSettings, bool hover) {
mouseActiveButton = i;
}
- topHeight += 56; // increase button top height
+ topHeight += HEIGHT_STANDARD + MENU_SPACE; // increase button top height
}
return mouseActiveButton;
}
@@ -1316,7 +1319,7 @@ void Menu::processInventoryMenu() {
_engine->_renderer->setLightVector(LBAAngles::ANGLE_315, LBAAngles::ANGLE_334, LBAAngles::ANGLE_0);
- _inventorySelectedColor = COLOR_68;
+ _inventorySelectedColor = COLOR_SELECT_MENU;
if (_engine->_gameState->_inventoryNumLeafs > 0) {
_engine->_gameState->giveItem(InventoryItems::kiCloverLeaf);
diff --git a/engines/twine/menu/menu.h b/engines/twine/menu/menu.h
index 43caae572e3..24b0e560807 100644
--- a/engines/twine/menu/menu.h
+++ b/engines/twine/menu/menu.h
@@ -43,9 +43,10 @@ private:
// is used to calc the height where the first button will appear
MenuSettings_NumberOfButtons = 1,
MenuSettings_ButtonsBoxHeight = 2,
- MenuSettings_HeaderEnd = 3, // TODO: unknown
- MenuSettings_FirstButtonState = 4,
- MenuSettings_FirstButton = 5
+ MenuSettings_TextBankId = 3,
+
+ MenuSettings_FirstButtonState,
+ MenuSettings_FirstButton
};
int16 _settings[4 + MAX_BUTTONS * 2] {0};
@@ -112,7 +113,7 @@ public:
}
void setTextBankId(TextBankId textBankIndex) {
- _settings[MenuSettings_HeaderEnd] = (int16)textBankIndex;
+ _settings[MenuSettings_TextBankId] = (int16)textBankIndex;
}
void addButton(TextId textId, int16 state = 0) {
diff --git a/engines/twine/shared.h b/engines/twine/shared.h
index fc6ab0d9c36..21ec973ff7f 100644
--- a/engines/twine/shared.h
+++ b/engines/twine/shared.h
@@ -770,7 +770,8 @@ inline constexpr T bits(T value, uint8 offset, uint8 bits) {
#define COLOR_48 48 // brown dark
#define COLOR_63 63 // brown bright
#define COLOR_64 64 // blue dark
-#define COLOR_68 68 // blue
+#define COLOR_SELECT_MENU 68 // blue
+// TODO #define COLOR_SELECT_MENU 166 // blue lba2
#define COLOR_73 73 // blue
#define COLOR_75 75
#define COLOR_79 79 // blue bright
Commit: 56e782ef8c05e7e9cfac9618593eb883f107a312
https://github.com/scummvm/scummvm/commit/56e782ef8c05e7e9cfac9618593eb883f107a312
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2024-07-21T08:53:04+02:00
Commit Message:
TWINE: don't try to load inventory items for lba2 from hqr
Changed paths:
engines/twine/resources/resources.cpp
diff --git a/engines/twine/resources/resources.cpp b/engines/twine/resources/resources.cpp
index 53d03b81c01..cd26c1b5a25 100644
--- a/engines/twine/resources/resources.cpp
+++ b/engines/twine/resources/resources.cpp
@@ -124,6 +124,10 @@ void Resources::preloadSamples() {
}
void Resources::preloadInventoryItems() {
+ if (!_engine->isLBA1()) {
+ // lba2 has this data in code
+ return;
+ }
const int32 numEntries = HQR::numEntries(Resources::HQR_INVOBJ_FILE);
if (numEntries > NUM_INVENTORY_ITEMS) {
error("Max allowed inventory items exceeded: %i/%i", numEntries, NUM_INVENTORY_ITEMS);
More information about the Scummvm-git-logs
mailing list