roguish/components.hpp

46 lines
797 B
C++

#pragma once
#include "dinkyecs.hpp"
#include "map.hpp"
#include "combat.hpp"
#include <deque>
#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 Treasure {
int amount;
DEFINE_SERIALIZABLE(Treasure, amount);
};
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;
};
struct EnemyConfig {
int HEARING_DISTANCE;
};
}