CreatureLib/src/Battling/Library/BattleLibrary.cpp

27 lines
1.3 KiB
C++
Raw Normal View History

2019-10-17 12:33:25 +00:00
#include "BattleLibrary.hpp"
using namespace CreatureLib::Battling;
BattleLibrary::BattleLibrary(const Library::DataLibrary* staticLib,
std::unique_ptr<BattleStatCalculator> statCalculator,
std::unique_ptr<DamageLibrary> damageLibrary,
std::unique_ptr<ExperienceLibrary> experienceLibrary,
std::unique_ptr<ScriptResolver> scriptResolver, std::unique_ptr<MiscLibrary> miscLibrary)
: _staticLib(staticLib), _statCalculator(std::move(statCalculator)), _damageLibrary(std::move(damageLibrary)),
_experienceLibrary(std::move(experienceLibrary)), _scriptResolver(std::move(scriptResolver)),
_miscLibrary(std::move(miscLibrary)) {}
BattleLibrary::~BattleLibrary() { delete _staticLib; }
const std::unique_ptr<BattleStatCalculator>& BattleLibrary::GetStatCalculator() const noexcept {
return _statCalculator;
}
2019-11-05 13:31:54 +00:00
const std::unique_ptr<DamageLibrary>& BattleLibrary::GetDamageLibrary() const noexcept { return _damageLibrary; }
2019-11-05 13:31:54 +00:00
const std::unique_ptr<MiscLibrary>& BattleLibrary::GetMiscLibrary() const noexcept { return _miscLibrary; }
Script* BattleLibrary::LoadScript(ScriptCategory category, const ConstString& scriptName) const {
return _scriptResolver->LoadScript(category, scriptName);
}