[Scummvm-git-logs] scummvm master -> 49546834b90e5d4d1dfc6aa77c30275d18a5d739
sev-
noreply at scummvm.org
Sun Jun 28 21:01:07 UTC 2026
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
cc2dd2c4cc DIRECTOR: Add detection entries for Gus Goes to Cyberopolis (Win/Mac)
49546834b9 DIRECTOR: Fix text wrapping in D4 text cast memberso
Commit: cc2dd2c4ccd761bfaf9fd02d33bbc10deadc6537
https://github.com/scummvm/scummvm/commit/cc2dd2c4ccd761bfaf9fd02d33bbc10deadc6537
Author: ramyak-sharma (ramyaksharma1 at gmail.com)
Date: 2026-06-28T23:01:03+02:00
Commit Message:
DIRECTOR: Add detection entries for Gus Goes to Cyberopolis (Win/Mac)
Changed paths:
engines/director/detection_tables.h
diff --git a/engines/director/detection_tables.h b/engines/director/detection_tables.h
index e7fa1b80af5..5b67a43eee1 100644
--- a/engines/director/detection_tables.h
+++ b/engines/director/detection_tables.h
@@ -4566,7 +4566,11 @@ static const DirectorGameDescription gameDescriptions[] = {
WINGAME2_l("gusmuse", "", "MUSEUM.EXE", "t:a94c1f2c2bb45335edaed96cb99243f7", 697019,
"CONTENT/INTRO.DIR", "t:40fb23b25fd6e873338e9f52d10983f7", 217402, Common::NL_NLD, 404),
- MACDEMO1("gusolis", "Demo", "Cyberopolis DEMO", "r:77f4098988d5386794d1530065f514cd", 303961, 404),
+ MACDEMO1("gusolis", "Demo", "Cyberopolis DEMO", "r:77f4098988d5386794d1530065f514cd", 303961, 404),
+ MACGAME2("gusolis", "", "Gus Goes to Cyberopolis", "r:68ed73866232194a9a5609040dc1f242", 291988,
+ "MMVLogo.Dxr", "d:8971eb558c342d539aef41bf0b6e1268", 81586, 404),
+ WINGAME2("gusolis", "", "CYBEROP.EXE", "t:f5d3263ba73e2d069de2bc50e56f8f99", 686707,
+ "MMVLOGO.DXR", "d:8971eb558c342d539aef41bf0b6e1268", 81586, 404),
MACGAME1("guspark", "", "Gus goes to CyberStone Park", "r:ccfbfc1a0ac231db40a250babaa6ad7c", 285282, 404),
MACGAME1("guspark", "", "Gus goes to CyberStone Park", "tr:6cb8084d74e94d6f04f619ee9b423a06", 288490, 404),
Commit: 49546834b90e5d4d1dfc6aa77c30275d18a5d739
https://github.com/scummvm/scummvm/commit/49546834b90e5d4d1dfc6aa77c30275d18a5d739
Author: ramyak-sharma (ramyaksharma1 at gmail.com)
Date: 2026-06-28T23:01:03+02:00
Commit Message:
DIRECTOR: Fix text wrapping in D4 text cast memberso
MacText treats maxWidth as the outer width and subtracts border/gutter/shadow
internally. Pass _initialRect.width() + padding so the effective inner wrap
width matches the cast member's designed text area.
Also fix wordWrapTextImpl to use >= instead of > so text that exactly fills
the available width wraps correctly, matching Director's behavior.
Changed paths:
engines/director/castmember/text.cpp
graphics/font.cpp
diff --git a/engines/director/castmember/text.cpp b/engines/director/castmember/text.cpp
index 7fd5a312104..443bf1c88ca 100644
--- a/engines/director/castmember/text.cpp
+++ b/engines/director/castmember/text.cpp
@@ -299,7 +299,8 @@ bool textWindowCallback(Graphics::WindowClick click, Common::Event &event, void
Graphics::MacWidget *TextCastMember::createWindowOrWidget(Common::Rect &bbox, Common::Rect dims, Graphics::MacFont *macFont) {
Graphics::MacText *widget = nullptr;
- widget = new Graphics::MacText(g_director->getCurrentWindow()->getMacWindow(), bbox.left, bbox.top, dims.width(), dims.height(), g_director->_wm, _ftext, macFont, getForeColor(), getBackColor(), _initialRect.width(), getAlignment(), _lineSpacing, _borderSize, _gutterSize, _boxShadow, _textShadow, _textType == kTextTypeFixed || _textType == kTextTypeScrolling, _textType == kTextTypeScrolling);
+ int maxWidth = _initialRect.width() + _borderSize * 2 + _gutterSize * 2 + _boxShadow;
+ widget = new Graphics::MacText(g_director->getCurrentWindow()->getMacWindow(), bbox.left, bbox.top, dims.width(), dims.height(), g_director->_wm, _ftext, macFont, getForeColor(), getBackColor(), maxWidth, getAlignment(), _lineSpacing, _borderSize, _gutterSize, _boxShadow, _textShadow, _textType == kTextTypeFixed || _textType == kTextTypeScrolling, _textType == kTextTypeScrolling);
widget->setSelRange(g_director->getCurrentMovie()->_selStart, g_director->getCurrentMovie()->_selEnd);
widget->draw();
diff --git a/graphics/font.cpp b/graphics/font.cpp
index 3408c16824b..0c5d1a1c4b8 100644
--- a/graphics/font.cpp
+++ b/graphics/font.cpp
@@ -280,7 +280,7 @@ int wordWrapTextImpl(const Font &font, const StringType &str, int maxWidth, Comm
const int w = currentCharWidth + font.getKerningOffset(last, c);
last = c;
const bool wouldExceedWidth =
- (lineWidth + tmpWidth + w > targetMaxLineWidth) &&
+ (lineWidth + tmpWidth + w >= targetMaxLineWidth) &&
!(mode & kWordWrapAllowTrailingWhitespace && Common::isSpace(c));
// If this char is a whitespace, then it represents a potential
More information about the Scummvm-git-logs
mailing list