internal async Task Reset() { Battle = new ColossoBattle(); if (autoTurn != null) { autoTurn.Dispose(); } if (resetIfNotActive != null) { resetIfNotActive.Dispose(); } foreach (var k in Messages.Keys) { await k.DeleteAsync(); } Messages.Clear(); if (EnemyMsg != null) { _ = EnemyMsg.ModifyAsync(c => { c.Content = $"Welcome to {Name} Battle!\n\nReact with <:Fight:536919792813211648> to join the {Name} Battle and press <:Battle:536954571256365096> when you are ready to battle!"; c.Embed = null; }); await EnemyMsg.RemoveAllReactionsAsync(); _ = EnemyMsg.AddReactionsAsync(new IEmote[] { Emote.Parse("<:Fight:536919792813211648>"), Emote.Parse("<:Battle:536954571256365096>") }); } if (StatusMsg != null) { _ = StatusMsg.DeleteAsync(); StatusMsg = null; } winsInARow = 0; LureCaps = 0; SetRandomEnemies(ColossoBattle.Team.B); autoTurn = new Timer() { Interval = 25000, AutoReset = false, Enabled = false }; autoTurn.Elapsed += OnTimerTicked; resetIfNotActive = new Timer() { Interval = 120000, AutoReset = false, Enabled = false }; resetIfNotActive.Elapsed += BattleWasNotStartetInTime; Console.WriteLine("Battle was reset."); }