Rework ScriptIterator to jump to first value on reset.
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
2020-06-05 18:06:45 +02:00
parent 9e7607338f
commit fddf2cabab
5 changed files with 51 additions and 37 deletions

View File

@@ -21,10 +21,17 @@ namespace CreatureLib::Battling {
static inline ScriptWrapper FromScript(std::unique_ptr<Script>* s) { return ScriptWrapper(s, false); }
static inline ScriptWrapper FromSet(ScriptSet* s) { return ScriptWrapper(s, true); }
bool IsSet() const { return _isSet; }
inline bool IsSet() const noexcept { return _isSet; }
inline const std::unique_ptr<Script>* GetScript() const { return _script; }
inline const ScriptSet* GetScriptSet() const { return _scriptSet; }
inline const std::unique_ptr<Script>* GetScript() const noexcept { return _script; }
inline const ScriptSet* GetScriptSet() const noexcept { return _scriptSet; }
inline bool HasValue() const noexcept {
if (_isSet)
return _scriptSet->Count() > 0;
else
return *_script != nullptr;
}
};
}