]> git.gir.st - minesVIiper.git/blob - schemes.h
working invert cursor
[minesVIiper.git] / schemes.h
1 /*
2 contains color/monchrome schemes for tty-mines.
3 */
4 #ifndef __SCHEMES_H__
5 #define __SCHEMES_H__
6
7 struct minescheme {
8 char* number[9];
9 char* field_closed;
10 char* field_flagged;
11 char* field_question;
12 char* mouse_highlight;
13 char* mine_normal;
14 char* mine_death;
15 char* mine_wrongf;
16 char* mine_wrongq;
17
18 char* border_top_l;
19 char* border_top_m;
20 char* border_top_r;
21
22 char* border_status_l;
23 //TODO: better define status line
24 char* border_status_r;
25
26 char* border_spacer_l;
27 char* border_spacer_m;
28 char* border_spacer_r;
29
30 char* border_field_l;
31 char* border_field_r;
32
33 char* border_bottom_l;
34 char* border_bottom_m;
35 char* border_bottom_r;
36
37 int cell_width;
38 int flag_offset;
39 char* init_seq;
40 char* reset_seq;
41 };
42
43 struct minescheme symbols_mono = {
44 .number = {" ", "1", "2", "3", "4", "5", "6", "7", "8"},
45 .field_closed = "░░",
46 .field_flagged = "\033[7m!\033[0m",//⢕⢕",//⡱⢎",//⣏⣹",//▄▀",//▓▓",//██",//▒▒",
47 .field_question = "\033[7m?\033[0m",
48 .mouse_highlight = "▓▓",
49 .mine_normal = "*",
50 .mine_death = "#",
51 .mine_wrongf = "/",
52 .mine_wrongq = "\",
53
54 .border_top_l = "╔═",
55 .border_top_m = "═",
56 .border_top_r = "═╗",
57
58 .border_status_l = "║ ",
59 .border_status_r = " ║",
60
61 .border_spacer_l = "╟─",
62 .border_spacer_m = "─",
63 .border_spacer_r = "─╢",
64
65 .border_field_l = "║ ",
66 .border_field_r = " ║",
67
68 .border_bottom_l = "╚═",
69 .border_bottom_m = "═",
70 .border_bottom_r = "═╝",
71
72 .cell_width = 2,
73 .flag_offset = 4, //length of the escape sequece infront of .field_flagged and .field_question for cursor highlighting
74 };
75
76 struct minescheme symbols_col1 = {
77 .number = {" ", "\033[94m1\033[m", "\033[32m2\033[m", "\033[31m3\033[m", "\033[34m4\033[m", "\033[33m5\033[m", "\033[36m6\033[m", "\033[30m7\033[m", "\033[97m8\033[m"},
78 .field_closed = "░░",
79 .field_flagged = "▒▒",
80 .field_question = "?",
81 .mouse_highlight = "▓▓",
82 .mine_normal = "*",
83 .mine_death = "\033[31m*\033[m",
84 .mine_wrongf = "/",
85 .mine_wrongq = "\",
86
87 .border_top_l = "╔═",
88 .border_top_m = "═",
89 .border_top_r = "═╗",
90
91 .border_status_l = "║ ",
92 .border_status_r = " ║",
93
94 .border_spacer_l = "╟─",
95 .border_spacer_m = "─",
96 .border_spacer_r = "─╢",
97
98 .border_field_l = "║ ",
99 .border_field_r = " ║",
100
101 .border_bottom_l = "╚═",
102 .border_bottom_m = "═",
103 .border_bottom_r = "═╝",
104
105 .cell_width = 2,
106 };
107
108 struct minescheme symbols_doublewidth = {
109 /* vt220 multilingual character set,
110 see http://vt100.net/docs/vt220-rm/table2-4.html */
111 .number = {" ", "\033[1m1\033[0m", "\033[1m2\033[0m", "\033[1m3\033[0m", "\033[1m4\033[0m", "\033[1m5\033[0m", "\033[1m6\033[0m", "\033[1m7\033[0m", "\033[1m8\033[0m"},
112 .field_closed = "\x61",
113 .field_flagged = "\033[1m!\033[0m",
114 .field_question = "\033[1m?\033[0m",
115 .mouse_highlight = "\033[5m@\033[0m",
116 .mine_normal = "\033[1m*\033[0m",
117 .mine_death = "\033[1m#\033[0m",
118 .mine_wrongf = "\033[1m/\033[0m",
119 .mine_wrongq = "\033[1m\\\033[0m",
120
121 .border_top_l = "\033#6\x6c",
122 .border_top_m = "\x71",
123 .border_top_r = "\x6b",
124
125 .border_status_l = "\033#6\x78",
126 .border_status_r = "\x78",
127
128 .border_spacer_l = "\033#6\x74",
129 .border_spacer_m = "\x71",
130 .border_spacer_r = "\x75",
131
132 .border_field_l = "\033#6\x78",
133 .border_field_r = "\x78",
134
135 .border_bottom_l = "\033#6\x6d",
136 .border_bottom_m = "\x71",
137 .border_bottom_r = "\x6a",
138
139 .cell_width = 1,
140 .init_seq = "\033(0", /* enable DEC Special Graphics Character Set */
141 .reset_seq = "\033(B", /* enable DEC Multinational Character Set (TODO: check) */
142 };
143 #endif
Imprint / Impressum