mirror of
https://github.com/mod-playerbots/mod-playerbots
synced 2025-11-29 15:58:20 +08:00
rollback tank target value
This commit is contained in:
@@ -18,31 +18,27 @@ class FindTargetForTankStrategy : public FindNonCcTargetStrategy
|
|||||||
}
|
}
|
||||||
Player* bot = botAI->GetBot();
|
Player* bot = botAI->GetBot();
|
||||||
float threat = threatMgr->GetThreat(bot);
|
float threat = threatMgr->GetThreat(bot);
|
||||||
float dist = creature->GetDistance(bot);
|
|
||||||
if (!result) {
|
if (!result) {
|
||||||
minDistance = dist;
|
minThreat = threat;
|
||||||
result = creature;
|
result = creature;
|
||||||
}
|
}
|
||||||
// neglect if victim is main tank, or no victim (for untauntable target)
|
// neglect if victim is main tank, or no victim (for untauntable target)
|
||||||
if (threatMgr->getCurrentVictim()) {
|
if (threatMgr->getCurrentVictim()) {
|
||||||
// float max_threat = threatMgr->GetThreat(threatMgr->getCurrentVictim()->getTarget());
|
// float max_threat = threatMgr->GetThreat(threatMgr->getCurrentVictim()->getTarget());
|
||||||
Unit* victim = 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;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (minDistance >= dist || badResult)
|
if (minThreat >= threat)
|
||||||
{
|
{
|
||||||
badResult = false;
|
minThreat = threat;
|
||||||
minDistance = dist;
|
|
||||||
result = creature;
|
result = creature;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
float minThreat;
|
float minThreat;
|
||||||
float minDistance;
|
|
||||||
bool badResult = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Unit* TankTargetValue::Calculate()
|
Unit* TankTargetValue::Calculate()
|
||||||
|
|||||||
Reference in New Issue
Block a user