#ifndef CREATURELIB_DAMAGELIBRARY_HPP #define CREATURELIB_DAMAGELIBRARY_HPP #include "../Models/Creature.hpp" #include "../Models/ExecutingAttack.hpp" namespace CreatureLib::Battling{ class DamageLibrary { public: virtual ~DamageLibrary(); virtual int GetDamage(ExecutingAttack* attack, Creature* target, uint8_t hitIndex) const; virtual int GetBasePower(ExecutingAttack* attack, Creature* target, uint8_t hitIndex) const; virtual float GetStatModifier(ExecutingAttack* attack, Creature* target, uint8_t hitIndex) const; virtual float GetDamageModifier(ExecutingAttack* attack, Creature* target, uint8_t hitIndex) const; }; } #endif //CREATURELIB_DAMAGELIBRARY_HPP