From 9e189799f8b32c2e151ddac8aeefda5be13a9231 Mon Sep 17 00:00:00 2001 From: Mario Kilies Date: Sat, 15 Jan 2011 02:47:42 +0100 Subject: Command line parameters hacked in. Moved display stuff in the game loop. --- src/game.c | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'src/game.c') 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 #include #include +#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; -- cgit v1.2.3