Implements functionality for loading scripts.

This commit is contained in:
2019-11-18 08:29:17 +01:00
parent 86f8a1e37b
commit 4d796204f8
5 changed files with 55 additions and 12 deletions

View File

@@ -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);
};
}