C Interface for Pokemon.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2020-04-18 13:43:05 +02:00
parent 66060c68c0
commit caa353191d
5 changed files with 50 additions and 13 deletions

View File

@@ -1,4 +1 @@
#include "Pokemon.hpp"
const PkmnLib::Library::Nature* PkmnLib::Battling::Pokemon::GetNature() const{
return _nature;
}

View File

@@ -22,7 +22,7 @@ namespace PkmnLib::Battling {
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, const CreatureLib::Library::TalentIndex& talent,
List<CreatureLib::Battling::LearnedAttack*> moves,
const List<CreatureLib::Battling::LearnedAttack*>& moves,
CreatureLib::Library::StatisticSet<uint8_t> individualValues,
CreatureLib::Library::StatisticSet<uint8_t> effortValues, const PkmnLib::Library::Nature* nature)
: CreatureLib::Battling::Creature(library, species, forme, level, experience, uid, gender, coloring,
@@ -33,17 +33,19 @@ namespace PkmnLib::Battling {
return dynamic_cast<const Library::PokemonForme*>(GetVariant());
}
bool IsShiny() const { return _coloring == 1; }
inline bool IsShiny() const noexcept { return _coloring == 1; }
const std::vector<LearnedMove*>& GetMoves() const {
return reinterpret_cast<const std::vector<LearnedMove*>&>(_attacks);
const Arbutils::Collections::List<LearnedMove*>& GetMoves() const {
return reinterpret_cast<const Arbutils::Collections::List<LearnedMove*>&>(_attacks);
}
const Library::Nature* GetNature() const;
uint8_t GetIndividualValue(CreatureLib::Library::Statistic stat) const {
inline const Library::Nature* GetNature() const noexcept { return _nature; }
inline uint8_t GetIndividualValue(CreatureLib::Library::Statistic stat) const {
return _individualValues.GetStat(stat);
}
uint8_t GetEffortValue(CreatureLib::Library::Statistic stat) const { return _effortValues.GetStat(stat); }
inline uint8_t GetEffortValue(CreatureLib::Library::Statistic stat) const {
return _effortValues.GetStat(stat);
}
};
}