diff --git a/server/processors/TurnOrderProcessor.cpp b/server/processors/TurnOrderProcessor.cpp index 9499558c2..f5c728469 100644 --- a/server/processors/TurnOrderProcessor.cpp +++ b/server/processors/TurnOrderProcessor.cpp @@ -177,13 +177,16 @@ bool TurnOrderProcessor::computeCanActSimultaneously(PlayerColor active, PlayerC assert(activeInfo); assert(waitingInfo); - if (gameHandler->hasBothPlayersAtSameConnection(active, waiting)) + if (activeInfo->human != waitingInfo->human) { + // only one AI and one human can play simultaneoulsy from single connection if (!gameHandler->getStartInfo()->simturnsInfo.allowHumanWithAI) return false; - - // only one AI and one human can play simultaneoulsy from single connection - if (activeInfo->human == waitingInfo->human) + } + else + { + // two AI or two humans in hotseat can't play at the same time + if (gameHandler->hasBothPlayersAtSameConnection(active, waiting)) return false; }