[Scummvm-git-logs] scummvm master -> 95c447f4e370fa921460cf55bf03e7190449bd59

dreammaster noreply at scummvm.org
Tue May 30 21:38:37 UTC 2023


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

Summary:
da63b77f19 MM: MM1: Console view command, improvements to WonGame view
5825e94288 MM: MM1: Don't assert on word wrap failure
a0a08f9d74 MM: MM1: Fix listing backpack items
95c447f4e3 MM: MM1: Implementing deleting characters in title screen


Commit: da63b77f196846807b4332226831d0a3d1e8a5ac
    https://github.com/scummvm/scummvm/commit/da63b77f196846807b4332226831d0a3d1e8a5ac
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-05-30T14:38:22-07:00

Commit Message:
MM: MM1: Console view command, improvements to WonGame view

Changed paths:
    engines/mm/mm1/console.cpp
    engines/mm/mm1/console.h
    engines/mm/mm1/views_enh/won_game.cpp
    engines/mm/mm1/views_enh/won_game.h


diff --git a/engines/mm/mm1/console.cpp b/engines/mm/mm1/console.cpp
index 5cad5e68476..f8f5139f9b0 100644
--- a/engines/mm/mm1/console.cpp
+++ b/engines/mm/mm1/console.cpp
@@ -45,6 +45,7 @@ Console::Console() : GUI::Debugger() {
 	registerCmd("encounters", WRAP_METHOD(Console, cmdEncounters));
 	registerCmd("specials", WRAP_METHOD(Console, cmdSpecials));
 	registerCmd("special", WRAP_METHOD(Console, cmdSpecial));
+	registerCmd("view", WRAP_METHOD(Console, cmdView));
 }
 
 bool Console::cmdDumpMap(int argc, const char **argv) {
@@ -471,5 +472,15 @@ bool Console::cmdSpecial(int argc, const char **argv) {
 	return false;
 }
 
+bool Console::cmdView(int argc, const char **argv) {
+	if (argc != 2) {
+		debugPrintf("view <view name>\n");
+		return true;
+	} else {
+		g_events->addView(argv[1]);
+		return false;
+	}
+}
+
 } // namespace MM1
 } // namespace MM
diff --git a/engines/mm/mm1/console.h b/engines/mm/mm1/console.h
index 74b4040d9fc..c6edff7df67 100644
--- a/engines/mm/mm1/console.h
+++ b/engines/mm/mm1/console.h
@@ -95,6 +95,11 @@ protected:
 	 */
 	bool cmdSpecial(int argc, const char **argv);
 
+	/**
+	 * Add a specific view
+	 */
+	bool cmdView(int argc, const char **argv);
+
 public:
 	Console();
 	~Console() override {}
diff --git a/engines/mm/mm1/views_enh/won_game.cpp b/engines/mm/mm1/views_enh/won_game.cpp
index acc895f6a41..d339a559375 100644
--- a/engines/mm/mm1/views_enh/won_game.cpp
+++ b/engines/mm/mm1/views_enh/won_game.cpp
@@ -34,7 +34,7 @@ WonGame::WonGame() : ScrollView("WonGame") {
 void WonGame::draw() {
 	ScrollView::draw();
 	writeLine(0, STRING["maps.map18.gates"], ALIGN_MIDDLE);
-	writeLine(1, STRING["maps.map18.congratulations"], ALIGN_MIDDLE);
+	writeLine(2, STRING["maps.map18.congratulations"], ALIGN_MIDDLE);
 	Sound::sound(SOUND_3);
 }
 
@@ -48,6 +48,11 @@ bool WonGame::msgAction(const ActionMessage &msg) {
 	return true;
 }
 
+bool WonGame::msgMouseDown(const MouseDownMessage &msg) {
+	close();
+	return true;
+}
+
 } // namespace ViewsEnh
 } // namespace MM1
 } // namespace MM
diff --git a/engines/mm/mm1/views_enh/won_game.h b/engines/mm/mm1/views_enh/won_game.h
index 19870b2f2e4..0bb0d0aae2b 100644
--- a/engines/mm/mm1/views_enh/won_game.h
+++ b/engines/mm/mm1/views_enh/won_game.h
@@ -36,6 +36,7 @@ public:
 	void draw() override;
 	bool msgKeypress(const KeypressMessage &msg) override;
 	bool msgAction(const ActionMessage &msg) override;
+	bool msgMouseDown(const MouseDownMessage &msg) override;
 };
 
 } // namespace ViewsEnh


Commit: 5825e942880bf505a997887c666eaa58d5ea96a9
    https://github.com/scummvm/scummvm/commit/5825e942880bf505a997887c666eaa58d5ea96a9
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-05-30T14:38:22-07:00

Commit Message:
MM: MM1: Don't assert on word wrap failure

Full 15 chars character names can cause word wrap
violations, so better to just crop the display of
the name rather than asserting.

Changed paths:
    engines/mm/mm1/views_enh/text_view.cpp


diff --git a/engines/mm/mm1/views_enh/text_view.cpp b/engines/mm/mm1/views_enh/text_view.cpp
index 8e988ca902a..e118a700441 100644
--- a/engines/mm/mm1/views_enh/text_view.cpp
+++ b/engines/mm/mm1/views_enh/text_view.cpp
@@ -221,7 +221,13 @@ Common::StringArray TextView::splitLines(const Common::String &str,
 							endP = startP + p;
 					}
 				}
-				assert(endP > startP);
+
+				if (endP <= startP) {
+					// No place to word wrap, and it's longer than the width.
+					// So just use the entirety of the remainder
+					endP = startP + strlen(startP) - 1;
+					break;
+				}
 
 				strWidth = font.getStringWidth(Common::String(startP, endP));
 			}


Commit: a0a08f9d742d9e7502ca3c594f8b88f53e9a8dde
    https://github.com/scummvm/scummvm/commit/a0a08f9d742d9e7502ca3c594f8b88f53e9a8dde
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-05-30T14:38:22-07:00

Commit Message:
MM: MM1: Fix listing backpack items

Changed paths:
    engines/mm/mm1/views_enh/character_base.cpp


diff --git a/engines/mm/mm1/views_enh/character_base.cpp b/engines/mm/mm1/views_enh/character_base.cpp
index 02f526a3e85..aef1ab0d744 100644
--- a/engines/mm/mm1/views_enh/character_base.cpp
+++ b/engines/mm/mm1/views_enh/character_base.cpp
@@ -138,7 +138,7 @@ void CharacterBase::printInventory() {
 		writeString(160 - _innerBounds.left, BACKPACK_Y + 9 * (i + 1),
 			Common::String::format("%c) ", 'A' + i));
 		if (i < c._backpack.size()) {
-			g_globals->_items.getItem(c._equipped[i]._id);
+			g_globals->_items.getItem(c._backpack[i]._id);
 			const Item &item = g_globals->_currItem;
 			writeString(item._name);
 		}


Commit: 95c447f4e370fa921460cf55bf03e7190449bd59
    https://github.com/scummvm/scummvm/commit/95c447f4e370fa921460cf55bf03e7190449bd59
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-05-30T14:38:23-07:00

Commit Message:
MM: MM1: Implementing deleting characters in title screen

Changed paths:
    engines/mm/mm1/views_enh/character_manage.cpp


diff --git a/engines/mm/mm1/views_enh/character_manage.cpp b/engines/mm/mm1/views_enh/character_manage.cpp
index 0776adfc677..c9f51e619a4 100644
--- a/engines/mm/mm1/views_enh/character_manage.cpp
+++ b/engines/mm/mm1/views_enh/character_manage.cpp
@@ -138,11 +138,18 @@ bool CharacterManage::msgAction(const ActionMessage &msg) {
 		}
 
 		return true;
-	} else if (msg._action == KEYBIND_SELECT && _state == RENAME) {
-		Common::strcpy_s(c._name, _newName.c_str());
-		c._name[15] = '\0';
-		setMode(DISPLAY);
-		return true;
+	} else if (msg._action == KEYBIND_SELECT) {
+		if (_state == RENAME) {
+			Common::strcpy_s(c._name, _newName.c_str());
+			c._name[15] = '\0';
+			setMode(DISPLAY);
+			return true;
+		} else if (_state == DELETE) {
+			// Removes the character and returns to View All Characters
+			g_globals->_roster.remove(g_globals->_currCharacter);
+			_changed = true;
+			close();
+		}
 	}
 
 	return CharacterBase::msgAction(msg);




More information about the Scummvm-git-logs mailing list