Files
PkmnLib/src/Battling/Library/BattleLibrary.hpp
Deukhoofd 191b128125
All checks were successful
continuous-integration/drone/push Build is passing
Implements Pokemon stat calculation.
2020-01-05 15:18:30 +01:00

40 lines
1.7 KiB
C++

#ifndef PKMNLIB_BATTLELIBRARY_HPP
#define PKMNLIB_BATTLELIBRARY_HPP
#include <Battling/Library/BattleLibrary.hpp>
#include "../../Library/PokemonLibrary.hpp"
#include "StatCalculator.hpp"
namespace PkmnLib::Battling {
class BattleLibrary : public CreatureLib::Battling::BattleLibrary {
public:
BattleLibrary(Library::PokemonLibrary* staticLib, StatCalculator* statCalculator,
CreatureLib::Battling::DamageLibrary* damageLibrary,
CreatureLib::Battling::ExperienceLibrary* experienceLibrary,
CreatureLib::Battling::ScriptResolver* scriptResolver,
CreatureLib::Battling::MiscLibrary* miscLibrary)
: CreatureLib::Battling::BattleLibrary(staticLib, statCalculator, damageLibrary, experienceLibrary,
scriptResolver, miscLibrary) {}
const Library::PokemonLibrary* GetStaticLib() const{
return reinterpret_cast<const Library::PokemonLibrary*>(CreatureLib::Battling::BattleLibrary::_staticLib);
}
const Library::SpeciesLibrary* GetSpeciesLibrary() const {
return reinterpret_cast<const Library::SpeciesLibrary*>(
CreatureLib::Battling::BattleLibrary::GetSpeciesLibrary());
}
const Library::ItemLibrary* GetItemLibrary() const {
return reinterpret_cast<const Library::ItemLibrary*>(
CreatureLib::Battling::BattleLibrary::GetItemLibrary());
}
const Library::NatureLibrary* GetNatureLibrary() const {
return GetStaticLib()->GetNatureLibrary();
}
};
}
#endif // PKMNLIB_BATTLELIBRARY_HPP