summaryrefslogtreecommitdiffstats
path: root/modules/player/inc/player_clui.h
blob: 6492054fea8c640934a40fdcb2cc2ef910871a2b (plain) (blame)
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/******************************************************************************
 *	Copyright (C) 2015	Alejandro Colomar Andrés		      *
 ******************************************************************************/


/******************************************************************************
 ******* include guard ********************************************************
 ******************************************************************************/
# ifndef		MSW_PLAYER_CLUI_H
	# define	MSW_PLAYER_CLUI_H


/******************************************************************************
 ******* headers **************************************************************
 ******************************************************************************/
		/* struct Game_Iface_... */
	#include "game_iface.h"

	#include "player_iface.h"


/******************************************************************************
 ******* enums ****************************************************************
 ******************************************************************************/
	enum	Player_CLUI_Char {
		PLAYER_CLUI_CHAR_KBOOM		= '#',
		PLAYER_CLUI_CHAR_HIDDEN_FIELD	= '+',
		PLAYER_CLUI_CHAR_HIDDEN_MINE	= '*',
		PLAYER_CLUI_CHAR_HIDDEN_SAFE	= '-',
		PLAYER_CLUI_CHAR_SAFE_MINE	= 'v',
		PLAYER_CLUI_CHAR_0		= ' ',
		PLAYER_CLUI_CHAR_1		= '1',
		PLAYER_CLUI_CHAR_2		= '2',
		PLAYER_CLUI_CHAR_3		= '3',
		PLAYER_CLUI_CHAR_4		= '4',
		PLAYER_CLUI_CHAR_5		= '5',
		PLAYER_CLUI_CHAR_6		= '6',
		PLAYER_CLUI_CHAR_7		= '7',
		PLAYER_CLUI_CHAR_8		= '8',
		PLAYER_CLUI_CHAR_FLAG		= '!',
		PLAYER_CLUI_CHAR_FLAG_FALSE	= 'F',
		PLAYER_CLUI_CHAR_POSSIBLE	= '?',
		PLAYER_CLUI_CHAR_POSSIBLE_FALSE	= 'f'
	};


/******************************************************************************
 ******* functions ************************************************************
 ******************************************************************************/
void	player_clui_start	(const struct Player_Iface_Position	*position,
				const char				*title,
				const char				*subtitle,
				int					*action);

void	player_clui		(const struct Game_Iface_Out		*board,
				const struct Player_Iface_Position	*position,
				const char				*title,
				const char				*subtitle,
				int					*action);

void	player_clui_save_name	(const char *filepath, char *filename);
void	player_clui_score_name	(char *player_name);


/******************************************************************************
 ******* include guard ********************************************************
 ******************************************************************************/
# endif			/* player_clui.h */


/******************************************************************************
 ******* end of file **********************************************************
 ******************************************************************************/