CreatureLib/CInterface/Battling/EventData.cpp

53 lines
2.1 KiB
C++

#include "../../src/Battling/EventHooks/EventDataClasses.hpp"
#include "../Core.hpp"
using namespace CreatureLib::Battling;
DESTRUCTOR(EventData);
SIMPLE_GET_FUNC(EventData, GetKind, EventDataKind);
BORROWED_GET_FUNC(DamageEvent, GetCreature, Creature*);
SIMPLE_GET_FUNC(DamageEvent, GetDamageSource, DamageSource);
SIMPLE_GET_FUNC(DamageEvent, GetOriginalHealth, uint32_t);
SIMPLE_GET_FUNC(DamageEvent, GetNewHealth, uint32_t);
DESTRUCTOR(DamageEvent);
BORROWED_GET_FUNC(HealEvent, GetCreature, Creature*);
SIMPLE_GET_FUNC(HealEvent, GetOriginalHealth, uint32_t);
SIMPLE_GET_FUNC(HealEvent, GetNewHealth, uint32_t);
DESTRUCTOR(HealEvent);
BORROWED_GET_FUNC(FaintEvent, GetCreature, Creature*);
DESTRUCTOR(FaintEvent);
BORROWED_GET_FUNC(SwitchEvent, GetNewCreature, Creature*);
export uint8_t CreatureLib_SwitchEvent_GetSide(const SwitchEvent* p) { return p->GetIndex().GetSideIndex(); }
export uint8_t CreatureLib_SwitchEvent_GetIndex(const SwitchEvent* p) { return p->GetIndex().GetCreatureIndex(); }
DESTRUCTOR(SwitchEvent);
DESTRUCTOR(TurnStartEvent);
DESTRUCTOR(TurnEndEvent);
BORROWED_GET_FUNC(ExperienceGainEvent, GetCreature, const Creature*);
SIMPLE_GET_FUNC(ExperienceGainEvent, GetPreviousExperience, uint32_t);
SIMPLE_GET_FUNC(ExperienceGainEvent, GetNewExperience, uint32_t);
DESTRUCTOR(ExperienceGainEvent);
BORROWED_GET_FUNC(MissEvent, GetCreature, const Creature*);
DESTRUCTOR(MissEvent);
BORROWED_GET_FUNC(ChangeSpeciesEvent, GetCreature, const Creature*);
BORROWED_GET_FUNC(ChangeSpeciesEvent, GetNewSpecies, const CreatureLib::Library::CreatureSpecies*);
DESTRUCTOR(ChangeSpeciesEvent);
BORROWED_GET_FUNC(ChangeVariantEvent, GetCreature, const Creature*);
BORROWED_GET_FUNC(ChangeVariantEvent, GetNewVariant, const CreatureLib::Library::SpeciesVariant*);
DESTRUCTOR(ChangeVariantEvent);
BORROWED_GET_FUNC(AttackUseEvent, GetAttack, const ExecutingAttack*);
DESTRUCTOR(AttackUseEvent);
export const char* CreatureLib_DisplayTextEvent_GetText(const DisplayTextEvent* p) { return p->GetText().c_str(); }
export void CreatureLib_DisplayTextEvent_Destruct(const DisplayTextEvent* p) { delete p; }