aboutsummaryrefslogtreecommitdiff
path: root/src/openvic-simulation/misc/Event.cpp
diff options
context:
space:
mode:
author Hop311 <Hop3114@gmail.com>2024-10-31 21:20:11 +0100
committer GitHub <noreply@github.com>2024-10-31 21:20:11 +0100
commit968c60580997d26035496cc675138e580354332f (patch)
treea0340ae5e92e219c5e0f5ddc825e28465f22a29e /src/openvic-simulation/misc/Event.cpp
parentc6f7c8047abbe0a91b2a88365eee2259d8a91a65 (diff)
parent84deeffe04d730064e89b4ceaf508f3f30113ea9 (diff)
Merge pull request #218 from OpenVicProject/condition-scripts-prep-work
Condition scripts prep work
Diffstat (limited to 'src/openvic-simulation/misc/Event.cpp')
-rw-r--r--src/openvic-simulation/misc/Event.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/openvic-simulation/misc/Event.cpp b/src/openvic-simulation/misc/Event.cpp
index 5bfc929..64b1f64 100644
--- a/src/openvic-simulation/misc/Event.cpp
+++ b/src/openvic-simulation/misc/Event.cpp
@@ -119,15 +119,17 @@ bool EventManager::load_event_file(IssueManager const& issue_manager, ast::NodeC
return expect_dictionary_reserve_length(
events,
[this, &issue_manager](std::string_view key, ast::NodeCPtr value) -> bool {
+ using enum scope_type_t;
+
Event::event_type_t type;
- scope_t initial_scope;
+ scope_type_t initial_scope;
if (key == "country_event") {
type = Event::event_type_t::COUNTRY;
- initial_scope = scope_t::COUNTRY;
+ initial_scope = COUNTRY;
} else if (key == "province_event") {
type = Event::event_type_t::PROVINCE;
- initial_scope = scope_t::PROVINCE;
+ initial_scope = PROVINCE;
} else {
Logger::error("Invalid event type: ", key);
return false;
@@ -138,8 +140,8 @@ bool EventManager::load_event_file(IssueManager const& issue_manager, ast::NodeC
bool triggered_only = false, major = false, fire_only_once = false, allows_multiple_instances = false,
news = false, election = false;
IssueGroup const* election_issue_group = nullptr;
- ConditionScript trigger { initial_scope, initial_scope, scope_t::NO_SCOPE };
- ConditionalWeight mean_time_to_happen { initial_scope, initial_scope, scope_t::NO_SCOPE };
+ ConditionScript trigger { initial_scope, initial_scope, NO_SCOPE };
+ ConditionalWeight mean_time_to_happen { initial_scope, initial_scope, NO_SCOPE };
EffectScript immediate;
std::vector<Event::EventOption> options;
@@ -166,7 +168,7 @@ bool EventManager::load_event_file(IssueManager const& issue_manager, ast::NodeC
ConditionalWeight ai_chance {
initial_scope,
initial_scope,
- scope_t::COUNTRY | scope_t::PROVINCE
+ COUNTRY | PROVINCE // TODO - decide which to use?
};
bool ret = expect_dictionary_keys_and_default(
@@ -181,7 +183,7 @@ bool EventManager::load_event_file(IssueManager const& issue_manager, ast::NodeC
return ret;
},
"trigger", ZERO_OR_ONE, trigger.expect_script(),
- "mean_time_to_happen", ZERO_OR_ONE, mean_time_to_happen.expect_conditional_weight(ConditionalWeight::MONTHS),
+ "mean_time_to_happen", ZERO_OR_ONE, mean_time_to_happen.expect_conditional_weight(ConditionalWeight::TIME),
"immediate", ZERO_OR_MORE, immediate.expect_script()
)(value);
ret &= register_event(