[Scummvm-git-logs] scummvm master -> 36a5571170110e34427d6e585bb42d79ac0d11e2

athrxx noreply at scummvm.org
Sun Aug 7 16:23:20 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:
36a5571170 SCUMM: (MI1 - EGA/VGA) - fix bug no. 13762 (Inaccurate text position)


Commit: 36a5571170110e34427d6e585bb42d79ac0d11e2
    https://github.com/scummvm/scummvm/commit/36a5571170110e34427d6e585bb42d79ac0d11e2
Author: athrxx (athrxx at scummvm.org)
Date: 2022-08-07T18:22:52+02:00

Commit Message:
SCUMM: (MI1 - EGA/VGA) - fix bug no. 13762 (Inaccurate text position)

This concerns only the vertical positioning, not the wrapping. Currently, I have limited it to MI1 EGA and VGA.

Changed paths:
    engines/scumm/string.cpp


diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index ab88b34122a..c46e841b5e9 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -690,10 +690,13 @@ void ScummEngine::CHARSET_1() {
 		_string[0].ypos = a->getPos().y - a->getElevation() - _screenTop;
 
 		if (_game.version <= 5) {
-
 			if (VAR(VAR_V5_TALK_STRING_Y) < 0) {
-				s = (a->_scaley * (int)VAR(VAR_V5_TALK_STRING_Y)) / 0xFF;
-				_string[0].ypos += (int)(((VAR(VAR_V5_TALK_STRING_Y) - s) / 2) + s);
+				if (_game.id == GID_MONKEY_EGA || _game.id == GID_MONKEY_VGA) {
+					_string[0].ypos = (int)VAR(VAR_V5_TALK_STRING_Y) + a->getPos().y + a->getElevation();
+				} else {
+					s = (a->_scaley * (int)VAR(VAR_V5_TALK_STRING_Y)) / 0xFF;
+					_string[0].ypos += (int)(((VAR(VAR_V5_TALK_STRING_Y) - s) / 2) + s);
+				}
 			} else {
 				_string[0].ypos = (int)VAR(VAR_V5_TALK_STRING_Y);
 			}




More information about the Scummvm-git-logs mailing list