summaryrefslogtreecommitdiff
path: root/src/game.c
diff options
context:
space:
mode:
authorMario Kilies <MarioKilies@GMX.net>2011-01-15 02:47:42 +0100
committerMario Kilies <MarioKilies@GMX.net>2011-01-15 02:47:42 +0100
commit9e189799f8b32c2e151ddac8aeefda5be13a9231 (patch)
tree3152c7f14fdbd46d32a6790b365fcf4f5e30c4cc /src/game.c
parent9563ca807cacff851a06861a6a4cff8a37043b0e (diff)
Command line parameters hacked in. Moved display stuff in the game loop.
Diffstat (limited to 'src/game.c')
-rw-r--r--src/game.c37
1 files changed, 36 insertions, 1 deletions
diff --git a/src/game.c b/src/game.c
index 39dcec7..2583fb1 100644
--- a/src/game.c
+++ b/src/game.c
@@ -6,6 +6,7 @@
#include <unistd.h>
#include <assert.h>
#include <curses.h>
+#include "ui.h"
void init_mainstack(card* stack, const uint32_t size)
{
@@ -24,7 +25,7 @@ void init_mainstack(card* stack, const uint32_t size)
}
}
-void start_game(void)
+void start_game(const bool servermode, const char *addr, const uint16_t port)
{
bool running = true;
int cards = MAX_CARD - MIN_CARD + 1;
@@ -35,6 +36,38 @@ void start_game(void)
init_mainstack(mainstack, cards);
+ // Example data set for table cards window
+ const tablestacks ts = {{1, 2, 3, 4, 101}, {6, 7, 53, 0, 0}, {11, 55, 0, 0, 0}, {17, 29, 36, 42, 0}};
+
+ // The stack points window uses ts, too, so there is no separate data set
+
+ // Example data set for current state window
+ pnoc_t pnoc[10] = {
+ {"$you", 10},
+ {"1234567890", 23},
+ {"baz", 38},
+ {"foo_bar", 14},
+ {"lolcat", 60},
+ {"blablub123", 15},
+ {"abcdefg", 103},
+ {"hello", 98},
+ {"hornoxe", 33},
+ {"1337nick", 74}
+ };
+ pnoc_sort(pnoc, 10);
+ const uint8_t num_players = 10;
+ const uint32_t score = 10;
+
+ // Example data set for hand cards window
+ hand h = {22, 0, 12, 85, 27, 69, 78, 0, 77, 0};
+ hand_sort(h);
+
+ // Display all windows
+ ui_display_wnd_table_cards(ts, false, 0);
+ ui_display_wnd_stack_points(ts, false, 0);
+ ui_display_wnd_current_state(pnoc, num_players, 2, score);
+ ui_display_wnd_hand_cards(h, false, 0);
+
// main game loop
while(running)
{
@@ -47,6 +80,8 @@ void start_game(void)
case STATE_WAIT_CARDS: // wait on client until host has dealt cards
break;
case STATE_SELECTCARD: // player has to select own card, if done, set state to STATE_WAIT_OPPONENTCARDS
+ ui_choose_card(h);
+ running = false;
break;
case STATE_WAIT_OPPONENTCARDS: // wait until all opponents have selected their open card. Then check if we have the lowest open card. If so, set state to STATE_SELECTSTACK, otherwise to STATE_WAIT_OPPONENTSTACK
break;