From 6ecbae0370c40f08b3fe997d6b6271b72d2bec42 Mon Sep 17 00:00:00 2001 From: Deukhoofd Date: Fri, 9 Jul 2021 18:19:21 +0200 Subject: [PATCH] Support clearing a battle on demand --- PkmnLibSharp/Battling/Battle/Battle.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/PkmnLibSharp/Battling/Battle/Battle.cs b/PkmnLibSharp/Battling/Battle/Battle.cs index 1f90d8e..c8988c4 100644 --- a/PkmnLibSharp/Battling/Battle/Battle.cs +++ b/PkmnLibSharp/Battling/Battle/Battle.cs @@ -59,6 +59,8 @@ namespace PkmnLibSharp.Battling public ulong MonsPerSide => Creaturelib.Generated.Battle.GetCreaturesPerSide(Ptr); public long LastTurnTimeMicroseconds => Creaturelib.Generated.Battle.GetLastTurnTimeMicroseconds(Ptr); + private bool _cleared; + public ReadOnlyNativePtrArray Sides { get @@ -228,6 +230,14 @@ namespace PkmnLibSharp.Battling private ReadOnlyNativePtrArray? _sides; private ReadOnlyNativePtrArray? _parties; private HistoryHandler? _history; + + public void ClearBattle() + { + if (_cleared) + return; + _cleared = true; + Creaturelib.Generated.Battle.ClearBattle(Ptr); + } protected override void DeletePtr() { @@ -238,7 +248,7 @@ namespace PkmnLibSharp.Battling { if (!IsDeleted) { - Creaturelib.Generated.Battle.ClearBattle(Ptr); + ClearBattle(); } base.Dispose(); }