diff --git a/src/strategy/values/TankTargetValue.cpp b/src/strategy/values/TankTargetValue.cpp index 1adc6326..817dbd50 100644 --- a/src/strategy/values/TankTargetValue.cpp +++ b/src/strategy/values/TankTargetValue.cpp @@ -18,31 +18,27 @@ class FindTargetForTankStrategy : public FindNonCcTargetStrategy } Player* bot = botAI->GetBot(); float threat = threatMgr->GetThreat(bot); - float dist = creature->GetDistance(bot); if (!result) { - minDistance = dist; + minThreat = threat; result = creature; } // neglect if victim is main tank, or no victim (for untauntable target) if (threatMgr->getCurrentVictim()) { // float max_threat = threatMgr->GetThreat(threatMgr->getCurrentVictim()->getTarget()); Unit* victim = threatMgr->getCurrentVictim()->getTarget(); - if (victim && victim->ToPlayer() && botAI->IsTank(victim->ToPlayer())) { + if (victim && victim->ToPlayer() && botAI->IsMainTank(victim->ToPlayer())) { return; } } - if (minDistance >= dist || badResult) + if (minThreat >= threat) { - badResult = false; - minDistance = dist; + minThreat = threat; result = creature; } } protected: float minThreat; - float minDistance; - bool badResult = true; }; Unit* TankTargetValue::Calculate()