|
@@ -68,7 +68,12 @@ void RecruitHero::accept(AIGateway * ai)
|
|
throw cannotFulfillGoalException("Town " + t->nodeName() + " is occupied. Cannot recruit hero!");
|
|
throw cannotFulfillGoalException("Town " + t->nodeName() + " is occupied. Cannot recruit hero!");
|
|
|
|
|
|
cb->recruitHero(t, heroToHire);
|
|
cb->recruitHero(t, heroToHire);
|
|
- ai->nullkiller->heroManager->update();
|
|
|
|
|
|
+
|
|
|
|
+ {
|
|
|
|
+ std::unique_lock lockGuard(ai->nullkiller->aiStateMutex);
|
|
|
|
+
|
|
|
|
+ ai->nullkiller->heroManager->update();
|
|
|
|
+ }
|
|
|
|
|
|
if(t->visitingHero)
|
|
if(t->visitingHero)
|
|
ai->moveHeroToTile(t->visitablePos(), t->visitingHero.get());
|
|
ai->moveHeroToTile(t->visitablePos(), t->visitingHero.get());
|