diff options
| author | Paul Gilbert | 2016-11-06 14:26:44 -0500 | 
|---|---|---|
| committer | Paul Gilbert | 2016-11-06 14:26:44 -0500 | 
| commit | 927adb7f05e06ecc3a6303dbc2437e8b8f45dd70 (patch) | |
| tree | ca341a91ab28311097b1fcdd9cb70fe10d88a6a7 | |
| parent | d349e911b8f87438ad7ba7dd270102df60aa061f (diff) | |
| download | scummvm-rg350-927adb7f05e06ecc3a6303dbc2437e8b8f45dd70.tar.gz scummvm-rg350-927adb7f05e06ecc3a6303dbc2437e8b8f45dd70.tar.bz2 scummvm-rg350-927adb7f05e06ecc3a6303dbc2437e8b8f45dd70.zip  | |
TITANIC: Fix word wrapping in the conversation log
| -rw-r--r-- | engines/titanic/pet_control/pet_text.cpp | 2 | ||||
| -rw-r--r-- | engines/titanic/support/font.cpp | 6 | 
2 files changed, 4 insertions, 4 deletions
diff --git a/engines/titanic/pet_control/pet_text.cpp b/engines/titanic/pet_control/pet_text.cpp index 3ad14d0d5e..c7c6f490db 100644 --- a/engines/titanic/pet_control/pet_text.cpp +++ b/engines/titanic/pet_control/pet_text.cpp @@ -296,7 +296,7 @@ int CPetText::getTextWidth(CScreenManager *screenManager) {  int CPetText::getTextHeight(CScreenManager *screenManager) {  	mergeStrings();  	int oldFontNumber = screenManager->setFontNumber(_fontNumber); -	int textHeight = screenManager->getTextBounds(_lines, _bounds.width()); +	int textHeight = screenManager->getTextBounds(_lines, _bounds.width() - 4);  	screenManager->setFontNumber(oldFontNumber);  	return textHeight; diff --git a/engines/titanic/support/font.cpp b/engines/titanic/support/font.cpp index 2e98639ff7..f81251b10b 100644 --- a/engines/titanic/support/font.cpp +++ b/engines/titanic/support/font.cpp @@ -315,10 +315,10 @@ void STFont::extendBounds(Point &textSize, byte c, int maxWidth) const {  void STFont::checkLineWrap(Point &textSize, int maxWidth, const char *&str) const {  	bool flag = false;  	int totalWidth = 0; -	for (const char *srcPtr = str + 1; *srcPtr && *srcPtr != ' '; ++srcPtr) { -		if (*srcPtr == ' ' && flag) -			break; +	// Loop forward getting the width of the word (including preceding space) +	// until a space is encountered following at least one character +	for (const char *srcPtr = str; *srcPtr && (*srcPtr != ' ' || !flag); ++srcPtr) {  		if (*srcPtr == TEXTCMD_NPC) {  			srcPtr += 3;  		} else if (*srcPtr == TEXTCMD_SET_COLOR) {  | 
