using System; using PkmnLibSharp.Utilities; namespace PkmnLibSharp.Battling { public class BattleRandom : PointerWrapper { public BattleRandom() : base(Creaturelibbattling.Generated.BattleRandom.Construct()) {} public BattleRandom(ulong seed) : base(Creaturelibbattling.Generated.BattleRandom.ConstructWithSeed(seed)) {} internal BattleRandom(IntPtr ptr) : base(ptr){} public ulong Seed => Creaturelibbattling.Generated.BattleRandom.GetSeed(Ptr); public bool EffectChance(float chance, ExecutingMove move,Pokemon target) { byte b = 0; Creaturelibbattling.Generated.BattleRandom.EffectChance(ref b, Ptr, chance, move.Ptr, target.Ptr); return b == 1; } public int Get() { return Creaturelibbattling.Generated.BattleRandom.Get(Ptr); } public int Get(int max) { return Creaturelibbattling.Generated.BattleRandom.GetMax(Ptr, max); } public int Get(int min, int max) { return Creaturelibbattling.Generated.BattleRandom.GetMinMax(Ptr, min, max); } protected override void DeletePtr() { Creaturelibbattling.Generated.BattleRandom.Destruct(Ptr); } } }