#ifndef PKMNLIB_POKEMON_HPP #define PKMNLIB_POKEMON_HPP #include #include #include "../Library/BattleLibrary.hpp" #include "LearnedMove.hpp" namespace PkmnLib::Battling { class Pokemon : public CreatureLib::Battling::Creature { private: CreatureLib::Core::StatisticSet _individualValues; CreatureLib::Core::StatisticSet _effortValues; public: Pokemon(const BattleLibrary* library, const Library::PokemonSpecies* species, const Library::PokemonForme* forme, uint8_t level, uint32_t experience, uint32_t uid, CreatureLib::Library::Gender gender, uint8_t coloring, const Library::Item* heldItem, const std::string& nickname, int8_t talent, std::vector moves, CreatureLib::Core::StatisticSet individualValues, CreatureLib::Core::StatisticSet effortValues) : CreatureLib::Battling::Creature(library, species, forme, level, experience, uid, gender, coloring, heldItem, nickname, talent, std::move(moves)), _individualValues(individualValues), _effortValues(effortValues) {} }; } #endif // PKMNLIB_POKEMON_HPP