This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
8653f40820 PHOENIXVR: add getFont(size)
547e30b4b3 PHOENIXVR: check that .pak file actually contained .vr file
0a8d6ab09c PHOENIXVR: show intro in amerzone
5f81a05dad PHOENIXVR: disable previous warp for amerzone
Commit: 8653f40820ed4da47a97ba914f57cfea29c481ac
https://github.com/scummvm/scummvm/commit/8653f40820ed4da47a97ba914f57cfea29c481ac
Author: Vladimir Menshakov (vladimir.menshakov at gmail.com)
Date: 2026-03-14T23:05:02Z
Commit Message:
PHOENIXVR: add getFont(size)
Changed paths:
engines/phoenixvr/phoenixvr.cpp
engines/phoenixvr/phoenixvr.h
diff --git a/engines/phoenixvr/phoenixvr.cpp b/engines/phoenixvr/phoenixvr.cpp
index 7069479a306..b59b8db1285 100644
--- a/engines/phoenixvr/phoenixvr.cpp
+++ b/engines/phoenixvr/phoenixvr.cpp
@@ -761,6 +761,19 @@ void PhoenixVREngine::loadVariables() {
_variableSnapshot.clear();
}
+const Graphics::Font *PhoenixVREngine::getFont(int size) const {
+#ifdef USE_FREETYPE2
+ if (size < 14)
+ return _font12.get();
+ else if (size < 18)
+ return _font14.get();
+ else
+ return _font18.get();
+#else
+ return FontMan.getFontByUsage(Graphics::FontManager::kBigGUIFont);
+#endif
+}
+
void PhoenixVREngine::rollover(int textId, RolloverType type) {
Common::Rect dstRect;
int size = 12;
@@ -803,17 +816,7 @@ void PhoenixVREngine::rollover(int textId, RolloverType type) {
}
}
- const Graphics::Font *font = nullptr;
-#ifdef USE_FREETYPE2
- if (size < 14)
- font = _font12.get();
- else if (size < 18)
- font = _font14.get();
- else
- font = _font18.get();
-#else
- font = FontMan.getFontByUsage(Graphics::FontManager::kBigGUIFont);
-#endif
+ auto *font = getFont(size);
if (!font)
return;
diff --git a/engines/phoenixvr/phoenixvr.h b/engines/phoenixvr/phoenixvr.h
index dd64fb86030..7f6a28d44c7 100644
--- a/engines/phoenixvr/phoenixvr.h
+++ b/engines/phoenixvr/phoenixvr.h
@@ -214,6 +214,7 @@ private:
void renderTimer();
void renderFade(int color);
void resetState();
+ const Graphics::Font *getFont(int size) const;
private:
bool _hasFocus = true;
Commit: 547e30b4b33b4f4b070ff11f06987fdda93d6377
https://github.com/scummvm/scummvm/commit/547e30b4b33b4f4b070ff11f06987fdda93d6377
Author: Vladimir Menshakov (vladimir.menshakov at gmail.com)
Date: 2026-03-14T23:07:01Z
Commit Message:
PHOENIXVR: check that .pak file actually contained .vr file
Changed paths:
engines/phoenixvr/phoenixvr.cpp
diff --git a/engines/phoenixvr/phoenixvr.cpp b/engines/phoenixvr/phoenixvr.cpp
index b59b8db1285..58a561f02ed 100644
--- a/engines/phoenixvr/phoenixvr.cpp
+++ b/engines/phoenixvr/phoenixvr.cpp
@@ -901,8 +901,10 @@ void PhoenixVREngine::tick(float dt) {
_nextWarp = -1;
{
- Common::ScopedPtr<Common::SeekableReadStream> stream(open(_warp->vrFile));
- if (stream) {
+ Common::String origName;
+ Common::ScopedPtr<Common::SeekableReadStream> stream(open(_warp->vrFile, &origName));
+ bool isVr = origName.empty() || origName.hasSuffixIgnoreCase(".vr");
+ if (stream && isVr) {
_vr = VR::loadStatic(_pixelFormat, *stream);
if (_vr.isVR()) {
_mousePos = _screenCenter;
Commit: 0a8d6ab09c3ae992e2739c57ad23d66c964c3106
https://github.com/scummvm/scummvm/commit/0a8d6ab09c3ae992e2739c57ad23d66c964c3106
Author: Vladimir Menshakov (vladimir.menshakov at gmail.com)
Date: 2026-03-14T23:16:10Z
Commit Message:
PHOENIXVR: show intro in amerzone
Show intro, and then reset loaded flag after first level script.
Similar hack exists in the original engine, it sets an "intro mode" flag
Changed paths:
engines/phoenixvr/phoenixvr.cpp
diff --git a/engines/phoenixvr/phoenixvr.cpp b/engines/phoenixvr/phoenixvr.cpp
index 58a561f02ed..55f8a2eb261 100644
--- a/engines/phoenixvr/phoenixvr.cpp
+++ b/engines/phoenixvr/phoenixvr.cpp
@@ -163,6 +163,10 @@ bool PhoenixVREngine::setNextLevel() {
debug("next level is %s", level.c_str());
setNextScript(Common::String::format("%s\\%s.lst", level.c_str(), _gameDescription->gameId));
_loaded = true;
+
+ // reset flag or interface.vr will skip menu
+ if (_currentLevel == 1)
+ _loaded = false;
return true;
} else
return false;
@@ -1029,9 +1033,9 @@ Common::Error PhoenixVREngine::run() {
}
// try load level-specific script first (amerzone)
- if (setNextLevel())
- _loaded = false; // reset flag or interface.vr will skip menu
- else if (gameIdMatches("lochness"))
+ if (gameIdMatches("amerzone")) {
+ setNextScript("intro.lst");
+ } else if (gameIdMatches("lochness"))
setNextScript("first.lst");
else
setNextScript("script.lst");
Commit: 5f81a05dad61f36107cbca1f23067d3bb7aa2c5f
https://github.com/scummvm/scummvm/commit/5f81a05dad61f36107cbca1f23067d3bb7aa2c5f
Author: Vladimir Menshakov (vladimir.menshakov at gmail.com)
Date: 2026-03-14T23:27:03Z
Commit Message:
PHOENIXVR: disable previous warp for amerzone
This fixes a few issues with system menus
- F2/F3 closes UI after opening
- Escape -> New Game -> Escape -> nothing happens
Changed paths:
engines/phoenixvr/phoenixvr.cpp
diff --git a/engines/phoenixvr/phoenixvr.cpp b/engines/phoenixvr/phoenixvr.cpp
index 55f8a2eb261..2f143657b58 100644
--- a/engines/phoenixvr/phoenixvr.cpp
+++ b/engines/phoenixvr/phoenixvr.cpp
@@ -409,7 +409,7 @@ bool PhoenixVREngine::goToWarp(const Common::String &warp, bool savePrev) {
_nextWarp = _script->getWarp(warp);
_hoverIndex = -1;
- if (savePrev) {
+ if (savePrev && !gameIdMatches("amerzone")) {
assert(_warpIdx >= 0);
_prevWarp = _warpIdx;
// saving thumbnail