diff --git a/src/world/AI/Fsm/StateCombat.cpp b/src/world/AI/Fsm/StateCombat.cpp index 4fd020a0..9990007c 100644 --- a/src/world/AI/Fsm/StateCombat.cpp +++ b/src/world/AI/Fsm/StateCombat.cpp @@ -35,6 +35,11 @@ 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 ); + } + if( !bnpc.hasFlag( Entity::NoDeaggro ) ) { @@ -48,11 +53,6 @@ void AI::Fsm::StateCombat::onUpdate( Entity::BNpc& bnpc, uint64_t tickCount ) bnpc.moveTo( *pHatedActor ); } - if (bnpc.hasFlag(Entity::Immobile) && distance > 30.0f ) - { - bnpc.deaggro( pHatedActor ); - } - if( pNaviProvider->syncPosToChara( bnpc ) ) bnpc.sendPositionUpdate();