From 77a868360f9aac124a6cb368c83d66b31c596ae9 Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Mon, 23 Apr 2007 14:15:07 +0000 Subject: make the moving smarter so you dont have to select the top card of a column to move the whole column git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13248 a1c6a512-1295-4272-9138-f99709370657 --- apps/plugins/solitaire.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'apps/plugins/solitaire.c') diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index da6ca3c74e..a73e2c02ed 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c @@ -1448,7 +1448,24 @@ int solitaire( void ) else { /* try moving cards */ - move_card( cur_col, sel_card ); + /* the code in the else seems to not like moveing kings + so if the selected card is a king do it the simple way */ + if (deck[sel_card].num == CARDS_PER_SUIT - 1) + { + if (move_card( cur_col, sel_card ) == MOVE_NOT_OK) + sel_card = NOT_A_CARD; + } + else + { + int retval; + do { + retval = move_card( cur_col, sel_card ); + if (retval == MOVE_NOT_OK) + { + sel_card = find_prev_card(sel_card); + } + } while ((retval == MOVE_NOT_OK) && (sel_card != NOT_A_CARD)); + } } break; -- cgit v1.2.3