From 94bce44295696f33c2a2a430be829780fb4021fe Mon Sep 17 00:00:00 2001 From: KimLS Date: Sun, 14 Oct 2018 00:02:16 -0700 Subject: [PATCH] Some checks to cut down on position sends by about 30%, still need to optimize movement sends --- zone/mob_movement_manager.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/zone/mob_movement_manager.cpp b/zone/mob_movement_manager.cpp index d826ed0f0..2b53c3f06 100644 --- a/zone/mob_movement_manager.cpp +++ b/zone/mob_movement_manager.cpp @@ -277,7 +277,10 @@ public: return true; } - mgr->SendCommandToClients(m, 0.0, 0.0, 0.0, 0.0, 0, ClientRangeCloseMedium); + if (m->IsMoving()) { + m->SetMoving(false); + mgr->SendCommandToClients(m, 0.0, 0.0, 0.0, 0.0, 0, ClientRangeCloseMedium); + } return true; } @@ -467,8 +470,11 @@ void MobMovementManager::StopNavigation(Mob *who) { return; } - who->TryFixZ(); - SendCommandToClients(who, 0.0, 0.0, 0.0, 0.0, 0, ClientRangeCloseMedium); + if (who->IsMoving()) { + who->TryFixZ(); + who->SetMoving(false); + SendCommandToClients(who, 0.0, 0.0, 0.0, 0.0, 0, ClientRangeCloseMedium); + } ent.second.Commands.clear(); }