Explorar o código

#3788 - fix passing wirlpool with only commander alive

Andrii Danylchenko hai 1 ano
pai
achega
ae69311023
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      lib/mapObjects/MiscObjects.cpp

+ 2 - 1
lib/mapObjects/MiscObjects.cpp

@@ -709,7 +709,8 @@ void CGWhirlpool::teleportDialogAnswered(const CGHeroInstance *hero, ui32 answer
 bool CGWhirlpool::isProtected(const CGHeroInstance * h)
 {
 	return h->hasBonusOfType(BonusType::WHIRLPOOL_PROTECTION)
-	|| (h->stacksCount() == 1 && h->Slots().begin()->second->count == 1);
+		|| (h->stacksCount() == 1 && h->Slots().begin()->second->count == 1)
+		|| (h->stacksCount() == 0 && h->commander && h->commander->alive);
 }
 
 ArtifactID CGArtifact::getArtifact() const