#include "../../src/Battling/PkmnScript.hpp"
#include "../../src/Battling/EvolutionScript.hpp"
#include "../../src/Battling/Pokemon/Pokemon.hpp"
#include "../Core.hpp"
using namespace PkmnLib::Battling;

export uint8_t PkmnLib_PkmnScript_ModifyCriticalStage(PkmnScript* script,
                                                      CreatureLib::Battling::ExecutingAttack* attack,
                                                      CreatureLib::Battling::Creature* target, uint8_t hit,
                                                      uint8_t* critStage) {
    Try(script->ModifyCriticalStage(attack, target, hit, critStage);)
}

export u8 PkmnLib_EvolutionScript_DoesEvolveFromLevelUp(EvolutionScript* script,
                                                        const PkmnLib::Library::EvolutionData* evoData,
                                                        const Pokemon* pokemon, bool* out) {
    Try(script->DoesEvolveFromLevelUp(evoData, pokemon, out));
}