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

dreammaster noreply at scummvm.org
Sat May 27 04:32:29 UTC 2023


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

Summary:
9c811463ac MM: MM1: Mark map tile as visited after map change, retreat, surrender
eb5d2de6b9 MM: MM1: Fix buying blacksmith armor/misc items


Commit: 9c811463ac5b671f0c149779f5a9328c8917dd61
    https://github.com/scummvm/scummvm/commit/9c811463ac5b671f0c149779f5a9328c8917dd61
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-05-26T20:58:02-07:00

Commit Message:
MM: MM1: Mark map tile as visited after map change, retreat, surrender

Changed paths:
    engines/mm/mm1/game/combat.cpp
    engines/mm/mm1/maps/maps.cpp
    engines/mm/mm1/maps/maps.h
    engines/mm/mm1/views/encounter.cpp
    engines/mm/mm1/views_enh/encounter.cpp


diff --git a/engines/mm/mm1/game/combat.cpp b/engines/mm/mm1/game/combat.cpp
index b68569b1341..aec0bc26604 100644
--- a/engines/mm/mm1/game/combat.cpp
+++ b/engines/mm/mm1/game/combat.cpp
@@ -1604,6 +1604,7 @@ void Combat::retreat() {
 		Maps::Map &map = *maps._currentMap;
 		maps._mapPos = Common::Point(map[Maps::MAP_FLEE_X],
 			map[Maps::MAP_FLEE_Y]);
+		maps.visitedTile();
 
 		g_globals->_treasure.clear0();
 		combatDone();
diff --git a/engines/mm/mm1/maps/maps.cpp b/engines/mm/mm1/maps/maps.cpp
index 79991cb471f..3b843a1d207 100644
--- a/engines/mm/mm1/maps/maps.cpp
+++ b/engines/mm/mm1/maps/maps.cpp
@@ -415,9 +415,17 @@ void Maps::changeMap(uint16 id, byte section) {
 	select(id, section);
 	loadTiles();
 
+	visitedTile();
+
 	g_events->send("Game", GameMessage("UPDATE"));
 }
 
+void Maps::visitedTile() {
+	byte &visited = _currentMap->_visited[_mapPos.y * MAP_W + _mapPos.x];
+	if (!visited)
+		visited = VISITED_NORMAL;
+}
+
 void Maps::clearSpecial() {
 	_currentState &= ~CELL_SPECIAL;
 	_currentMap->_states[_mapOffset] &= ~CELL_SPECIAL;
diff --git a/engines/mm/mm1/maps/maps.h b/engines/mm/mm1/maps/maps.h
index c964c304805..dca979e2d35 100644
--- a/engines/mm/mm1/maps/maps.h
+++ b/engines/mm/mm1/maps/maps.h
@@ -176,6 +176,11 @@ public:
 	 */
 	void changeMap(uint16 id, byte section);
 
+	/**
+	 * Mark a tile as visited
+	 */
+	void visitedTile();
+
 	/**
 	 * Disables the special state of the current cell
 	 * This is primiarily used for disabling cells
diff --git a/engines/mm/mm1/views/encounter.cpp b/engines/mm/mm1/views/encounter.cpp
index 5618c15ad51..9086fff5ed2 100644
--- a/engines/mm/mm1/views/encounter.cpp
+++ b/engines/mm/mm1/views/encounter.cpp
@@ -330,6 +330,7 @@ void Encounter::surrender() {
 	} else {
 		g_maps->_mapPos.x = map[Maps::MAP_SURRENDER_X];
 		g_maps->_mapPos.y = map[Maps::MAP_SURRENDER_Y];
+		g_maps->visitedTile();
 
 		// Randomly remove food, gems, or gold from the party
 		int val = getRandomNumber(200);
diff --git a/engines/mm/mm1/views_enh/encounter.cpp b/engines/mm/mm1/views_enh/encounter.cpp
index 017b043883c..418d43483e1 100644
--- a/engines/mm/mm1/views_enh/encounter.cpp
+++ b/engines/mm/mm1/views_enh/encounter.cpp
@@ -354,6 +354,7 @@ void Encounter::surrender() {
 	} else {
 		g_maps->_mapPos.x = map[Maps::MAP_SURRENDER_X];
 		g_maps->_mapPos.y = map[Maps::MAP_SURRENDER_Y];
+		g_maps->visitedTile();
 
 		// Randomly remove food, gems, or gold from the party
 		int val = getRandomNumber(200);


Commit: eb5d2de6b94af81008b7f5e8f1d36a6fcc1e2c29
    https://github.com/scummvm/scummvm/commit/eb5d2de6b94af81008b7f5e8f1d36a6fcc1e2c29
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-05-26T21:32:20-07:00

Commit Message:
MM: MM1: Fix buying blacksmith armor/misc items

Changed paths:
    devtools/create_mm/files/mm1/strings_en.yml
    engines/mm/mm1/views_enh/locations/blacksmith_items.cpp


diff --git a/devtools/create_mm/files/mm1/strings_en.yml b/devtools/create_mm/files/mm1/strings_en.yml
index 3ac9a8ba4b6..58647c532e5 100644
--- a/devtools/create_mm/files/mm1/strings_en.yml
+++ b/devtools/create_mm/files/mm1/strings_en.yml
@@ -19,7 +19,7 @@ dialogs:
 		weapons: "weapons     price"
 		misc: "misc       price"
 		backpack: "backpack     price"
-		thankyou: "thank you!"
+		thankyou: "Thank you!"
 	character:
 		legend1: "'q' quick ref     'c' cast    'r' remove"
 		legend2: " # view other     'd' discard 's' share"
diff --git a/engines/mm/mm1/views_enh/locations/blacksmith_items.cpp b/engines/mm/mm1/views_enh/locations/blacksmith_items.cpp
index 0581cc73c39..6e9f6db8d77 100644
--- a/engines/mm/mm1/views_enh/locations/blacksmith_items.cpp
+++ b/engines/mm/mm1/views_enh/locations/blacksmith_items.cpp
@@ -20,6 +20,7 @@
  */
 
 #include "mm/mm1/views_enh/locations/blacksmith_items.h"
+#include "mm/mm1/views_enh/locations/blacksmith.h"
 #include "mm/mm1/views_enh/confirm.h"
 #include "mm/mm1/globals.h"
 
@@ -40,8 +41,11 @@ BlacksmithItems::BlacksmithItems() : ItemsView("BlacksmithItems") {
 bool BlacksmithItems::msgFocus(const FocusMessage &msg) {
 	ItemsView::msgFocus(msg);
 
-	_mode = WEAPONS_MODE;
-	populateItems();
+	// When first opened, default to showing weapons to buy
+	if (dynamic_cast<Blacksmith *>(msg._priorView) != nullptr) {
+		_mode = WEAPONS_MODE;
+		populateItems();
+	}
 
 	return true;
 }
@@ -201,9 +205,6 @@ void BlacksmithItems::itemConfirmed() {
 
 	} else {
 		auto buyResult = c.buyItem(_items[_buySellItem]);
-		if (buyResult == Character::BUY_SUCCESS)
-			_items.remove_at(_buySellItem);
-		draw();
 
 		switch (buyResult) {
 		case Character::BUY_BACKPACK_FULL:




More information about the Scummvm-git-logs mailing list