CreatureLib/CInterface/Battling/EventData.cpp

28 lines
1.3 KiB
C++
Raw Normal View History

2020-03-09 10:12:24 +00:00
#include "../../src/Battling/EventHooks/EventData.hpp"
#include "../Core.hpp"
2020-03-09 10:12:24 +00:00
using namespace CreatureLib::Battling;
export void CreatureLib_EventData_Destruct(const EventData* p) { delete p; }
#define SIMPLE_GET_FUNC(type, name, returnType) \
export returnType CreatureLib_##type##_##name(const type* p) { return p->name(); }
#define SIMPLE_GET_FUNC_SMART_PTR(type, name, returnType) \
export returnType CreatureLib_##type##_##name(const type* p) { return p->name().operator->(); }
2020-03-09 10:12:24 +00:00
SIMPLE_GET_FUNC(EventData, GetKind, EventDataKind);
SIMPLE_GET_FUNC_SMART_PTR(DamageEvent, GetCreature, Creature*);
2020-03-09 10:12:24 +00:00
SIMPLE_GET_FUNC(DamageEvent, GetDamageSource, DamageSource);
SIMPLE_GET_FUNC(DamageEvent, GetOriginalHealth, uint32_t);
SIMPLE_GET_FUNC(DamageEvent, GetNewHealth, uint32_t);
SIMPLE_GET_FUNC_SMART_PTR(HealEvent, GetCreature, Creature*);
2020-03-09 10:12:24 +00:00
SIMPLE_GET_FUNC(HealEvent, GetOriginalHealth, uint32_t);
SIMPLE_GET_FUNC(HealEvent, GetNewHealth, uint32_t);
2020-03-09 15:30:36 +00:00
SIMPLE_GET_FUNC_SMART_PTR(FaintEvent, GetCreature, Creature*);
2020-03-09 16:43:36 +00:00
export const char* CreatureLib_DisplayTextEvent_GetText(const DisplayTextEvent* p) { return p->GetText().c_str(); }
#undef SIMPLE_GET_FUNC
#undef SIMPLE_GET_FUNC_SMART_PTR