[Scummvm-git-logs] scummvm master -> e730410dd083319ff6438565fe4d5ac8f757b8b0

whoozle noreply at scummvm.org
Thu Oct 22 11:19:16 UTC 2026


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .

Summary:
e730410dd0 PHOENIXVR: The Mystery of Mummy - start with level1


Commit: e730410dd083319ff6438565fe4d5ac8f757b8b0
    https://github.com/scummvm/scummvm/commit/e730410dd083319ff6438565fe4d5ac8f757b8b0
Author: Vladimir Menshakov (vladimir.menshakov at gmail.com)
Date: 2026-10-22T12:18:35+01:00

Commit Message:
PHOENIXVR: The Mystery of Mummy - start with level1

Autodetect separators in PhoenixVREngine::open
Add SpriteV stubs

Changed paths:
    engines/phoenixvr/commands_v2.cpp
    engines/phoenixvr/phoenixvr.cpp


diff --git a/engines/phoenixvr/commands_v2.cpp b/engines/phoenixvr/commands_v2.cpp
index 5f0f1635989..91b9c4a0941 100644
--- a/engines/phoenixvr/commands_v2.cpp
+++ b/engines/phoenixvr/commands_v2.cpp
@@ -279,6 +279,21 @@ struct Cursor_Load : public Command {
 	}
 };
 
+struct Load_Cursors : public Command {
+	Load_Cursors(const Common::Array<Common::String> &args) {}
+	void exec(ExecutionContext &ctx) const override {
+		if (g_engine->gameIdMatches("mysteryofmummy")) {
+			g_engine->loadCursor(0, "Sprites/cursor_none.tga", 12, 19);
+			g_engine->loadCursor(1, "Sprites/cursor_action.tga", 4, 6);
+			g_engine->loadCursor(2, "Sprites/cursor_take.tga", 10, 16);
+			g_engine->loadCursor(3, "Sprites/cursor_look.tga", 10, 11);
+			g_engine->loadCursor(4, "Sprites/cursor_tool.tga", 1, 7);
+		} else {
+			warning("Load_Cursors is not implemented for this game");
+		}
+	}
+};
+
 struct Cursor_Set : public Command {
 	Common::String type;
 	Common::String index;
@@ -350,6 +365,9 @@ struct Sprite_Load : public Command {
 		g_engine->spriteLoad(name, path);
 	}
 };
+struct Sprite_LoadV : public Sprite_Load {
+	Sprite_LoadV(const Common::Array<Common::String> &args) : Sprite_Load(args) {}
+};
 
 struct Sprite_Screen : public Command {
 	int index;
@@ -369,6 +387,10 @@ struct Sprite_Screen : public Command {
 	}
 };
 
+struct Sprite_ScreenV : public Sprite_Screen {
+	Sprite_ScreenV(const Common::Array<Common::String> &args) : Sprite_Screen(args) {}
+};
+
 struct Set_Lens : public Command {
 	int index;
 	Common::String name;
@@ -572,7 +594,6 @@ static const char *const kUnhandledV2Commands[] = {
 	"GET_MOUSE_BUTTON",
 	"GOTO_REF",
 	"INTERPOLATE_VIEW",
-	"LOAD_CURSORS",
 	"LOAD_LETTERS",
 	"MUL",
 	"NOT",
@@ -614,6 +635,7 @@ static const char *const kUnhandledV2Commands[] = {
 	E(Leave_Save)       \
 	E(Limit_View)       \
 	E(Load_Context)     \
+	E(Load_Cursors)     \
 	E(Load_Slot)        \
 	E(Play_3DSound)     \
 	E(Play_Amb)         \
@@ -631,7 +653,9 @@ static const char *const kUnhandledV2Commands[] = {
 	E(Set_Lensflare)    \
 	E(Set_View_Angle)   \
 	E(Sprite_Load)      \
+	E(Sprite_LoadV)     \
 	E(Sprite_Screen)    \
+	E(Sprite_ScreenV)   \
 	E(Start_Light)      \
 	E(Start_Timer)      \
 	E(Stop_All_Sounds)  \
diff --git a/engines/phoenixvr/phoenixvr.cpp b/engines/phoenixvr/phoenixvr.cpp
index aeee772f2a8..8d24732a68f 100644
--- a/engines/phoenixvr/phoenixvr.cpp
+++ b/engines/phoenixvr/phoenixvr.cpp
@@ -317,7 +317,6 @@ PhoenixVREngine::PhoenixVREngine(OSystem *syst, const ADGameDescription *gameDes
 		_levels.push_back({"level3", "Level 3"});
 		_levels.push_back({"level4", "Level 4"});
 		_levels.push_back({"level5", "Level 5"});
-		setNextLevel();
 	} else if (gameIdMatches("pharaohcurse")) {
 		Common::INIFile file;
 		Common::String filename((_gameDescription->flags & ADGF_DEMO) ? "demo.wbm" : "pharaohs.wbm");
@@ -435,8 +434,9 @@ Common::SeekableReadStream *PhoenixVREngine::open(const Common::String &filename
 	debug("open %s", filename.c_str());
 	Common::SeekableReadStream *stream = nullptr;
 
+	auto sep = filename.contains('/') ? '/' : '\\';
 	if (!_currentScriptPath.empty()) {
-		stream = tryOpen(_currentScriptPath.append(filename, '\\').normalize(), origName);
+		stream = tryOpen(_currentScriptPath.append(filename, sep).normalize(), origName);
 		if (stream)
 			return stream;
 	}
@@ -451,7 +451,7 @@ Common::SeekableReadStream *PhoenixVREngine::open(const Common::String &filename
 			return stream;
 	}
 
-	stream = tryOpen(Common::Path{filename}, origName);
+	stream = tryOpen(Common::Path{filename, sep}, origName);
 	if (stream)
 		return stream;
 




More information about the Scummvm-git-logs mailing list