#pragma once #include "dinkyecs.hpp" #include "map.hpp" #include "combat.hpp" #include #include "tser.hpp" namespace components { struct Player { DinkyECS::Entity entity; DEFINE_SERIALIZABLE(Player, entity); }; struct Position { Point location; DEFINE_SERIALIZABLE(Position, location); }; struct Motion { int dx; int dy; DEFINE_SERIALIZABLE(Motion, dx, dy); }; struct Loot { int amount; DEFINE_SERIALIZABLE(Loot, amount); }; struct Inventory { int gold; DEFINE_SERIALIZABLE(Inventory, gold); }; struct Tile { std::string chr; DEFINE_SERIALIZABLE(Tile, chr); }; struct MapConfig { std::string WALL_TILE; std::string FLOOR_TILE; std::string PLAYER_TILE; std::string ENEMY_TILE; std::string BG_TILE; std::string WATER_TILE; }; struct EnemyConfig { int HEARING_DISTANCE; }; struct Debug { bool PATHS=false; bool LIGHT=false; }; }