diff options
author | hop311 <hop3114@gmail.com> | 2023-12-02 16:48:08 +0100 |
---|---|---|
committer | hop311 <hop3114@gmail.com> | 2023-12-02 20:14:29 +0100 |
commit | 4a899c1a9e83ab9476b85522751081be434caa35 (patch) | |
tree | f1f6276c91beceecdfd9b09083d1c91ea8b41b60 /src/openvic-simulation/tech/Technology.hpp | |
parent | cd6875d5e0ca5e2545fd0e1647678cd18a6c81c2 (diff) |
Crime+event modifier loading + misc UI backend
Diffstat (limited to 'src/openvic-simulation/tech/Technology.hpp')
-rw-r--r-- | src/openvic-simulation/tech/Technology.hpp | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/openvic-simulation/tech/Technology.hpp b/src/openvic-simulation/tech/Technology.hpp index 0aca1f6..6f50f01 100644 --- a/src/openvic-simulation/tech/Technology.hpp +++ b/src/openvic-simulation/tech/Technology.hpp @@ -11,7 +11,7 @@ namespace OpenVic { friend struct TechnologyManager; private: - TechnologyFolder(std::string_view identifier); + TechnologyFolder(std::string_view new_identifier); public: TechnologyFolder(TechnologyFolder&&) = default; @@ -23,7 +23,7 @@ namespace OpenVic { private: TechnologyFolder const& PROPERTY(folder); - TechnologyArea(std::string_view identifier, TechnologyFolder const& folder); + TechnologyArea(std::string_view new_identifier, TechnologyFolder const& new_folder); public: TechnologyArea(TechnologyArea&&) = default; @@ -31,6 +31,7 @@ namespace OpenVic { struct Technology : Modifier { friend struct TechnologyManager; + using year_t = Date::year_t; using unit_set_t = std::unordered_set<Unit const*>; using building_set_t = std::unordered_set<BuildingType const*>; @@ -46,8 +47,12 @@ namespace OpenVic { //TODO: implement rules/modifiers and ai_chance - Technology(std::string_view identifier, TechnologyArea const& area, year_t year, fixed_point_t cost, bool unciv_military, uint8_t unit, unit_set_t activated_units, building_set_t activated_buildings, ModifierValue&& values); - + Technology( + std::string_view new_identifier, TechnologyArea const& new_area, year_t new_year, fixed_point_t new_cost, + bool new_unciv_military, uint8_t new_unit, unit_set_t&& new_activated_units, + building_set_t&& new_activated_buildings, ModifierValue&& new_values + ); + public: Technology(Technology&&) = default; }; @@ -74,15 +79,21 @@ namespace OpenVic { bool add_technology_area(std::string_view identifier, TechnologyFolder const* folder); IDENTIFIER_REGISTRY_ACCESSORS(technology_area) - bool add_technology(std::string_view identifier, TechnologyArea const* area, Technology::year_t year, fixed_point_t cost, bool unciv_military, uint8_t unit, Technology::unit_set_t activated_units, Technology::building_set_t activated_buildings, ModifierValue&& values); + bool add_technology( + std::string_view identifier, TechnologyArea const* area, Technology::year_t year, fixed_point_t cost, + bool unciv_military, uint8_t unit, Technology::unit_set_t&& activated_units, + Technology::building_set_t&& activated_buildings, ModifierValue&& values); IDENTIFIER_REGISTRY_ACCESSORS_CUSTOM_PLURAL(technology, technologies) - bool add_technology_school(std::string_view identifier, ModifierValue&& values); //, Modifier::icon_t icon); + bool add_technology_school(std::string_view identifier, ModifierValue&& values); IDENTIFIER_REGISTRY_ACCESSORS(technology_school); bool load_technology_file_areas(ast::NodeCPtr root); // common/technology.txt bool load_technology_file_schools(ModifierManager const& modifier_manager, ast::NodeCPtr root); // also common/technology.txt - bool load_technologies_file(ModifierManager const& modifier_manager, UnitManager const& unit_manager, BuildingManager const& building_manager, ast::NodeCPtr root); // technologies/*.txt + bool load_technologies_file( + ModifierManager const& modifier_manager, UnitManager const& unit_manager, BuildingManager const& building_manager, + ast::NodeCPtr root + ); // technologies/*.txt bool generate_modifiers(ModifierManager& modifier_manager); }; }
\ No newline at end of file |