summaryrefslogtreecommitdiffstats
path: root/src/defs.h
blob: 959fa167f1b6a7c20c462df88a49a309abc8f6d1 (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
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
/*
 * Copyright (C) 2021  P. J. McDermott
 *
 * This file is part of Maze Fight
 *
 * Maze Fight is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * Maze Fight is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with Maze Fight.  If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef MF_DEFS_H_
#define MF_DEFS_H_

/* Window dimensions */
#define MF_WINDOW_W 640  /* Window width */
#define MF_WINDOW_H 480  /* Window height */

/* Menu maze */
#define MF_MENU_MAZE_CELL_W  16  /* Background maze cell width */

/* Form dimensions */
#define MF_FORM_P       24  /* Form padding */
#define MF_FORM_B        2  /* Form border width, same as maze wall thickness */
#define MF_TITLE_M      24  /* Margin under title */
#define MF_ROW_M        16  /* Margin between rows */
#define MF_COL_M        16  /* Margin between labels and entries */
#define MF_WGT_B         1  /* Widget border */
#define MF_LBL_M         8  /* Margin between radio buttons and labels */
#define MF_CHK_BTN_W    16  /* Radio button and check box width */
#define MF_CHK_BTN_P     2  /* Radio button and check box padding */
#define MF_CHK_LBL_P     8  /* Radio button and check box label pad */
#define MF_CHK_ITM_P     8  /* Radio button and check box label pad */
#define MF_TXT_P         2  /* Text padding */
#define MF_BTN_M         8  /* Margin between buttons */
#define MF_BTN_P         8  /* Button padding */
#define MF_TITLE_FONT_S 48  /* Title font size */
#define MF_TEXT_FONT_S  16  /* Regular text font size */

/* Player dimensions */
#define MF_PLAYER_SPEED      2
#define MF_PLAYER_TURN_TIME 15
#define MF_PLAYER_P          2
#define MF_PLAYER_SMILE_Y    0.25
#define MF_PLAYER_SMILE_R    0.5
#define MF_PLAYER_EYE_X      0.5
#define MF_PLAYER_EYE_Y      0.375
#define MF_PLAYER_EYE_R      0.125

/* Enemy dimensions */
#define MF_ENEMY_SPEED      2
#define MF_ENEMY_TURN_TIME 15
#define MF_ENEMY_P          2
#define MF_ENEMY_SMILE_Y    0.25
#define MF_ENEMY_SMILE_R    0.5
#define MF_ENEMY_EYE_X      0.5
#define MF_ENEMY_EYE_Y      0.375
#define MF_ENEMY_EYE_R      0.125
#define MF_ENEMY_MIN_DIST   0.5

/* Colors */
#define MF_COLOR_BACK_R 0xAF  /* Background color */
#define MF_COLOR_BACK_G 0xAF
#define MF_COLOR_BACK_B 0xAF
#define MF_COLOR_BACK_A 0xFF
#define MF_COLOR_MAZE_R 0x00  /* Maze wall color */
#define MF_COLOR_MAZE_G 0x00  /* Sync with MFTK_COLOR_FBDR_* in tk/style.h */
#define MF_COLOR_MAZE_B 0x00
#define MF_COLOR_MAZE_A 0xFF
#define MF_COLOR_FOGW_R 0x2F  /* Fog of war color */
#define MF_COLOR_FOGW_G 0x2F
#define MF_COLOR_FOGW_B 0x2F
#define MF_COLOR_FOGW_A 0xFF
#define MF_COLOR_PLYR_R 0x00  /* Player color */
#define MF_COLOR_PLYR_G 0xAF
#define MF_COLOR_PLYR_B 0x7F
#define MF_COLOR_PLYR_A 0xFF
#define MF_COLOR_PSML_R 0xDF  /* Player smile color */
#define MF_COLOR_PSML_G 0xDF
#define MF_COLOR_PSML_B 0xDF
#define MF_COLOR_PSML_A 0xFF
#define MF_COLOR_PEYE_R 0xDF  /* Player eye color */
#define MF_COLOR_PEYE_G 0xDF
#define MF_COLOR_PEYE_B 0xDF
#define MF_COLOR_PEYE_A 0xFF
#define MF_COLOR_ELYR_R 0xAF  /* Enemy color */
#define MF_COLOR_ELYR_G 0x00
#define MF_COLOR_ELYR_B 0x00
#define MF_COLOR_ELYR_A 0xFF
#define MF_COLOR_ESML_R 0xDF  /* Enemy smile color */
#define MF_COLOR_ESML_G 0xDF
#define MF_COLOR_ESML_B 0xDF
#define MF_COLOR_ESML_A 0xFF
#define MF_COLOR_EEYE_R 0xDF  /* Enemy eye color */
#define MF_COLOR_EEYE_G 0xDF
#define MF_COLOR_EEYE_B 0xDF
#define MF_COLOR_EEYE_A 0xFF

/* Text widget digits */
#define MF_DIGITS "0123456789"

#endif  /* MF_DEFS_H_ */