summaryrefslogtreecommitdiff
path: root/src/player.h
blob: 41e928b050d22093bb35b3dba5228f0969c7f40e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef OXEN_PLAYER_H
#define OXEN_PLAYER_H

#define MAX_PLAYERS 10
#define MAX_PLAYER_NAME_LENGTH 10

#include <stdint.h>
#include "card.h"

typedef uint8_t player_id_t;

typedef struct
{
	player_id_t player_id;
	char player_name[MAX_PLAYER_NAME_LENGTH + 1];
	card open_card;
} player_list_entry_t;

typedef struct
{
	uint8_t count;
	player_list_entry_t players[MAX_PLAYERS];
} player_list_t;

player_list_entry_t *get_player_list_entry_by_player_id(player_list_t *pl, const player_id_t pid);
void player_list_sort_by_open_card(player_list_t *pl, const uint8_t num_entries);

#endif // OXEN_PLAYER_H