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

mduggan mgithub at guarana.org
Sun Jul 11 09:31:28 UTC 2021


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:
7c6c0c2f2c ULTIMA8: Fix crusader robots finishing running
b68546fdd3 ULTIMA8: Don't terminate Crusader attack when leaving fast area


Commit: 7c6c0c2f2c5460f6a899aae6131f4346ed6acb8f
    https://github.com/scummvm/scummvm/commit/7c6c0c2f2c5460f6a899aae6131f4346ed6acb8f
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2021-07-11T18:31:11+09:00

Commit Message:
ULTIMA8: Fix crusader robots finishing running

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


diff --git a/engines/ultima/ultima8/world/actors/cru_avatar_mover_process.cpp b/engines/ultima/ultima8/world/actors/cru_avatar_mover_process.cpp
index 3be9ac8af4..8b8aefb6b6 100644
--- a/engines/ultima/ultima8/world/actors/cru_avatar_mover_process.cpp
+++ b/engines/ultima/ultima8/world/actors/cru_avatar_mover_process.cpp
@@ -311,10 +311,14 @@ void CruAvatarMoverProcess::handleNormalMode() {
 		// if we were running, slow to a walk before stopping
 		// (even in stasis)
 		Animation::Sequence nextanim;
-		if (rebelBase)
+		if (rebelBase) {
 			nextanim = Animation::stand;
-		else
+		} else {
 			nextanim = Animation::stopRunningAndDrawSmallWeapon;
+			// Robots don't slow down from  running
+			if (!avatar->hasAnim(nextanim))
+				nextanim = Animation::stand;
+		}
 		waitFor(avatar->doAnim(nextanim, direction));
 		avatar->setInCombat(0);
 		return;


Commit: b68546fdd380569f395a407816f2b9a6500d9c67
    https://github.com/scummvm/scummvm/commit/b68546fdd380569f395a407816f2b9a6500d9c67
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2021-07-11T18:31:11+09:00

Commit Message:
ULTIMA8: Don't terminate Crusader attack when leaving fast area

Should just wait until actor is fast again.

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


diff --git a/engines/ultima/ultima8/world/actors/attack_process.cpp b/engines/ultima/ultima8/world/actors/attack_process.cpp
index 0a29a77579..d63feed0b2 100644
--- a/engines/ultima/ultima8/world/actors/attack_process.cpp
+++ b/engines/ultima/ultima8/world/actors/attack_process.cpp
@@ -159,10 +159,13 @@ void AttackProcess::run() {
 	Actor *a = getActor(_itemNum);
 	Actor *target = getActor(_target);
 
-	if (!a || !a->hasFlags(Item::FLG_FASTAREA) || a->isDead() || !_tacticDatReadStream) {
+	if (!a || a->isDead() || !_tacticDatReadStream) {
 		terminate();
 		return;
 	}
+	
+	if (!a->hasFlags(Item::FLG_FASTAREA))
+		return;
 
 	if (_tactic == 0) {
 		genericAttack();




More information about the Scummvm-git-logs mailing list