[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