| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #pragma once
- #include "engine/engine.h"
- // Screen size
- #define SCREEN_WIDTH 128
- #define SCREEN_HEIGHT 64
- // World size (3x3)
- #define WORLD_WIDTH 384
- #define WORLD_HEIGHT 192
- // from https://github.com/jamisonderek/flipper-zero-tutorials/blob/main/vgm/apps/air_labyrinth/walls.h
- typedef struct
- {
- bool horizontal;
- int x;
- int y;
- int length;
- } Wall;
- #define WALL(h, y, x, l) \
- (Wall) \
- { \
- h, x * 2, y * 2, l \
- }
- typedef struct
- {
- uint32_t score;
- } GameContext;
- typedef enum
- {
- // system draw objects
- DRAW_DOT, // canvas_draw_dot
- DRAW_LINE, // canvas_draw_line
- DRAW_BOX, // canvas_draw_box
- DRAW_FRAME, // canvas_draw_frame
- DRAW_CIRCLE, // canvas_draw_circle
- DRAW_XBM, // canvas_draw_xbm
- // custom draw objects
- DRAW_ICON_EARTH, // canvas_draw_icon
- DRAW_ICON_HOME, // canvas_draw_icon
- DRAW_ICON_INFO, // canvas_draw_icon
- DRAW_ICON_MAN, // canvas_draw_man
- DRAW_ICON_PLANT, // canvas_draw_icon
- DRAW_ICON_TREE, // canvas_draw_icon
- DRAW_ICON_WOMAN, // canvas_draw_icon
- } FlipWorldDrawObjects;
|