33 lines
1.1 KiB
C#
33 lines
1.1 KiB
C#
using PkmnLibSharp.FFI;
|
|
using PkmnLibSharp.Utils;
|
|
using Interface = PkmnLibSharp.FFI.DynamicData.Libraries.BattleStatCalculator;
|
|
|
|
namespace PkmnLibSharp.DynamicData.Libraries
|
|
{
|
|
/// <summary>
|
|
/// A battle stat calculator is used to calculate stats for a Pokemon.
|
|
/// </summary>
|
|
public abstract class BattleStatCalculator : HandleType
|
|
{
|
|
/// <inheritdoc cref="BattleStatCalculator"/>
|
|
protected BattleStatCalculator(FFIHandle handle) : base(handle){}
|
|
}
|
|
|
|
/// <summary>
|
|
/// A basic implementation of the Gen 7 stat calculator.
|
|
/// </summary>
|
|
public class Gen7BattleStatCalculator : BattleStatCalculator
|
|
{
|
|
/// <inheritdoc cref="Gen7BattleStatCalculator"/>
|
|
protected Gen7BattleStatCalculator(FFIHandle handle) : base(handle){}
|
|
|
|
/// <summary>
|
|
/// Creates a new Gen 7 battle stat calculator
|
|
/// </summary>
|
|
public static Gen7BattleStatCalculator Create()
|
|
{
|
|
var handle = Interface.gen_7_battle_stat_calculator_new();
|
|
return (Gen7BattleStatCalculator)Resolver.Instance.ResolveBattleStatCalculator(handle.Resolve());
|
|
}
|
|
}
|
|
} |