Implements Pokemon stat calculation.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2020-01-05 15:18:30 +01:00
parent 02ab4b3272
commit 191b128125
12 changed files with 323 additions and 31 deletions

View File

@@ -3,6 +3,7 @@
#include <Battling/Models/Creature.hpp>
#include <utility>
#include "../../Library/Statistic.hpp"
#include "../Library/BattleLibrary.hpp"
#include "LearnedMove.hpp"
@@ -15,7 +16,7 @@ namespace PkmnLib::Battling {
uint8_t _nature;
const Library::Nature* _natureCache = nullptr;
const BattleLibrary* GetLibrary() { return reinterpret_cast<const BattleLibrary*>(_library); }
const BattleLibrary* GetLibrary() const { return reinterpret_cast<const BattleLibrary*>(_library); }
public:
Pokemon(const BattleLibrary* library, const Library::PokemonSpecies* species,
@@ -28,7 +29,11 @@ namespace PkmnLib::Battling {
heldItem, nickname, talent, std::move(moves)),
_individualValues(individualValues), _effortValues(effortValues), _nature(nature) {}
const Library::Nature& GetNature();
const Library::Nature& GetNature() const;
const uint8_t GetIndividualValue(CreatureLib::Core::Statistic stat) const {
return _individualValues.GetStat(stat);
}
const uint8_t GetEffortValue(CreatureLib::Core::Statistic stat) const { return _effortValues.GetStat(stat); }
};
}