#ifndef PKMNLIB_LEARNABLEMOVES_HPP #define PKMNLIB_LEARNABLEMOVES_HPP #include #include "../Moves/MoveData.hpp" namespace PkmnLib::Library { class LearnableMoves final : public CreatureLib::Library::LearnableAttacks { ArbUt::List> _eggMoves; public: explicit LearnableMoves(level_int_t levelAttackCapacity) : LearnableAttacks(levelAttackCapacity) {} void AddEggMove(const ArbUt::BorrowedPtr& move) noexcept { if (!_eggMoves.Contains(move)) _eggMoves.Append(move); } const ArbUt::List>& GetEggMoves() const noexcept { return _eggMoves; } }; } #endif // PKMNLIB_LEARNABLEMOVES_HPP