PkmnLib/src/Library/Species/PokemonForme.hpp

28 lines
1.2 KiB
C++

#ifndef PKMNLIB_POKEMONFORME_HPP
#define PKMNLIB_POKEMONFORME_HPP
#include <CreatureLib/Library/CreatureData/SpeciesVariant.hpp>
#include "LearnableMoves.hpp"
namespace PkmnLib::Library {
class PokemonForme final : public CreatureLib::Library::SpeciesVariant {
public:
PokemonForme(const ArbUt::StringView& name, float height, float weight, u32 baseExperience,
const ArbUt::List<u8>& types, CreatureLib::Library::StatisticSet<u16> baseStats,
const ArbUt::List<ArbUt::BorrowedPtr<const CreatureLib::Library::Talent>>& talents,
const ArbUt::List<ArbUt::BorrowedPtr<const CreatureLib::Library::Talent>>& secretTalents,
const LearnableMoves* moves, std::unordered_set<u32> flags = {})
: SpeciesVariant(name, height, weight, baseExperience, types, baseStats, talents, secretTalents, moves,
std::move(flags)){};
private:
public:
inline const ArbUt::BorrowedPtr<const CreatureLib::Library::Talent>&
GetAbility(const CreatureLib::Library::TalentIndex& index) const {
return GetTalent(index);
}
};
}
#endif // PKMNLIB_POKEMONFORME_HPP