diff --git a/client/battle/CBattleInterface.cpp b/client/battle/CBattleInterface.cpp index 88abab838..f90ea56ab 100644 --- a/client/battle/CBattleInterface.cpp +++ b/client/battle/CBattleInterface.cpp @@ -1935,6 +1935,12 @@ void CBattleInterface::bTacticNextStack(const CStack *current /*= nullptr*/) TStacks stacksOfMine = tacticianInterface->cb->battleGetStacks(CBattleCallback::ONLY_MINE); vstd::erase_if(stacksOfMine, &immobile); + if(stacksOfMine.empty()) + { + bEndTacticPhase(); + return; + } + auto it = vstd::find(stacksOfMine, current); if(it != stacksOfMine.end() && ++it != stacksOfMine.end()) stackActivated(*it);