From ea5666c443cefd206bb417b3d0b6987e9ba0b4e3 Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Tue, 20 Oct 2015 19:29:04 +0200 Subject: [PATCH] fix #1652 ; fix #467 --- common/server_cardzone.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/common/server_cardzone.cpp b/common/server_cardzone.cpp index 5ae65093..3e128a3e 100644 --- a/common/server_cardzone.cpp +++ b/common/server_cardzone.cpp @@ -147,7 +147,12 @@ int Server_CardZone::getFreeGridColumn(int x, int y, const QString &cardName, bo if (x == -1) { if (!dontStackSameName && freePilesMap[y].contains(cardName)) { x = (freePilesMap[y].value(cardName) / 3) * 3; - if (!coordMap.contains(x)) + + if(coordMap.contains(x) && + (coordMap[x]->getFaceDown() || + !coordMap[x]->getAttachedCards().isEmpty())) { + // don't pile up on: 1. facedown cards 2. cards with attached cards + } else if (!coordMap.contains(x)) return x; else if (!coordMap.contains(x + 1)) return x + 1;