#ifndef PKMNLIB_MOVELIBRARY_HPP #define PKMNLIB_MOVELIBRARY_HPP #include #include "MoveData.hpp" namespace PkmnLib::Library { class MoveLibrary : public CreatureLib::Library::AttackLibrary { public: virtual const MoveData* operator[](const std::string& name) const { return GetAttack(name); } const MoveData* GetMove(const std::string& name) const { return GetAttack(name); } const MoveData* GetAttack(const std::string& name) const { return reinterpret_cast(CreatureLib::Library::AttackLibrary::GetAttack(name)); } void LoadAttack(const std::string& name, const MoveData* attack){ CreatureLib::Library::AttackLibrary::LoadAttack(name, attack); } void LoadMove(const std::string& name, const MoveData* attack){ CreatureLib::Library::AttackLibrary::LoadAttack(name, attack); } }; } #endif // PKMNLIB_MOVELIBRARY_HPP