25 lines
1.2 KiB
C++
25 lines
1.2 KiB
C++
#include "../../src/Library/Natures/Nature.hpp"
|
|
#include "../Core.hpp"
|
|
using namespace PkmnLib::Library;
|
|
|
|
export Nature* PkmnLib_Nature_Construct(CreatureLib::Library::Statistic increasedStat,
|
|
CreatureLib::Library::Statistic decreasedStat, float increasedModifier,
|
|
float decreasedModifier) {
|
|
return new Nature(increasedStat, decreasedStat, increasedModifier, decreasedModifier);
|
|
}
|
|
export void PkmnLib_Nature_Destruct(const Nature* p) { delete p; }
|
|
|
|
#define SIMPLE_GET_FUNC(type, name, returnType) \
|
|
export returnType PkmnLib_##type##_##name(const PkmnLib::Library::type* p) { return p->name(); }
|
|
|
|
SIMPLE_GET_FUNC(Nature, GetIncreaseModifier, float)
|
|
SIMPLE_GET_FUNC(Nature, GetDecreaseModifier, float)
|
|
SIMPLE_GET_FUNC(Nature, GetIncreasedStat, CreatureLib::Library::Statistic)
|
|
SIMPLE_GET_FUNC(Nature, GetDecreasedStat, CreatureLib::Library::Statistic)
|
|
|
|
#undef SIMPLE_GET_FUNC
|
|
|
|
export float PkmnLib_Nature_GetStatModifier(const PkmnLib::Library::Nature* nature,
|
|
CreatureLib::Library::Statistic stat) {
|
|
return nature->GetStatModifier(stat);
|
|
} |