2020-03-08 12:53:58 +00:00
|
|
|
#include "../../src/Battling/Models/CreatureParty.hpp"
|
2020-07-31 08:51:03 +00:00
|
|
|
#include "../Core.hpp"
|
2020-03-08 12:53:58 +00:00
|
|
|
using namespace CreatureLib::Battling;
|
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func CreatureParty* CreatureLib_CreatureParty_ConstructWithSize(size_t size) { return new CreatureParty(size); }
|
|
|
|
export_func CreatureParty* CreatureLib_CreatureParty_ConstructFromArray(Creature* creatures[], size_t size) {
|
2020-05-26 16:31:06 +00:00
|
|
|
return new CreatureParty(ArbUt::List<Creature*>(creatures, creatures + size));
|
2020-03-08 12:53:58 +00:00
|
|
|
}
|
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func void CreatureLib_CreatureParty_Destruct(const CreatureParty* p) { delete p; }
|
2020-03-08 12:53:58 +00:00
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func u8 CreatureLib_CreatureParty_GetAtIndex(Creature*& out, const CreatureParty* p, size_t index) {
|
2020-12-12 11:22:48 +00:00
|
|
|
Try(out = p->GetAtIndex(index).GetValue();)
|
2020-03-08 12:53:58 +00:00
|
|
|
}
|
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func u8 CreatureLib_CreatureParty_Switch(CreatureParty* p, size_t a, size_t b) { Try(p->Switch(a, b);) }
|
|
|
|
export_func u8 CreatureLib_CreatureParty_PackParty(CreatureParty* p) { Try(p->PackParty();) }
|
2020-03-08 12:53:58 +00:00
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func u8 CreatureLib_CreatureParty_SwapInto(Creature*& out, CreatureParty* p, size_t index, Creature* creature) {
|
2020-08-24 18:37:22 +00:00
|
|
|
Try(out = p->SwapInto(index, creature);)
|
2020-07-25 12:35:13 +00:00
|
|
|
}
|
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func bool CreatureLib_CreatureParty_HasAvailableCreatures(const CreatureParty* p) {
|
2020-03-08 12:53:58 +00:00
|
|
|
return p->HasAvailableCreatures();
|
|
|
|
}
|
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func size_t CreatureLib_CreatureParty_GetLength(const CreatureParty* p) { return p->GetLength(); }
|
2020-03-08 12:53:58 +00:00
|
|
|
|
2022-04-02 10:33:26 +00:00
|
|
|
export_func Creature* const* CreatureLib_CreatureParty_GetParty(CreatureParty* p) { return p->GetParty().RawData(); }
|