Cleanup of ScriptAggregator class.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2020-04-23 23:23:58 +02:00
parent 3a11bba913
commit dd668f2b1c
11 changed files with 89 additions and 75 deletions

View File

@@ -8,7 +8,8 @@
namespace CreatureLib::Battling {
class ScriptSource {
bool _areScriptsInitialized = false;
ScriptAggregator _scripts;
List<ScriptWrapper> _scripts;
ScriptAggregator _scriptsIterator;
protected:
virtual void GetActiveScripts(Arbutils::Collections::List<ScriptWrapper>& scripts) = 0;
@@ -17,12 +18,11 @@ namespace CreatureLib::Battling {
public:
const ScriptAggregator& GetScriptIterator() {
if (!_areScriptsInitialized) {
List<ScriptWrapper> scripts;
GetActiveScripts(scripts);
_scripts = ScriptAggregator(scripts);
GetActiveScripts(_scripts);
_scriptsIterator = ScriptAggregator(_scripts);
_areScriptsInitialized = true;
}
return _scripts;
return _scriptsIterator;
}
};
}