#include "../../src/Battling/Models/CreatureParty.hpp" #define export extern "C" using namespace CreatureLib::Battling; export CreatureParty* CreatureLib_CreatureParty_ConstructWithSize(size_t size) { return new CreatureParty(size); } export CreatureParty* CreatureLib_CreatureParty_ConstructFromArray(Creature* creatures[], size_t size) { return new CreatureParty(std::vector(creatures, creatures + size)); } export void CreatureLib_CreatureParty_Destruct(const CreatureParty* p) { delete p; } export Creature* CreatureLib_CreatureParty_GetAtIndex(const CreatureParty* p, size_t index) { return p->GetAtIndex(index); } export void CreatureLib_CreatureParty_Switch(CreatureParty* p, size_t a, size_t b) { p->Switch(a, b); } export bool CreatureLib_CreatureParty_HasAvailableCreatures(const CreatureParty* p) { return p->HasAvailableCreatures(); } export size_t CreatureLib_CreatureParty_GetLength(const CreatureParty* p) { return p->GetLength(); } export Creature** CreatureLib_CreatureParty_GetParty(CreatureParty* p) { return p->GetParty().data(); }