[Scummvm-git-logs] scummvm branch-2-6 -> 7bcff16b4f5b769ec84bd0657851ea3fdb295de4
mgerhardy
noreply at scummvm.org
Wed Jul 6 05:43:35 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
7bcff16b4f TWINE: Action selection popup menu is not shown when pressing Ctrl
Commit: 7bcff16b4f5b769ec84bd0657851ea3fdb295de4
https://github.com/scummvm/scummvm/commit/7bcff16b4f5b769ec84bd0657851ea3fdb295de4
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2022-07-06T07:42:30+02:00
Commit Message:
TWINE: Action selection popup menu is not shown when pressing Ctrl
https://bugs.scummvm.org/ticket/13612
Changed paths:
engines/twine/menu/menu.cpp
engines/twine/menu/menu.h
engines/twine/twine.cpp
diff --git a/engines/twine/menu/menu.cpp b/engines/twine/menu/menu.cpp
index 25ec638d71e..f8852c4d79e 100644
--- a/engines/twine/menu/menu.cpp
+++ b/engines/twine/menu/menu.cpp
@@ -1099,7 +1099,7 @@ void Menu::drawBehaviourMenu(int32 left, int32 top, int32 angle) {
drawInfoMenu(titleRect.left, titleRect.bottom + 10, titleRect.width());
}
-void Menu::processBehaviourMenu() {
+void Menu::processBehaviourMenu(bool behaviourMenu) {
_engine->exitSceneryView();
if (_engine->_actor->_heroBehaviour == HeroBehaviourType::kProtoPack) {
_engine->_sound->stopSamples();
@@ -1122,7 +1122,8 @@ void Menu::processBehaviourMenu() {
_engine->_text->initTextBank(TextBankId::Options_and_menus);
- if (_engine->isLba1Classic()) {
+ // quick actions to change behaviour don't show the menu in classic edition
+ if (!behaviourMenu && _engine->isLba1Classic()) {
char text[256];
_engine->_text->getMenuText(_engine->_actor->getTextIdForBehaviour(), text, sizeof(text));
_engine->_redraw->setRenderText(text);
diff --git a/engines/twine/menu/menu.h b/engines/twine/menu/menu.h
index 8e20945963d..5decc8e368f 100644
--- a/engines/twine/menu/menu.h
+++ b/engines/twine/menu/menu.h
@@ -239,7 +239,7 @@ public:
int32 optionsMenu();
/** Process hero behaviour menu */
- void processBehaviourMenu();
+ void processBehaviourMenu(bool behaviourMenu);
int32 newGameClassicMenu();
diff --git a/engines/twine/twine.cpp b/engines/twine/twine.cpp
index 3fcc5b13514..2e291925b7a 100644
--- a/engines/twine/twine.cpp
+++ b/engines/twine/twine.cpp
@@ -827,7 +827,8 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
}
// Process behaviour menu
- if ((_input->isActionActive(TwinEActionType::BehaviourMenu, false) ||
+ const bool behaviourMenu = _input->isActionActive(TwinEActionType::BehaviourMenu, false);
+ if ((behaviourMenu ||
_input->isActionActive(TwinEActionType::QuickBehaviourNormal, false) ||
_input->isActionActive(TwinEActionType::QuickBehaviourAthletic, false) ||
_input->isActionActive(TwinEActionType::QuickBehaviourAggressive, false) ||
@@ -843,7 +844,7 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
_actor->_heroBehaviour = HeroBehaviourType::kDiscrete;
}
ScopedEngineFreeze scopedFreeze(this);
- _menu->processBehaviourMenu();
+ _menu->processBehaviourMenu(behaviourMenu);
_redraw->redrawEngineActions(true);
}
More information about the Scummvm-git-logs
mailing list