Forráskód Böngészése

Fix hero order for giving bonuses in town to match H3.

Dydzio 1 éve
szülő
commit
f20ef4f1b3
2 módosított fájl, 5 hozzáadás és 5 törlés
  1. 3 3
      lib/mapObjects/CGTownInstance.cpp
  2. 2 2
      server/CGameHandler.cpp

+ 3 - 3
lib/mapObjects/CGTownInstance.cpp

@@ -544,12 +544,12 @@ void CGTownInstance::newTurn(CRandomGenerator & rand) const
 
 		//get Mana Vortex or Stables bonuses
 		//same code is in the CGameHandler::buildStructure method
+		if (garrisonHero != nullptr) //garrison hero first - consistent with original H3 Mana Vortex and Battle Scholar Academy levelup windows order
+			cb->visitCastleObjects(this, garrisonHero);
+
 		if (visitingHero != nullptr)
 			cb->visitCastleObjects(this, visitingHero);
 
-		if (garrisonHero != nullptr)
-			cb->visitCastleObjects(this, garrisonHero);
-
 		if (tempOwner == PlayerColor::NEUTRAL) //garrison growth for neutral towns
 		{
 			std::vector<SlotID> nativeCrits; //slots

+ 2 - 2
server/CGameHandler.cpp

@@ -2434,10 +2434,10 @@ bool CGameHandler::buildStructure(ObjectInstanceID tid, BuildingID requestedID,
 	// now when everything is built - reveal tiles for lookout tower
 	changeFogOfWar(t->getSightCenter(), t->getSightRadius(), t->getOwner(), ETileVisibility::REVEALED);
 
+	if(t->garrisonHero) //garrison hero first - consistent with original H3 Mana Vortex and Battle Scholar Academy levelup windows order
+		visitCastleObjects(t, t->garrisonHero);
 	if(t->visitingHero)
 		visitCastleObjects(t, t->visitingHero);
-	if(t->garrisonHero)
-		visitCastleObjects(t, t->garrisonHero);
 
 	checkVictoryLossConditionsForPlayer(t->tempOwner);
 	return true;