summaryrefslogtreecommitdiff
path: root/noncore/games/solitaire
Unidiff
Diffstat (limited to 'noncore/games/solitaire') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/games/solitaire/patiencecardgame.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/noncore/games/solitaire/patiencecardgame.cpp b/noncore/games/solitaire/patiencecardgame.cpp
index 1501d2f..fc91b26 100644
--- a/noncore/games/solitaire/patiencecardgame.cpp
+++ b/noncore/games/solitaire/patiencecardgame.cpp
@@ -173,48 +173,51 @@ void PatienceCardGame::writeConfig( Config& cfg )
173 faceUpDealingPile->writeConfig( cfg, "FaceUpDealingPile" ); 173 faceUpDealingPile->writeConfig( cfg, "FaceUpDealingPile" );
174} 174}
175 175
176 176
177bool PatienceCardGame::mousePressCard( Card *card, QPoint p ) 177bool PatienceCardGame::mousePressCard( Card *card, QPoint p )
178{ 178{
179 Q_UNUSED(p); 179 Q_UNUSED(p);
180 180
181 CanvasCard *item = (CanvasCard *)card; 181 CanvasCard *item = (CanvasCard *)card;
182 if (item->isFacing() != TRUE) { 182 if (item->isFacing() != TRUE) {
183 // From facedown stack 183 // From facedown stack
184 if ((item->x() == 5) && ((int)item->y() == 10)) { 184 if ((item->x() == 5) && ((int)item->y() == 10)) {
185 item->setZ(highestZ); 185 item->setZ(highestZ);
186 highestZ++; 186 highestZ++;
187 187
188 // Added Code 188 // Added Code
189 faceDownDealingPile->removeCard(item); 189 faceDownDealingPile->removeCard(item);
190 faceUpDealingPile->addCardToTop(item); 190 faceUpDealingPile->addCardToTop(item);
191 item->setCardPile( faceUpDealingPile ); 191 item->setCardPile( faceUpDealingPile );
192 192
193 if ( qt_screen->deviceWidth() < 200 ) 193 if ( qt_screen->deviceWidth() < 200 )
194 item->flipTo( 30, (int)item->y() ); 194 item->flipTo( 30, (int)item->y() );
195 else 195 else
196 item->flipTo( 35, (int)item->y() ); 196 item->flipTo( 35, (int)item->y() );
197 } else {
198 // fix from cmader by tille
199 return false;
197 } 200 }
198 moving = NULL; 201 moving = NULL;
199 moved = FALSE; 202 moved = FALSE;
200 203
201 // move two other cards if we flip three at a time 204 // move two other cards if we flip three at a time
202 int flipped = 1; 205 int flipped = 1;
203 QCanvasItemList l = canvas()->collisions( p ); 206 QCanvasItemList l = canvas()->collisions( p );
204 for (QCanvasItemList::Iterator it = l.begin(); (it != l.end()) && (flipped != cardsDrawn()); ++it) { 207 for (QCanvasItemList::Iterator it = l.begin(); (it != l.end()) && (flipped != cardsDrawn()); ++it) {
205 if ( (*it)->rtti() == canvasCardId ) { 208 if ( (*it)->rtti() == canvasCardId ) {
206 CanvasCard *item = (CanvasCard *)*it; 209 CanvasCard *item = (CanvasCard *)*it;
207 if (item->animated()) 210 if (item->animated())
208 continue; 211 continue;
209 item->setZ(highestZ); 212 item->setZ(highestZ);
210 highestZ++; 213 highestZ++;
211 flipped++; 214 flipped++;
212 215
213 // Added Code 216 // Added Code
214 faceDownDealingPile->removeCard(item); 217 faceDownDealingPile->removeCard(item);
215 faceUpDealingPile->addCardToTop(item); 218 faceUpDealingPile->addCardToTop(item);
216 item->setCardPile( faceUpDealingPile ); 219 item->setCardPile( faceUpDealingPile );
217 220
218 if ( qt_screen->deviceWidth() < 200 ) 221 if ( qt_screen->deviceWidth() < 200 )
219 item->flipTo( 30, (int)item->y(), 8 * flipped ); 222 item->flipTo( 30, (int)item->y(), 8 * flipped );
220 else 223 else