Begin work on outlining dynamic side
This commit is contained in:
30
PkmnLib.Dynamic/Libraries/BattleStatCalculator.cs
Normal file
30
PkmnLib.Dynamic/Libraries/BattleStatCalculator.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
using PkmnLib.Dynamic.Models;
|
||||
using PkmnLib.Static;
|
||||
|
||||
namespace PkmnLib.Dynamic.Libraries;
|
||||
|
||||
/// <summary>
|
||||
/// A battle stat calculator is used to calculate stats for a Pokemon.
|
||||
/// </summary>
|
||||
public interface IBattleStatCalculator
|
||||
{
|
||||
/// <summary>
|
||||
/// Calculate all the flat stats of a Pokemon, disregarding stat boosts.
|
||||
/// </summary>
|
||||
void CalculateFlatStats(IPokemon pokemon, StatisticSet<uint> stats);
|
||||
|
||||
/// <summary>
|
||||
/// Calculate a single flat stat of a Pokemon, disregarding stat boosts.
|
||||
/// </summary>
|
||||
uint CalculateFlatStat(IPokemon pokemon, Statistic stat);
|
||||
|
||||
/// <summary>
|
||||
/// Calculate all the boosted stats of a Pokemon, including stat boosts.
|
||||
/// </summary>
|
||||
void CalculateBoostedStats(IPokemon pokemon, StatisticSet<uint> stats);
|
||||
|
||||
/// <summary>
|
||||
/// Calculate a single boosted stat of a Pokemon, including stat boosts.
|
||||
/// </summary>
|
||||
uint CalculateBoostedStat(IPokemon pokemon, Statistic stat);
|
||||
}
|
||||
Reference in New Issue
Block a user