72 lines
1.5 KiB
C
72 lines
1.5 KiB
C
#pragma once
|
|
|
|
#include "misc_utils.h"
|
|
|
|
typedef enum {
|
|
tile_empty = 0,
|
|
tile_apple = 1,
|
|
tile_wall = 2,
|
|
tile_wall_lr = 3,
|
|
tile_wall_l = 4,
|
|
tile_wall_r = 5,
|
|
tile_wall_lrt = 6,
|
|
tile_wall_lt = 7,
|
|
tile_wall_rt = 8,
|
|
tile_wall_lrb = 9,
|
|
tile_wall_lb = 10,
|
|
tile_wall_rb = 11,
|
|
tile_wall_lrtb = 12,
|
|
tile_wall_ltb = 13,
|
|
tile_wall_rtb = 14,
|
|
tile_wall_t = 15,
|
|
tile_wall_b = 16,
|
|
tile_wall_tb = 17,
|
|
|
|
tile_snake_l = 18,
|
|
tile_snake_r = 19,
|
|
tile_snake_t = 20,
|
|
tile_snake_b = 21,
|
|
tile_snake_bl = 22,
|
|
tile_snake_br = 23,
|
|
tile_snake_lb = 24,
|
|
tile_snake_rb = 25,
|
|
tile_snake_tl = 26,
|
|
tile_snake_tr = 27,
|
|
tile_snake_lt = 28,
|
|
tile_snake_rt = 29,
|
|
|
|
tile_pupa_m2_l = 30,
|
|
tile_pupa_m2_r = 31,
|
|
tile_pupa_m1_l = 32,
|
|
tile_pupa_m1_r = 33,
|
|
tile_pupa_0_l = 34,
|
|
tile_pupa_0_r = 35,
|
|
tile_pupa_p1_l = 36,
|
|
tile_pupa_p1_r = 37,
|
|
tile_pupa_p2_l = 38,
|
|
tile_pupa_p2_r = 39,
|
|
tile_pupa_m2_t = 40,
|
|
tile_pupa_m1_t = 41,
|
|
tile_pupa_0_t = 42,
|
|
tile_pupa_p1_t = 43,
|
|
tile_pupa_p2_t = 44,
|
|
tile_pupa_m2_b = 45,
|
|
tile_pupa_m1_b = 46,
|
|
tile_pupa_0_b = 47,
|
|
tile_pupa_p1_b = 48,
|
|
tile_pupa_p2_b = 49,
|
|
} tile_t;
|
|
|
|
#define WORLD_WIDTH 16
|
|
#define WORLD_HEIGHT 10
|
|
|
|
typedef struct {
|
|
const char *name;
|
|
tile_t map[WORLD_WIDTH][WORLD_HEIGHT];
|
|
} MapConfig;
|
|
|
|
#define PLAYABLE_MAPS_COUNT 8
|
|
|
|
typedef struct {
|
|
MapConfig maps[PLAYABLE_MAPS_COUNT];
|
|
} MapList; |