mirror of
https://github.com/vcmi/vcmi.git
synced 2025-03-19 21:10:12 +02:00
Fix cluster prio
Clusters are now checked against all priority-tiers instead of just hunter-gather.
This commit is contained in:
parent
8d3970c6d5
commit
b0e87f01ed
@ -459,6 +459,8 @@ void ObjectClusterizer::clusterizeObject(
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float priority = 0;
|
||||||
|
|
||||||
if(path.nodes.size() > 1)
|
if(path.nodes.size() > 1)
|
||||||
{
|
{
|
||||||
auto blocker = getBlocker(path);
|
auto blocker = getBlocker(path);
|
||||||
@ -475,7 +477,10 @@ void ObjectClusterizer::clusterizeObject(
|
|||||||
|
|
||||||
heroesProcessed.insert(path.targetHero);
|
heroesProcessed.insert(path.targetHero);
|
||||||
|
|
||||||
float priority = priorityEvaluator->evaluate(Goals::sptr(Goals::ExecuteHeroChain(path, obj)), PriorityEvaluator::PriorityTier::HUNTER_GATHER);
|
for (int prio = PriorityEvaluator::PriorityTier::BUILDINGS; prio <= PriorityEvaluator::PriorityTier::DEFEND; ++prio)
|
||||||
|
{
|
||||||
|
priority = std::max(priority, priorityEvaluator->evaluate(Goals::sptr(Goals::ExecuteHeroChain(path, obj)), prio));
|
||||||
|
}
|
||||||
|
|
||||||
if(ai->settings->isUseFuzzy() && priority < MIN_PRIORITY)
|
if(ai->settings->isUseFuzzy() && priority < MIN_PRIORITY)
|
||||||
continue;
|
continue;
|
||||||
@ -498,7 +503,10 @@ void ObjectClusterizer::clusterizeObject(
|
|||||||
|
|
||||||
heroesProcessed.insert(path.targetHero);
|
heroesProcessed.insert(path.targetHero);
|
||||||
|
|
||||||
float priority = priorityEvaluator->evaluate(Goals::sptr(Goals::ExecuteHeroChain(path, obj)), PriorityEvaluator::PriorityTier::HUNTER_GATHER);
|
for (int prio = PriorityEvaluator::PriorityTier::BUILDINGS; prio <= PriorityEvaluator::PriorityTier::DEFEND; ++prio)
|
||||||
|
{
|
||||||
|
priority = std::max(priority, priorityEvaluator->evaluate(Goals::sptr(Goals::ExecuteHeroChain(path, obj)), prio));
|
||||||
|
}
|
||||||
|
|
||||||
if (ai->settings->isUseFuzzy() && priority < MIN_PRIORITY)
|
if (ai->settings->isUseFuzzy() && priority < MIN_PRIORITY)
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user