From 57734c172bcfa77467c939e194eef2de5351d7d6 Mon Sep 17 00:00:00 2001 From: David Cernat Date: Sun, 26 Jul 2020 11:06:11 +0200 Subject: [PATCH] [Client] Retain AiPursue for guards ignoring player because of dialogue In OpenMW, guards starting combat with the player cause other guards with an AiPursue package to also join the combat in MechanicsManager::startCombat(). Previously, however, TES3MP was discarding AiPursue packages for the guards who hadn't started the arrest dialogue with the player by returning the wrong boolean in AiPursue::execute(), leading to just one-on-one combat with the arresting guard. --- apps/openmw/mwmechanics/aipursue.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/openmw/mwmechanics/aipursue.cpp b/apps/openmw/mwmechanics/aipursue.cpp index a009b3cdf..c4cae748f 100644 --- a/apps/openmw/mwmechanics/aipursue.cpp +++ b/apps/openmw/mwmechanics/aipursue.cpp @@ -63,7 +63,7 @@ bool AiPursue::execute (const MWWorld::Ptr& actor, CharacterController& characte Start of tes3mp addition Because multiplayer does not pause the game, prevent infinite arrest loops by ignoring - players already engaged in dialogue + players already engaged in dialogue while retaining the AiPursue package Additionally, do not arrest players who are currently jailed */ @@ -72,7 +72,7 @@ bool AiPursue::execute (const MWWorld::Ptr& actor, CharacterController& characte if (MWBase::Environment::get().getWindowManager()->containsMode(MWGui::GM_Dialogue) || MWBase::Environment::get().getWindowManager()->containsMode(MWGui::GM_Jail)) { - return true; + return false; } } /*