You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
594 B
43 lines
594 B
#pragma once
|
|
#include "dinkyecs.hpp"
|
|
#include "map.hpp"
|
|
#include <deque>
|
|
|
|
namespace Components {
|
|
struct Player {
|
|
DinkyECS::Entity entity;
|
|
};
|
|
|
|
struct Position {
|
|
Point location;
|
|
};
|
|
|
|
struct Motion {
|
|
int dx;
|
|
int dy;
|
|
};
|
|
|
|
struct Combat {
|
|
int hp;
|
|
int damage;
|
|
};
|
|
|
|
struct Treasure {
|
|
int amount;
|
|
};
|
|
|
|
struct Tile {
|
|
std::string chr = "!";
|
|
};
|
|
|
|
struct ActionLog {
|
|
std::deque<std::string> messages;
|
|
|
|
void log(std::string msg) {
|
|
messages.push_front(msg);
|
|
if(messages.size() > 20) {
|
|
messages.pop_back();
|
|
}
|
|
}
|
|
};
|
|
}
|
|
|