CreatureLib/src/Battling/Library/BattleStatCalculator.hpp

22 lines
746 B
C++

#ifndef CREATURELIB_BATTLESTATCALCULATOR_HPP
#define CREATURELIB_BATTLESTATCALCULATOR_HPP
#include "../../Library/StatisticSet.hpp"
namespace CreatureLib::Battling {
// predeclare BattleCreature class
class Creature;
class BattleStatCalculator {
public:
virtual ~BattleStatCalculator() = default;
virtual Library::StatisticSet<u32> CalculateFlatStats(Creature* creature) const;
virtual Library::StatisticSet<u32> CalculateBoostedStats(Creature* creature) const;
virtual u32 CalculateFlatStat(Creature* creature, Library::Statistic stat) const;
virtual u32 CalculateBoostedStat(Creature* creature, Library::Statistic stat) const;
};
}
#endif // CREATURELIB_BATTLESTATCALCULATOR_HPP