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

bluegr noreply at scummvm.org
Mon Jul 27 23:00:42 UTC 2026


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

Summary:
ddd04db097 NANCY: NANCY10: Also preserve overlays across NO_ART scene changes
be5b551d24 NANCY: NANCY10: Fix star-slider CollisionPuzzle/TileMove puzzles
b57b7c9778 NANCY: NANCY10: Correct top text inset in mini mode of ScrollTextBox


Commit: ddd04db097b73409cfd3b643a9ed7dc46a1c084d
    https://github.com/scummvm/scummvm/commit/ddd04db097b73409cfd3b643a9ed7dc46a1c084d
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2026-07-28T02:00:26+03:00

Commit Message:
NANCY: NANCY10: Also preserve overlays across NO_ART scene changes

Now, scene overlays are also preserved when making phone calls.
Another fix for #17022

Changed paths:
    engines/nancy/action/overlay.h


diff --git a/engines/nancy/action/overlay.h b/engines/nancy/action/overlay.h
index 25535db74cf..626952ee1b1 100644
--- a/engines/nancy/action/overlay.h
+++ b/engines/nancy/action/overlay.h
@@ -85,6 +85,7 @@ public:
 
 	bool canHaveHotspot() const override { return true; }
 	bool isViewportRelative() const override { return true; }
+	bool survivesSceneChange(bool nextSceneIsNoArt) const override { return nextSceneIsNoArt; }
 	Common::String getRecordExtraInfo() const override { return Common::String::format("Scene %d", _sceneChange.sceneID); }
 
 protected:


Commit: be5b551d241b20e19ef6c8aa44959450dc35a513
    https://github.com/scummvm/scummvm/commit/be5b551d241b20e19ef6c8aa44959450dc35a513
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2026-07-28T02:00:28+03:00

Commit Message:
NANCY: NANCY10: Fix star-slider CollisionPuzzle/TileMove puzzles

Fixes invalid movements of the solve piece (FH tile) in such puzzles.
Fix #17023

Changed paths:
    engines/nancy/action/puzzle/collisionpuzzle.cpp


diff --git a/engines/nancy/action/puzzle/collisionpuzzle.cpp b/engines/nancy/action/puzzle/collisionpuzzle.cpp
index a030bce221a..967e5ed99dc 100644
--- a/engines/nancy/action/puzzle/collisionpuzzle.cpp
+++ b/engines/nancy/action/puzzle/collisionpuzzle.cpp
@@ -527,8 +527,10 @@ Common::Point CollisionPuzzle::movePiece(uint pieceID, WallType direction) {
 		}
 	}
 
-	// Move result outside of grid when the exit is at an edge, and the moved piece is on top of the exit
-	if (_puzzleType == kTileMove && pieceID == 0) {
+	// Move result outside of grid when the exit is at an edge, and the moved piece is on top of the exit.
+	// Stair-slider puzzles solve by uncovering the exit cell instead, so their solve piece stays in the grid.
+	const bool isStairSlider = _tileMoveExitIndex == 20 && g_nancy->getGameType() >= kGameTypeNancy10;
+	if (_puzzleType == kTileMove && pieceID == 0 && !isStairSlider) {
 		Common::Rect compareRect(newPos.x, newPos.y, newPos.x + _pieces[pieceID]._w, newPos.y + _pieces[pieceID]._h);
 		if (compareRect.contains(_tileMoveExitPos)) {
 			if (horizontal && (_tileMoveExitPos.x == 0 || _tileMoveExitPos.x == (int)_grid[0].size() - 1)) {


Commit: b57b7c9778c348f9f9d7f77b5a5d75ffffa14eda
    https://github.com/scummvm/scummvm/commit/b57b7c9778c348f9f9d7f77b5a5d75ffffa14eda
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2026-07-28T02:00:31+03:00

Commit Message:
NANCY: NANCY10: Correct top text inset in mini mode of ScrollTextBox

Fix #16890

Changed paths:
    engines/nancy/ui/scrolltextbox.cpp


diff --git a/engines/nancy/ui/scrolltextbox.cpp b/engines/nancy/ui/scrolltextbox.cpp
index 8a1749ca56a..ad2f24153f9 100644
--- a/engines/nancy/ui/scrolltextbox.cpp
+++ b/engines/nancy/ui/scrolltextbox.cpp
@@ -213,7 +213,9 @@ void ScrollTextBox::drawContent() {
 		setTransparent(true);
 		_drawSurface.clear(transColor);
 		if (haveStripRect) {
-			textTop = _stripScreenRect.top - _fullPopupRect.top;
+			// The caption rect has a small top inset (the vertical counterpart of
+			// lineStartXCursor).
+			textTop = (_stripScreenRect.top - _fullPopupRect.top) + 2;
 		} else {
 			// Nudge the first line down one pixel so its top padding matches the
 			// original's caption strip.




More information about the Scummvm-git-logs mailing list