CreatureLib/CInterface/Battling/BattleParty.cpp

22 lines
1.2 KiB
C++
Raw Normal View History

2020-03-08 14:19:19 +00:00
#include "../../src/Battling/Models/BattleParty.hpp"
#include "Core.hpp"
2020-03-08 14:19:19 +00:00
using namespace CreatureLib::Battling;
// Note that creatureIndices should be twice the size of numberOfIndices, and have index of side, index of creature on
// side, one after the other.
export uint8_t CreatureLib_BattleParty_Construct(BattleParty*& out, CreatureParty* p, uint8_t creatureIndices[],
size_t numberOfIndices) {
2020-05-26 16:31:06 +00:00
Try(ArbUt::List<CreatureIndex> indices(numberOfIndices); for (size_t i = 0; i < numberOfIndices; i++) {
indices.Append(CreatureIndex(creatureIndices[i * 2], creatureIndices[i * 2 + 1]));
2020-05-26 16:31:06 +00:00
} out = new BattleParty(p, indices);)
2020-03-08 14:19:19 +00:00
}
export void CreatureLib_BattleParty_Destruct(const BattleParty* p) { delete p; }
BORROWED_GET_FUNC(BattleParty, GetParty, CreatureParty*);
export uint8_t CreatureLib_BattleParty_IsResponsibleForIndex(bool& out, const BattleParty* p, uint8_t side,
uint8_t creature) {
Try(out = p->IsResponsibleForIndex(side, creature);)
2020-03-08 14:19:19 +00:00
}
export bool CreatureLib_BattleParty_HasCreaturesNotInField(const BattleParty* p) { return p->HasCreaturesNotInField(); }