Fixes and tweaks for CreatureParty, added C Interface.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
24
CInterface/Battling/CreatureParty.cpp
Normal file
24
CInterface/Battling/CreatureParty.cpp
Normal file
@@ -0,0 +1,24 @@
|
||||
#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<Creature*>(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(); }
|
||||
Reference in New Issue
Block a user