[SPIDER]
authorThomas Faber <thomas.faber@reactos.org>
Fri, 7 Dec 2012 18:00:30 +0000 (18:00 +0000)
committerThomas Faber <thomas.faber@reactos.org>
Fri, 7 Dec 2012 18:00:30 +0000 (18:00 +0000)
- Only dissolve a stack of cards if they're of the same color
- Allow easier recognition of suit in concealed cards
- Patch by Marcel Leyendeckers, m dot leyendeckers at gmx dot de
CORE-6808 #resolve #comment Committed. Thanks!

svn path=/trunk/; revision=57815

reactos/base/applications/games/spider/spigame.cpp

index bf7465b..f56f206 100644 (file)
@@ -249,7 +249,8 @@ bool CARDLIBPROC StackDropProc(CardRegion &stackobj, CardStack &dragcards)
             int i, max = NUM_ONECOLOR_CARDS - dragcards.NumCards() - 1;
 
             /* Dragged cards have been checked to be in order, check stack cards */
-            if (stackLookingGood(mystack, max))
+            if (mystack[0].Suit() == dragcard.Suit() &&
+                stackLookingGood(mystack, max)) 
             {
                 CardStack s = stackobj.GetCardStack();
                 CardStack f;
@@ -279,8 +280,8 @@ void CreateSpider()
 {
     int i, pos;
 
-    /* Compute the value for yRowStackCardOffset based on the height of the card, so the card number isn't hidden on larger cards */
-    yRowStackCardOffset = (int)(__cardheight / 6.7);
+    /* Compute the value for yRowStackCardOffset based on the height of the card, so the card number and suite isn't hidden on larger cards except Ace */
+    yRowStackCardOffset = (int)(__cardheight / 6.4);
 
     pDeck = SpiderWnd.CreateRegion(0, true, 0, 0, -15, 0);
     pDeck->SetFaceDirection(CS_FACE_DOWN, 0);