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

sev- noreply at scummvm.org
Sat Dec 31 00:37:24 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:
ade01150b8 DIRECTOR: add quirk for henachoco05


Commit: ade01150b871b043405438823c44da5facc1bb5f
    https://github.com/scummvm/scummvm/commit/ade01150b871b043405438823c44da5facc1bb5f
Author: Misty De Meo (mistydemeo at gmail.com)
Date: 2022-12-31T01:37:21+01:00

Commit Message:
DIRECTOR: add quirk for henachoco05

Rodem tracks mouse movement outside the game window. It's not possible to
trigger Rodem's movement to the next screen to the left or right just by
moving the mouse cursor to the edge of the screen; it has to be tracked
outside the screen altogether.

This can be fixed by enabling ScummVM's desktop emulation. I've confirmed
this makes both the Mac and Windows versions playable. Since an existing
quirk already implemented this behaviour, I've renamed the existing
function and given it a more generic name.

Changed paths:
    engines/director/game-quirks.cpp


diff --git a/engines/director/game-quirks.cpp b/engines/director/game-quirks.cpp
index 284bdd5b25e..c1146ca8aaa 100644
--- a/engines/director/game-quirks.cpp
+++ b/engines/director/game-quirks.cpp
@@ -79,14 +79,8 @@ struct CachedFile {
 };
 
 
-static void quirkKidsBox() {
-    // Kids Box opens with a 320x150 splash screen before switching to
-    // a full screen 640x480 game window. If desktop mode is off, ScummVM
-    // will pick a game window that fits the splash screen and then try
-    // to squish the full size game window into it.
+static void quirk640x480Desktop() {
     g_director->_wmMode &= ~Graphics::kWMModeNoDesktop;
-    // Game runs in 640x480; clipping it to this size ensures the main
-    // game window takes up the full screen, and only the splash is windowed.
     g_director->_wmWidth = 640;
     g_director->_wmHeight = 480;
 }
@@ -109,7 +103,18 @@ struct Quirk {
 	Common::Platform platform;
 	void (*quirk)();
 } quirks[] = {
-    { "kidsbox", Common::kPlatformMacintosh, &quirkKidsBox },
+	// Rodem expects to be able to track the mouse cursor outside the
+	// window, which is impossible in ScummVM. Giving it a virtual
+	// desktop allows it to work like it would ahve on the original OS.
+	{ "henachoco05", Common::kPlatformMacintosh, &quirk640x480Desktop },
+	{ "henachoco05", Common::kPlatformWindows, &quirk640x480Desktop },
+    // Kids Box opens with a 320x150 splash screen before switching to
+    // a full screen 640x480 game window. If desktop mode is off, ScummVM
+    // will pick a game window that fits the splash screen and then try
+    // to squish the full size game window into it.
+    // It runs in 640x480; clipping it to this size ensures the main
+    // game window takes up the full screen, and only the splash is windowed.
+    { "kidsbox", Common::kPlatformMacintosh, &quirk640x480Desktop },
 	{ "lzone", Common::kPlatformWindows, &quirkLzone },
 	{ "mcluhan", Common::kPlatformWindows, &quirkMcLuhan },
 	{ nullptr, Common::kPlatformUnknown, nullptr }




More information about the Scummvm-git-logs mailing list