From ccbf6bea61eaf0982ca90f2bc4d27960bb4206d2 Mon Sep 17 00:00:00 2001 From: Kooper Date: Mon, 21 Jul 2025 19:58:30 +0200 Subject: [PATCH] Immobile BNpcs don't deaggro anymore when having the "NoDeaggro" flag --- src/world/AI/Fsm/StateCombat.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/world/AI/Fsm/StateCombat.cpp b/src/world/AI/Fsm/StateCombat.cpp index 9990007c..78e1463f 100644 --- a/src/world/AI/Fsm/StateCombat.cpp +++ b/src/world/AI/Fsm/StateCombat.cpp @@ -35,14 +35,13 @@ void AI::Fsm::StateCombat::onUpdate( Entity::BNpc& bnpc, uint64_t tickCount ) auto distance = Common::Util::distance( bnpc.getPos(), pHatedActor->getPos() ); - if( bnpc.hasFlag( Entity::Immobile ) && distance > 30.0f ) - { - bnpc.deaggro( pHatedActor ); - } - + // All possibilities to automatically lose aggro go here if( !bnpc.hasFlag( Entity::NoDeaggro ) ) { - + if( bnpc.hasFlag( Entity::Immobile ) && distance > 30.0f ) + { + bnpc.deaggro( pHatedActor ); + } } if( !bnpc.hasFlag( Entity::Immobile ) && distance > ( bnpc.getNaviTargetReachedDistance() + pHatedActor->getRadius() ) )