power_play/src/pp/pp_shared.cgh
2026-02-05 17:32:09 -06:00

64 lines
1.4 KiB
Plaintext

#define P_WorldPitch 64.0
#define P_CellsPerMeter 32.0
#define P_CellsPerSqMeter (P_CellsPerMeter * P_CellsPerMeter)
#define P_TilesPerMeter 2.0
#define P_TilesPerSqMeter (V_TilesPerMeter * V_TilesPerMeter)
////////////////////////////////////////////////////////////
//~ Tile types
#define P_TilesPitch (P_WorldPitch * P_TilesPerMeter)
#define P_TilesCount (P_TilesPitch * P_TilesPitch)
#define P_TilesXList(X) \
X(Empty) \
X(Wall) \
X(Tile) \
X(Carpet) \
/* -------------------- */
//- Tiles kinds enum
Enum(P_TileKind)
{
#define X(name, ...) P_TileKind_##name,
P_TilesXList(X)
#undef X
P_TileKind_COUNT
};
////////////////////////////////////////////////////////////
//~ Prefab types
#define P_PrefabsXList(X) \
X(Guy) \
X(Dummy) \
X(SpawnPoint) \
/* --------------------- */
//- Prefab kinds enum
Enum(P_PrefabKind)
{
#define X(name, ...) P_PrefabKind_##name,
P_PrefabsXList(X)
#undef X
P_PrefabKind_COUNT
};
////////////////////////////////////////////////////////////
//~ Tile helpers
i32 P_TileIdxFromTilePos(Vec2 p);
#if IsLanguageC
String P_TileNameFromKind(P_TileKind kind);
#endif
////////////////////////////////////////////////////////////
//~ Prefab helpers
#if IsLanguageC
String P_PrefabNameFromKind(P_PrefabKind kind);
#endif