Implements functionality for loading scripts.
This commit is contained in:
@@ -3,9 +3,10 @@
|
||||
CreatureLib::Battling::BattleLibrary::BattleLibrary(CreatureLib::Library::DataLibrary *staticLib,
|
||||
CreatureLib::Battling::BattleStatCalculator *statCalculator,
|
||||
DamageLibrary* damageLibrary,
|
||||
CriticalLibrary* criticalLibrary)
|
||||
CriticalLibrary* criticalLibrary, ScriptResolver* scriptResolver)
|
||||
: _staticLib(staticLib), _statCalculator(statCalculator),
|
||||
_damageLibrary(damageLibrary), _criticalLibrary(criticalLibrary)
|
||||
_damageLibrary(damageLibrary), _criticalLibrary(criticalLibrary),
|
||||
_scriptResolver(scriptResolver)
|
||||
{}
|
||||
|
||||
CreatureLib::Battling::BattleLibrary::~BattleLibrary() {
|
||||
@@ -47,3 +48,9 @@ const CreatureLib::Battling::CriticalLibrary *CreatureLib::Battling::BattleLibra
|
||||
return _criticalLibrary;
|
||||
}
|
||||
|
||||
CreatureLib::Battling::Script *
|
||||
CreatureLib::Battling::BattleLibrary::LoadScript(CreatureLib::Battling::ScriptResolver::ScriptCategory category,
|
||||
const std::string &scriptName) {
|
||||
return _scriptResolver->LoadScript(category, scriptName);
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "../../Library/DataLibrary.hpp"
|
||||
#include "DamageLibrary.hpp"
|
||||
#include "CriticalLibrary.hpp"
|
||||
#include "../ScriptHandling/ScriptResolver.hpp"
|
||||
|
||||
namespace CreatureLib::Battling {
|
||||
class BattleLibrary {
|
||||
@@ -12,20 +13,23 @@ namespace CreatureLib::Battling {
|
||||
BattleStatCalculator* _statCalculator;
|
||||
DamageLibrary* _damageLibrary;
|
||||
CriticalLibrary* _criticalLibrary;
|
||||
ScriptResolver* _scriptResolver;
|
||||
public:
|
||||
BattleLibrary(Library::DataLibrary* staticLib, BattleStatCalculator* statCalculator, DamageLibrary* damageLibrary,
|
||||
CriticalLibrary* criticalLibrary);
|
||||
CriticalLibrary* criticalLibrary, ScriptResolver* scriptResolver);
|
||||
~BattleLibrary();
|
||||
|
||||
const Library::LibrarySettings& GetSettings() const;
|
||||
const Library::SpeciesLibrary* GetSpeciesLibrary() const;
|
||||
const Library::ItemLibrary* GetItemLibrary() const;
|
||||
const Library::AttackLibrary* GetAttackLibrary() const;
|
||||
const Library::TypeLibrary* GetTypeLibrary() const;
|
||||
[[nodiscard]] const Library::LibrarySettings& GetSettings() const;
|
||||
[[nodiscard]] const Library::SpeciesLibrary* GetSpeciesLibrary() const;
|
||||
[[nodiscard]] const Library::ItemLibrary* GetItemLibrary() const;
|
||||
[[nodiscard]] const Library::AttackLibrary* GetAttackLibrary() const;
|
||||
[[nodiscard]] const Library::TypeLibrary* GetTypeLibrary() const;
|
||||
|
||||
const BattleStatCalculator* GetStatCalculator() const;
|
||||
const DamageLibrary* GetDamageLibrary() const;
|
||||
const CriticalLibrary* GetCriticalLibrary() const;
|
||||
[[nodiscard]] const BattleStatCalculator* GetStatCalculator() const;
|
||||
[[nodiscard]] const DamageLibrary* GetDamageLibrary() const;
|
||||
[[nodiscard]] const CriticalLibrary* GetCriticalLibrary() const;
|
||||
|
||||
[[nodiscard]] Script* LoadScript(ScriptResolver::ScriptCategory category, const std::string& scriptName);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user