From 89c93f98b865c20cd3c3486a9b91323565e759fc Mon Sep 17 00:00:00 2001 From: hop311 Date: Tue, 12 Dec 2023 00:34:53 +0000 Subject: Province pop history + country government flag override refactors --- src/openvic-simulation/pop/Pop.hpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/openvic-simulation/pop/Pop.hpp') diff --git a/src/openvic-simulation/pop/Pop.hpp b/src/openvic-simulation/pop/Pop.hpp index 12daaf6..6302a58 100644 --- a/src/openvic-simulation/pop/Pop.hpp +++ b/src/openvic-simulation/pop/Pop.hpp @@ -9,6 +9,8 @@ namespace OpenVic { struct PopManager; struct PopType; + struct RebelType; + struct RebelManager; /* REQUIREMENTS: * POP-18, POP-19, POP-20, POP-21, POP-34, POP-35, POP-36, POP-37 @@ -27,9 +29,17 @@ namespace OpenVic { pop_size_t PROPERTY(num_demoted); pop_size_t PROPERTY(num_migrated); + fixed_point_t PROPERTY(militancy); + fixed_point_t PROPERTY(consciousness); + RebelType const* PROPERTY(rebel_type); + + Pop( + PopType const& new_type, Culture const& new_culture, Religion const& new_religion, pop_size_t new_size, + fixed_point_t new_militancy, fixed_point_t new_consciousness, RebelType const* new_rebel_type + ); + public: - Pop(PopType const& new_type, Culture const& new_culture, Religion const& new_religion, pop_size_t new_size); - Pop(Pop const&) = delete; + Pop(Pop const&) = default; Pop(Pop&&) = default; Pop& operator=(Pop const&) = delete; Pop& operator=(Pop&&) = delete; @@ -110,5 +120,9 @@ namespace OpenVic { bool load_pop_type_file( std::string_view filestem, UnitManager const& unit_manager, GoodManager const& good_manager, ast::NodeCPtr root ); + bool load_pop_into_vector( + RebelManager const& rebel_manager, std::vector& vec, PopType const& type, ast::NodeCPtr pop_node, + bool *non_integer_size + ) const; }; } -- cgit v1.2.3-56-ga3b1