CreatureLib/CInterface/Battling/BattleLibrary.cpp

28 lines
1.7 KiB
C++
Raw Normal View History

2020-03-04 16:04:44 +00:00
#include "../../src/Battling/Library/BattleLibrary.hpp"
#include "../Core.hpp"
2020-03-04 16:04:44 +00:00
using namespace CreatureLib::Battling;
export uint8_t CreatureLib_BattleLibrary_Construct(const BattleLibrary*& out,
const CreatureLib::Library::DataLibrary* staticLib,
BattleStatCalculator* statCalculator, DamageLibrary* damageLibrary,
ExperienceLibrary* experienceLibrary, ScriptResolver* scriptResolver,
MiscLibrary* miscLibrary) {
Try(out = new BattleLibrary(staticLib, statCalculator, damageLibrary, experienceLibrary, scriptResolver,
miscLibrary);)
2020-03-04 16:04:44 +00:00
}
export void CreatureLib_BattleLibrary_Destruct(const BattleLibrary* p) { delete p; }
#define SIMPLE_GET_FUNC(type, name, returnType) \
export returnType CreatureLib_##type##_##name(const type* p) { return p->name(); }
#define SIMPLE_GET_FUNC_SMART_PTR(type, name, returnType) \
export returnType CreatureLib_##type##_##name(const type* p) { return p->name().operator->(); }
2020-03-04 16:04:44 +00:00
SIMPLE_GET_FUNC_SMART_PTR(BattleLibrary, GetStaticLib, const CreatureLib::Library::DataLibrary*);
SIMPLE_GET_FUNC_SMART_PTR(BattleLibrary, GetStatCalculator, const BattleStatCalculator*);
SIMPLE_GET_FUNC_SMART_PTR(BattleLibrary, GetDamageLibrary, const DamageLibrary*);
SIMPLE_GET_FUNC_SMART_PTR(BattleLibrary, GetMiscLibrary, const MiscLibrary*);
SIMPLE_GET_FUNC_SMART_PTR(BattleLibrary, GetExperienceLibrary, const ExperienceLibrary*);
2020-03-04 16:04:44 +00:00
#undef SIMPLE_GET_FUNC
#undef SIMPLE_GET_FUNC_SMART_PTR