From f95902fdd85f86c10b9c300099c67312fc81f11b Mon Sep 17 00:00:00 2001 From: Hop311 Date: Sat, 16 Sep 2023 16:27:41 +0100 Subject: Scaffolding for `positions.txt` + modifier loading --- src/openvic-simulation/Modifier.hpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/openvic-simulation/Modifier.hpp') diff --git a/src/openvic-simulation/Modifier.hpp b/src/openvic-simulation/Modifier.hpp index eb63788..acdadfe 100644 --- a/src/openvic-simulation/Modifier.hpp +++ b/src/openvic-simulation/Modifier.hpp @@ -25,6 +25,8 @@ namespace OpenVic { }; struct ModifierValue { + friend struct ModifierManager; + using effect_map_t = std::map; private: effect_map_t values; @@ -57,6 +59,7 @@ namespace OpenVic { using icon_t = uint8_t; private: + /* A modifier can have no icon (zero). */ const icon_t icon; Modifier(const std::string_view new_identifier, ModifierValue&& new_values, icon_t new_icon); @@ -92,5 +95,7 @@ namespace OpenVic { bool add_modifier(const std::string_view identifier, ModifierValue&& values, Modifier::icon_t icon); IDENTIFIER_REGISTRY_ACCESSORS(Modifier, modifier) + + NodeTools::node_callback_t expect_modifier_value(NodeTools::callback_t callback) const; }; } -- cgit v1.2.3-56-ga3b1