36 lines
784 B
Plaintext
36 lines
784 B
Plaintext
////////////////////////////////////////////////////////////
|
|
//~ Tile types
|
|
|
|
#define S_WorldPitch 64.0
|
|
|
|
#define S_TilesPerMeter 2.0
|
|
#define S_TilesPerSqMeter (V_TilesPerMeter * V_TilesPerMeter)
|
|
|
|
#define S_TilesPitch (S_WorldPitch * S_TilesPerMeter)
|
|
#define S_TilesCount (S_TilesPitch * S_TilesPitch)
|
|
|
|
#define S_TilesXMacro(X) \
|
|
X(Empty) \
|
|
X(Tile) \
|
|
X(Carpet) \
|
|
X(Wall) \
|
|
/* -------------------- */
|
|
|
|
//- Tiles kinds enum
|
|
Enum(S_TileKind)
|
|
{
|
|
#define X(name, ...) S_TileKind_##name,
|
|
S_TilesXMacro(X)
|
|
#undef X
|
|
S_TileKind_COUNT
|
|
};
|
|
|
|
////////////////////////////////////////////////////////////
|
|
//~ Tile helpers
|
|
|
|
i32 S_TileIdxFromTilePos(Vec2 p);
|
|
|
|
#if IsLanguageC
|
|
String S_TileNameFromKind(S_TileKind kind);
|
|
#endif
|