CreatureLib/CInterface/Library/LearnableAttacks.cpp

20 lines
865 B
C++

#include "../../src/Library/CreatureData/LearnableAttacks.hpp"
#include "Core.hpp"
using namespace CreatureLib::Library;
export uint8_t CreatureLib_LearnableAttacks_Construct(LearnableAttacks*& out, size_t levelAttackCapacity) {
Try(out = new LearnableAttacks(levelAttackCapacity);)
};
export void CreatureLib_LearnableAttacks_Destruct(LearnableAttacks* p) { delete p; }
export void CreatureLib_LearnableAttacks_AddLevelAttack(LearnableAttacks* p, uint8_t level, const AttackData* attack) {
p->AddLevelAttack(level, attack);
}
export const AttackData* const* CreatureLib_LearnableAttacks_GetAttacksForLevel(LearnableAttacks* p, uint8_t level) {
return p->GetAttacksForLevel(level).RawData();
}
export size_t CreatureLib_LearnableAttacks_GetAttacksForLevelCount(LearnableAttacks* p, uint8_t level) {
return p->GetAttacksForLevel(level).Count();
}