diff options
Diffstat (limited to 'game/gst.h')
-rw-r--r-- | game/gst.h | 31 |
1 files changed, 22 insertions, 9 deletions
@@ -46,20 +46,32 @@ class BattleResult { float atk_hp, def_hp; }; -class Gst { - private: std::default_random_engine engine = std::default_random_engine{}; +class Inv { public: - Gst(int sx, int sy) : ground(sx, sy) { } + Inv () {} std::vector<Tech> techs; std::vector<Ability> abilities; std::vector<EntityInfo> infos; std::vector<Tile> tiles; - std::vector<Entity> entities; Ground ground; + private: + std::default_random_engine engine = std::default_random_engine{}; +} + +class Gst { + public: + Gst() { } + + Inv *inv; + + std::vector<Entity> entities; std::vector<Player> players; + int turn { 0 }; + int day { 0 }; + Player& get_player (int id); Tech* get_tech (int id); EntityInfo* get_info (std::string name); @@ -76,11 +88,15 @@ class Gst { float get_damage (Entity &atk, Entity &def, float atk_hp); bool get_first_strike (Entity &atk, Entity &def); BattleResult battle_res (Entity &atk, Entity &def); - void battle (Entity &atk, Entity &def); void clear_dead(); int get_range(Entity &ent); - std::vector<int> get_possible_trains (Entity &ent); + void battle (Entity &atk, Entity &def); + + void heal (Entity &atk, Entity &def); + void convert (Entity &atk, Entity &def); + + std::vector<int> get_possible_trains (Entity &ent); std::vector<int> get_possible_builds (Entity &ent); bool check_req_build (Entity &ent, EntityInfo *info); @@ -88,9 +104,6 @@ class Gst { bool check_req_level (Player &player); bool check_obstructed (Entity &ent); - int turn { 0 }; - int day { 0 }; - void end_day (); void level_upgrade (Player &player); |