aboutsummaryrefslogtreecommitdiff
path: root/src/defaults.h
blob: f224da33010848ef60bff83bdee10120ee818303 (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
#ifndef H_MAZE_DEFAULTS
#define H_MAZE_DEFAULTS

#include "config.h"
#include "color.h"
#include <ncurses.h>
#include <stdio.h>

static inline void set_blocks(struct game_blocks *game_blocks)
{
    game_blocks->background = get_block('?', false, get_color_code(COLOR_WHITE, COLOR_BLACK));
    game_blocks->hidden = get_block('?', false, get_color_code(COLOR_WHITE, COLOR_BLACK));
    game_blocks->wall = get_block(' ', false, get_color_code(COLOR_BLACK, COLOR_WHITE));
    game_blocks->road = get_block(' ', false, get_color_code(COLOR_WHITE, COLOR_BLACK));
    game_blocks->path = get_block(0x2022, false, get_color_code(COLOR_YELLOW, COLOR_BLACK));
    game_blocks->solve = get_block(0x2022, false, get_color_code(COLOR_BLUE, COLOR_BLACK));
    game_blocks->player = get_block(0x25CF, false, get_color_code(COLOR_CYAN, COLOR_BLACK));
    game_blocks->start = get_block('S', true, get_color_code(COLOR_GREEN, COLOR_BLACK));
    game_blocks->target = get_block('T', true, get_color_code(COLOR_RED, COLOR_BLACK));
}

#define DEFAULT_BINDINGS                               \
    {                                                  \
        {KEY_UP, "", move_player, MOVE_UP},            \
            {KEY_DOWN, "", move_player, MOVE_DOWN},    \
            {KEY_LEFT, "", move_player, MOVE_LEFT},    \
            {KEY_RIGHT, "", move_player, MOVE_RIGHT},  \
            {'k', "", move_player, MOVE_UP},           \
            {'j', "", move_player, MOVE_DOWN},         \
            {'h', "", move_player, MOVE_LEFT},         \
            {'l', "", move_player, MOVE_RIGHT},        \
            {0, "kUP5", move_maze, MOVE_UP},           \
            {0, "kDN5", move_maze, MOVE_DOWN},         \
            {0, "kLFT5", move_maze, MOVE_LEFT},        \
            {0, "kRIT5", move_maze, MOVE_RIGHT},       \
            {0, "^K", move_maze, MOVE_UP},             \
            {0, "^J", move_maze, MOVE_DOWN},           \
            {0, "^H", move_maze, MOVE_LEFT},           \
            {0, "^L", move_maze, MOVE_RIGHT},          \
            {'0', "", move_maze, MOVE_BEGINNING},      \
            {'p', "", turn_display_switch, DISP_PATH}, \
            {'v', "", turn_visible, 0},                \
            {'q', "", quit, GR_QUIT},                  \
            {'r', "", new_random, 0},                  \
            {'c', "", center, 0},                      \
            {'n', "", help_by_n_move, 1},              \
            {'s', "", solve, 0},                       \
            {':', "", start_command_prompt, ':'},      \
    }

#endif