pokemon/menu.hpp

32 lines
678 B
C++

#include "coordinates.hpp"
struct menu_item_t {
const uint8_t * label;
};
struct menu_t {
screen_cell_t top_left; // in cells
screen_cell_t bottom_right; // in cells
uint8_t width; // in menu items
uint8_t height; // in menu items
uint8_t h_advance; // in cells
uint8_t v_advance; // in cells
const menu_item_t * items;
};
struct cursor_t {
uint16_t x; // in menu items
uint16_t y; // in menu items
};
extern const menu_t start_menu;
extern const menu_t fight_menu;
void draw_menu(const uint32_t base_pattern,
const menu_t& menu);
void draw_menu_cursor(const uint32_t base_pattern,
const menu_t& menu,
const cursor_t& cursor);