[Scummvm-git-logs] scummvm master -> 18c6eb8c31d9e208c6396fd4d8dc8cbf1741369b

OMGPizzaGuy noreply at scummvm.org
Sat May 25 05:08:43 UTC 2024


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:
1ae7ff095c ULTIMA8: Fix missing process type on pathfinder
18c6eb8c31 ULTIMA8: Make middle-click pathfinder kill existing pathfinder process.


Commit: 1ae7ff095c6f17b5ef9e4a85acaa7252aa138d6f
    https://github.com/scummvm/scummvm/commit/1ae7ff095c6f17b5ef9e4a85acaa7252aa138d6f
Author: Matthew Jimenez (matthew.jimenez at outlook.com)
Date: 2024-05-25T00:07:45-05:00

Commit Message:
ULTIMA8: Fix missing process type on pathfinder

Changed paths:
    engines/ultima/ultima8/world/actors/pathfinder_process.cpp


diff --git a/engines/ultima/ultima8/world/actors/pathfinder_process.cpp b/engines/ultima/ultima8/world/actors/pathfinder_process.cpp
index c5302b65ce4..7dbe2e0a831 100644
--- a/engines/ultima/ultima8/world/actors/pathfinder_process.cpp
+++ b/engines/ultima/ultima8/world/actors/pathfinder_process.cpp
@@ -45,7 +45,7 @@ PathfinderProcess::PathfinderProcess(Actor *actor, ObjId itemid, bool hit) :
 		_targetX(0), _targetY(0), _targetZ(0) {
 	assert(actor);
 	_itemNum = actor->getObjId();
-	_type = PATHFINDER_PROC_TYPE; // CONSTANT !
+	_type = PATHFINDER_PROC_TYPE;
 
 	Item *item = getItem(itemid);
 	if (!item) {
@@ -83,6 +83,7 @@ PathfinderProcess::PathfinderProcess(Actor *actor, int32 x, int32 y, int32 z) :
 		_hitMode(false) {
 	assert(actor);
 	_itemNum = actor->getObjId();
+	_type = PATHFINDER_PROC_TYPE;
 
 	Pathfinder pf;
 	pf.init(actor);
@@ -244,6 +245,11 @@ void PathfinderProcess::saveData(Common::WriteStream *ws) {
 bool PathfinderProcess::loadData(Common::ReadStream *rs, uint32 version) {
 	if (!Process::loadData(rs, version)) return false;
 
+	// Type previously missing from constructor
+	if (_type == 0) {
+		_type = PATHFINDER_PROC_TYPE;
+	}
+
 	_targetItem = rs->readUint16LE();
 	_targetX = rs->readUint16LE();
 	_targetY = rs->readUint16LE();


Commit: 18c6eb8c31d9e208c6396fd4d8dc8cbf1741369b
    https://github.com/scummvm/scummvm/commit/18c6eb8c31d9e208c6396fd4d8dc8cbf1741369b
Author: Matthew Jimenez (matthew.jimenez at outlook.com)
Date: 2024-05-25T00:07:45-05:00

Commit Message:
ULTIMA8: Make middle-click pathfinder kill existing pathfinder process.

Changed paths:
    engines/ultima/ultima8/gumps/game_map_gump.cpp


diff --git a/engines/ultima/ultima8/gumps/game_map_gump.cpp b/engines/ultima/ultima8/gumps/game_map_gump.cpp
index e8a3b1ce400..87402171e8c 100644
--- a/engines/ultima/ultima8/gumps/game_map_gump.cpp
+++ b/engines/ultima/ultima8/gumps/game_map_gump.cpp
@@ -335,6 +335,7 @@ void GameMapGump::onMouseClick(int button, int32 mx, int32 my) {
 			} else {
 				Actor *avatarControlled = getControlledActor();
 				PathfinderProcess *pfp = new PathfinderProcess(avatarControlled, coords[0], coords[1], coords[2]);
+				Kernel::get_instance()->killProcesses(avatarControlled->getObjId(), PathfinderProcess::PATHFINDER_PROC_TYPE, true);
 				Kernel::get_instance()->addProcess(pfp);
 			}
 		}




More information about the Scummvm-git-logs mailing list