[Scummvm-git-logs] scummvm master -> 0d1c9acd4f9df14b738867455a87c42c926177a5
mgerhardy
noreply at scummvm.org
Fri Jun 3 19:05:26 UTC 2022
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
99584cc060 TWINE: added new steam classic release to detection entries
0d1c9acd4f TWINE: fixed classic version quick behaviour handling
Commit: 99584cc060abd67368179f74e8d5174d54947a5c
https://github.com/scummvm/scummvm/commit/99584cc060abd67368179f74e8d5174d54947a5c
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2022-06-03T21:05:17+02:00
Commit Message:
TWINE: added new steam classic release to detection entries
Changed paths:
engines/twine/detection.cpp
diff --git a/engines/twine/detection.cpp b/engines/twine/detection.cpp
index 8adc5f461d6..ee07b0e2534 100644
--- a/engines/twine/detection.cpp
+++ b/engines/twine/detection.cpp
@@ -510,6 +510,55 @@ static const ADGameDescription twineGameDescriptions[] = {
GUIO1(GUIO_NONE)
},
+ // Little Big Adventure - Steam Version
+ // TLBA1C.exe
+ // 31 May 2022 12:58
+ {
+ "lba",
+ "Classic Version (Steam)",
+ AD_ENTRY1s("TLBA1C.exe", "38b038eee2d93a5bc0e0405886161252", 4417024),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ TwinE::TF_LBA1_CLASSIC,
+ GUIO1(GUIO_NONE)
+ },
+ {
+ "lba",
+ "Classic Version (Steam)",
+ AD_ENTRY1s("TLBA1C.exe", "38b038eee2d93a5bc0e0405886161252", 4417024),
+ Common::FR_FRA,
+ Common::kPlatformWindows,
+ TwinE::TF_LBA1_CLASSIC,
+ GUIO1(GUIO_NONE)
+ },
+ {
+ "lba",
+ "Classic Version (Steam)",
+ AD_ENTRY1s("TLBA1C.exe", "38b038eee2d93a5bc0e0405886161252", 4417024),
+ Common::DE_DEU,
+ Common::kPlatformWindows,
+ TwinE::TF_LBA1_CLASSIC,
+ GUIO1(GUIO_NONE)
+ },
+ {
+ "lba",
+ "Classic Version (Steam)",
+ AD_ENTRY1s("TLBA1C.exe", "38b038eee2d93a5bc0e0405886161252", 4417024),
+ Common::IT_ITA,
+ Common::kPlatformWindows,
+ TwinE::TF_LBA1_CLASSIC,
+ GUIO1(GUIO_NONE)
+ },
+ {
+ "lba",
+ "Classic Version (Steam)",
+ AD_ENTRY1s("TLBA1C.exe", "38b038eee2d93a5bc0e0405886161252", 4417024),
+ Common::ES_ESP,
+ Common::kPlatformWindows,
+ TwinE::TF_LBA1_CLASSIC,
+ GUIO1(GUIO_NONE)
+ },
+
// Little Big Adventure - GOG Version
// TLBA1C.exe
// 1st June 2022 02:18
Commit: 0d1c9acd4f9df14b738867455a87c42c926177a5
https://github.com/scummvm/scummvm/commit/0d1c9acd4f9df14b738867455a87c42c926177a5
Author: Martin Gerhardy (martin.gerhardy at gmail.com)
Date: 2022-06-03T21:05:17+02:00
Commit Message:
TWINE: fixed classic version quick behaviour handling
Changed paths:
engines/twine/menu/menu.cpp
engines/twine/twine.cpp
diff --git a/engines/twine/menu/menu.cpp b/engines/twine/menu/menu.cpp
index 30c3e4cac8f..24515e4270e 100644
--- a/engines/twine/menu/menu.cpp
+++ b/engines/twine/menu/menu.cpp
@@ -1117,72 +1117,79 @@ void Menu::processBehaviourMenu() {
_engine->_text->initTextBank(TextBankId::Options_and_menus);
- const int32 left = _engine->width() / 2 - 220;
- const int32 top = _engine->height() / 2 - 140;
- drawBehaviourMenu(left, top, _engine->_scene->_sceneHero->_angle);
+ if (_engine->isLba1Classic()) {
+ char text[256];
+ _engine->_text->getMenuText(_engine->_actor->getTextIdForBehaviour(), text, sizeof(text));
+ _engine->_redraw->setRenderText(text);
+ _engine->_text->initSceneTextBank();
+ } else {
+ const int32 left = _engine->width() / 2 - 220;
+ const int32 top = _engine->height() / 2 - 140;
+ drawBehaviourMenu(left, top, _engine->_scene->_sceneHero->_angle);
- HeroBehaviourType tmpHeroBehaviour = _engine->_actor->_heroBehaviour;
+ HeroBehaviourType tmpHeroBehaviour = _engine->_actor->_heroBehaviour;
- const int animIdx = _engine->_actor->_heroAnimIdx[(byte)_engine->_actor->_heroBehaviour];
- _engine->_animations->setAnimAtKeyframe(_behaviourAnimState[(byte)_engine->_actor->_heroBehaviour], _engine->_resources->_animData[animIdx], *_behaviourEntity, &_behaviourAnimData[(byte)_engine->_actor->_heroBehaviour]);
+ const int animIdx = _engine->_actor->_heroAnimIdx[(byte)_engine->_actor->_heroBehaviour];
+ _engine->_animations->setAnimAtKeyframe(_behaviourAnimState[(byte)_engine->_actor->_heroBehaviour], _engine->_resources->_animData[animIdx], *_behaviourEntity, &_behaviourAnimData[(byte)_engine->_actor->_heroBehaviour]);
- int32 tmpTime = _engine->_lbaTime;
+ int32 tmpTime = _engine->_lbaTime;
#if 0
- ScopedCursor scopedCursor(_engine);
+ ScopedCursor scopedCursor(_engine);
#endif
- ScopedKeyMap scopedKeyMap(_engine, uiKeyMapId);
- while (_engine->_input->isActionActive(TwinEActionType::BehaviourMenu) || _engine->_input->isQuickBehaviourActionActive()) {
- FrameMarker frame(_engine, 50);
- _engine->readKeys();
- if (_engine->shouldQuit()) {
- break;
- }
+ ScopedKeyMap scopedKeyMap(_engine, uiKeyMapId);
+ while (_engine->_input->isActionActive(TwinEActionType::BehaviourMenu) || _engine->_input->isQuickBehaviourActionActive()) {
+ FrameMarker frame(_engine, 50);
+ _engine->readKeys();
+ if (_engine->shouldQuit()) {
+ break;
+ }
#if 0
- if (isBehaviourHovered(HeroBehaviourType::kNormal)) {
- _engine->_actor->heroBehaviour = HeroBehaviourType::kNormal;
- } else if (isBehaviourHovered(HeroBehaviourType::kAthletic)) {
- _engine->_actor->heroBehaviour = HeroBehaviourType::kAthletic;
- } else if (isBehaviourHovered(HeroBehaviourType::kAggressive)) {
- _engine->_actor->heroBehaviour = HeroBehaviourType::kAggressive;
- } else if (isBehaviourHovered(HeroBehaviourType::kDiscrete)) {
- _engine->_actor->heroBehaviour = HeroBehaviourType::kDiscrete;
- }
+ if (isBehaviourHovered(HeroBehaviourType::kNormal)) {
+ _engine->_actor->heroBehaviour = HeroBehaviourType::kNormal;
+ } else if (isBehaviourHovered(HeroBehaviourType::kAthletic)) {
+ _engine->_actor->heroBehaviour = HeroBehaviourType::kAthletic;
+ } else if (isBehaviourHovered(HeroBehaviourType::kAggressive)) {
+ _engine->_actor->heroBehaviour = HeroBehaviourType::kAggressive;
+ } else if (isBehaviourHovered(HeroBehaviourType::kDiscrete)) {
+ _engine->_actor->heroBehaviour = HeroBehaviourType::kDiscrete;
+ }
#endif
- int heroBehaviour = (int)_engine->_actor->_heroBehaviour;
- if (_engine->_input->toggleActionIfActive(TwinEActionType::UILeft)) {
- heroBehaviour--;
- } else if (_engine->_input->toggleActionIfActive(TwinEActionType::UIRight)) {
- heroBehaviour++;
- }
+ int heroBehaviour = (int)_engine->_actor->_heroBehaviour;
+ if (_engine->_input->toggleActionIfActive(TwinEActionType::UILeft)) {
+ heroBehaviour--;
+ } else if (_engine->_input->toggleActionIfActive(TwinEActionType::UIRight)) {
+ heroBehaviour++;
+ }
- if (heroBehaviour < (int)HeroBehaviourType::kNormal) {
- heroBehaviour = (int)HeroBehaviourType::kDiscrete;
- } else if (heroBehaviour >= (int)HeroBehaviourType::kProtoPack) {
- heroBehaviour = (int)HeroBehaviourType::kNormal;
- }
+ if (heroBehaviour < (int)HeroBehaviourType::kNormal) {
+ heroBehaviour = (int)HeroBehaviourType::kDiscrete;
+ } else if (heroBehaviour >= (int)HeroBehaviourType::kProtoPack) {
+ heroBehaviour = (int)HeroBehaviourType::kNormal;
+ }
- _engine->_actor->_heroBehaviour = (HeroBehaviourType)heroBehaviour;
+ _engine->_actor->_heroBehaviour = (HeroBehaviourType)heroBehaviour;
- if (tmpHeroBehaviour != _engine->_actor->_heroBehaviour) {
- drawBehaviour(left, top, tmpHeroBehaviour, _engine->_scene->_sceneHero->_angle, true);
- tmpHeroBehaviour = _engine->_actor->_heroBehaviour;
- _engine->_movements->setActorAngleSafe(_engine->_scene->_sceneHero->_angle, _engine->_scene->_sceneHero->_angle - ANGLE_90, ANGLE_17, &_moveMenu);
- const int tmpAnimIdx = _engine->_actor->_heroAnimIdx[(byte)_engine->_actor->_heroBehaviour];
- _engine->_animations->setAnimAtKeyframe(_behaviourAnimState[(byte)_engine->_actor->_heroBehaviour], _engine->_resources->_animData[tmpAnimIdx], *_behaviourEntity, &_behaviourAnimData[(byte)_engine->_actor->_heroBehaviour]);
- }
+ if (tmpHeroBehaviour != _engine->_actor->_heroBehaviour) {
+ drawBehaviour(left, top, tmpHeroBehaviour, _engine->_scene->_sceneHero->_angle, true);
+ tmpHeroBehaviour = _engine->_actor->_heroBehaviour;
+ _engine->_movements->setActorAngleSafe(_engine->_scene->_sceneHero->_angle, _engine->_scene->_sceneHero->_angle - ANGLE_90, ANGLE_17, &_moveMenu);
+ const int tmpAnimIdx = _engine->_actor->_heroAnimIdx[(byte)_engine->_actor->_heroBehaviour];
+ _engine->_animations->setAnimAtKeyframe(_behaviourAnimState[(byte)_engine->_actor->_heroBehaviour], _engine->_resources->_animData[tmpAnimIdx], *_behaviourEntity, &_behaviourAnimData[(byte)_engine->_actor->_heroBehaviour]);
+ }
- drawBehaviour(left, top, _engine->_actor->_heroBehaviour, -1, true);
+ drawBehaviour(left, top, _engine->_actor->_heroBehaviour, -1, true);
- _engine->_lbaTime++;
- }
+ _engine->_lbaTime++;
+ }
- _engine->_lbaTime = tmpTime;
+ _engine->_lbaTime = tmpTime;
+ _engine->_gameState->initEngineProjections();
+ }
_engine->_actor->setBehaviour(_engine->_actor->_heroBehaviour);
- _engine->_gameState->initEngineProjections();
_engine->_scene->_sceneTextBank = tmpTextBank;
_engine->_text->initSceneTextBank();
diff --git a/engines/twine/twine.cpp b/engines/twine/twine.cpp
index 71fcbd9e002..3fcc5b13514 100644
--- a/engines/twine/twine.cpp
+++ b/engines/twine/twine.cpp
@@ -842,17 +842,9 @@ bool TwinEEngine::runGameEngine() { // mainLoopInteration
} else if (_input->isActionActive(TwinEActionType::QuickBehaviourDiscreet, false)) {
_actor->_heroBehaviour = HeroBehaviourType::kDiscrete;
}
- if (isLba1Classic()) {
- _text->initTextBank(TextBankId::Options_and_menus);
- char text[256];
- _text->getMenuText(_actor->getTextIdForBehaviour(), text, sizeof(text));
- _redraw->setRenderText(text);
- _text->initSceneTextBank();
- } else {
- ScopedEngineFreeze scopedFreeze(this);
- _menu->processBehaviourMenu();
- _redraw->redrawEngineActions(true);
- }
+ ScopedEngineFreeze scopedFreeze(this);
+ _menu->processBehaviourMenu();
+ _redraw->redrawEngineActions(true);
}
// use Proto-Pack
More information about the Scummvm-git-logs
mailing list