feat: add Pocket Dungeon game prototype
Main / Build (BookPlayer) (push) Has been cancelled
Main / Build (Brainfuck) (push) Has been cancelled
Main / Build (Breakout) (push) Has been cancelled
Main / Build (Calculator) (push) Has been cancelled
Main / Build (Diceware) (push) Has been cancelled
Main / Build (EpubReader) (push) Has been cancelled
Main / Build (GPIO) (push) Has been cancelled
Main / Build (GraphicsDemo) (push) Has been cancelled
Main / Build (HelloWorld) (push) Has been cancelled
Main / Build (M5UnitTest) (push) Has been cancelled
Main / Build (Magic8Ball) (push) Has been cancelled
Main / Build (MediaKeys) (push) Has been cancelled
Main / Build (MystifyDemo) (push) Has been cancelled
Main / Build (SerialConsole) (push) Has been cancelled
Main / Build (Snake) (push) Has been cancelled
Main / Build (TamaTac) (push) Has been cancelled
Main / Build (TodoList) (push) Has been cancelled
Main / Build (TwoEleven) (push) Has been cancelled
Main / Bundle (push) Has been cancelled

This commit is contained in:
aeroreyna
2026-07-16 22:31:55 -04:00
parent 214287193e
commit d976595879
23 changed files with 862 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
#pragma once
#include <lvgl.h>
#include <cstdint>
namespace GameKit {
struct GridPos {
int16_t x = 0;
int16_t y = 0;
};
inline bool operator==(GridPos a, GridPos b) { return a.x == b.x && a.y == b.y; }
inline bool operator!=(GridPos a, GridPos b) { return !(a == b); }
struct GridSpec {
uint8_t cols = 0;
uint8_t rows = 0;
uint16_t cellPx = 0;
uint16_t originX = 0;
uint16_t originY = 0;
};
lv_point_t gridToPx(const GridSpec& grid, GridPos pos);
bool gridContains(const GridSpec& grid, GridPos pos);
} // namespace GameKit