From efa6023ed7dfecd2a3fc49526cf0bab5ae967247 Mon Sep 17 00:00:00 2001 From: Mario Kilies Date: Thu, 27 Jan 2011 22:52:20 +0100 Subject: Implemented final scores window. --- src/player.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'src/player.c') diff --git a/src/player.c b/src/player.c index 235add8..cf587fc 100644 --- a/src/player.c +++ b/src/player.c @@ -16,7 +16,7 @@ player_list_entry_t *get_player_list_entry_by_player_id(player_list_t *pl, const return NULL; } -static int ple_comparator(const void *a, const void *b) +static int ple_open_card_comparator(const void *a, const void *b) { player_list_entry_t ple1 = *(player_list_entry_t *)a; player_list_entry_t ple2 = *(player_list_entry_t *)b; @@ -24,9 +24,24 @@ static int ple_comparator(const void *a, const void *b) return ple1.open_card - ple2.open_card; } +static int ple_score_comparator(const void *a, const void *b) +{ + player_list_entry_t ple1 = *(player_list_entry_t *)a; + player_list_entry_t ple2 = *(player_list_entry_t *)b; + + return ple1.score - ple2.score; +} + void player_list_sort_by_open_card(player_list_t *pl, const uint8_t num_entries) { assert(pl != NULL); - qsort(pl->players, num_entries, sizeof(player_list_entry_t), ple_comparator); + qsort(pl->players, num_entries, sizeof(player_list_entry_t), ple_open_card_comparator); +} + +void player_list_sort_by_score(player_list_t *pl, const uint8_t num_entries) +{ + assert(pl != NULL); + + qsort(pl->players, num_entries, sizeof(player_list_entry_t), ple_score_comparator); } -- cgit v1.2.3