#include "../../src/Battling/Library/DamageLibrary.hpp" #include "../Core.hpp" using namespace CreatureLib::Battling; export const DamageLibrary* CreatureLib_DamageLibrary_Construct() { return new DamageLibrary(); } export void CreatureLib_DamageLibrary_Destruct(const DamageLibrary* p) { delete p; } export uint8_t CreatureLib_DamageLibrary_GetDamage(uint32_t& out, const DamageLibrary* p, ExecutingAttack* attack, Creature* target, uint8_t hitIndex, ExecutingAttack::HitData* hitData) { Try(out = p->GetDamage(attack, target, hitIndex, *hitData);) } export uint8_t CreatureLib_DamageLibrary_GetBasePower(uint8_t& out, const DamageLibrary* p, ExecutingAttack* attack, Creature* target, uint8_t hitIndex, ExecutingAttack::HitData* hitData) { Try(out = p->GetBasePower(attack, target, hitIndex, *hitData);) } export uint8_t CreatureLib_DamageLibrary_GetStatModifier(float& out, const DamageLibrary* p, ExecutingAttack* attack, Creature* target, uint8_t hitIndex, ExecutingAttack::HitData* hitData) { Try(out = p->GetStatModifier(attack, target, hitIndex, *hitData);) } export uint8_t CreatureLib_DamageLibrary_GetDamageModifier(float& out, const DamageLibrary* p, ExecutingAttack* attack, Creature* target, uint8_t hitIndex, ExecutingAttack::HitData* hitData) { Try(out = p->GetDamageModifier(attack, target, hitIndex, *hitData);) }