diff --git a/src/Battling/Models/Creature.cpp b/src/Battling/Models/Creature.cpp index 810d86f..9df41cf 100644 --- a/src/Battling/Models/Creature.cpp +++ b/src/Battling/Models/Creature.cpp @@ -185,3 +185,9 @@ void Battling::Creature::SetHeldItem(const std::string& itemName) { } _heldItem = item; } +void Battling::Creature::AddVolatileScript(const std::string& name) { + auto script = this->_library->LoadScript(ScriptCategory::Creature, name); + _volatile.Add(script); +} + +void Battling::Creature::AddVolatileScript(Script* script) { _volatile.Add(script); } diff --git a/src/Battling/Models/Creature.hpp b/src/Battling/Models/Creature.hpp index 8b42f1d..8fd540d 100644 --- a/src/Battling/Models/Creature.hpp +++ b/src/Battling/Models/Creature.hpp @@ -116,6 +116,8 @@ namespace CreatureLib::Battling { void GetActiveScripts(std::vector& scripts) override; void ClearVolatileScripts(); + void AddVolatileScript(const std::string& name); + void AddVolatileScript(Script* script); std::vector& GetAttacks() { return _attacks; }