public void Tick() { using (new PerformanceTimer("NewGame", null)) { bool flag = true; Network network = Network.Get(); if (network != null) { GameServerInfo lastGameServerInfo = network.m_lastGameServerInfo; if ((Network.IsConnectedToGameServer() && (lastGameServerInfo != null)) && (this.int_1 != lastGameServerInfo.GameHandle)) { this.int_1 = lastGameServerInfo.GameHandle; this.int_0 = -1; this.stopwatch_0.Restart(); flag = false; object[] args = new object[] { this, new NewGameEventArgs(this.int_1) }; TritonHs.InvokeEvent(eventHandler_0, args); } } if (flag) { this.stopwatch_0.Reset(); } } }
internal void method_4(GameOverFlag gameOverFlag_0, bool bool_0) { if (this.int_0 != this.int_1) { this.int_0 = this.int_1; object[] args = new object[] { this, new GameOverEventArgs(gameOverFlag_0, bool_0) }; TritonHs.InvokeEvent(eventHandler_3, args); } }
internal void method_7() { object[] args = new object[] { this, new FatalErrorEventArgs() }; TritonHs.InvokeEvent(eventHandler_7, args); }
internal void method_6() { object[] args = new object[] { this, new CustomDecksCachedEventArgs() }; TritonHs.InvokeEvent(eventHandler_6, args); }
internal void method_5() { object[] args = new object[] { this, new StartingNewGameEventArgs() }; TritonHs.InvokeEvent(eventHandler_5, args); }
internal void method_3(List <RewardData> list_0) { object[] args = new object[] { this, new ArenaRewardsEventArgs(list_0) }; TritonHs.InvokeEvent(eventHandler_2, args); }
internal void method_2() { object[] args = new object[] { this, new QuestUpdateEventArgs() }; TritonHs.InvokeEvent(eventHandler_1, args); }
internal void method_1() { object[] args = new object[] { this, new MulliganConfirmEventArgs() }; TritonHs.InvokeEvent(eventHandler_4, args); }
private static void smethod_4() { object obj2 = object_0; lock (obj2) { Thread.Sleep(1); } TritonHs.Memory.DisableCache(); TritonHs.Memory.ClearCache(); TritonHs.Memory.Executor.FrameDropWaitTime = 0x3a98; TritonHs.Memory.Executor.ExecuteWaitTime = 0x3a98; try { TritonHs.smethod_2(true); } catch { } try { smethod_0(CurrentBot); goto Label_00DF; } catch { autoResetEvent_0.Set(); goto Label_00DF; } Label_0084 :; try { if (MsBeforeNextTick != 0) { Thread.Sleep(MsBeforeNextTick); MsBeforeNextTick = 0; } smethod_1(CurrentBot); if (MsBetweenTicks != 0) { Thread.Sleep(MsBetweenTicks); } bool_3 = false; } catch (InjectionDesyncException) { ilog_0.DebugFormat("[BotThreadFunction] An InjectionDesyncException was detected.", Array.Empty <object>()); bool_3 = true; goto Label_00EC; } catch { } Label_00DF: if (!autoResetEvent_0.WaitOne(0)) { goto Label_0084; } Label_00EC :; try { smethod_2(CurrentBot); } catch { } BotThread = null; if (bool_3) { object[] args = new object[2]; args[1] = new ClientFrozenEventArgs(); TritonHs.InvokeEvent(eventHandler_1, args); } else { try { TritonHs.smethod_2(true); } catch { } } }
private static void smethod_4() { object obj = object_0; lock (obj) { Thread.Sleep(1); } TritonHs.Memory.DisableCache(); TritonHs.Memory.ClearCache(); TritonHs.Memory.Executor.FrameDropWaitTime = 15000u; TritonHs.Memory.Executor.ExecuteWaitTime = 15000; try { TritonHs.smethod_2(); } catch { } try { smethod_0(CurrentBot); goto IL_FA; } catch { autoResetEvent_0.Set(); goto IL_FA; } IL_87: try { if (MsBeforeNextTick != 0) { Thread.Sleep(MsBeforeNextTick); MsBeforeNextTick = 0; } smethod_1(CurrentBot); bool_3 = false; if (MsBetweenTicks != 0) { Thread.Sleep(MsBetweenTicks); } } catch (InjectionDesyncException) { //BotManager.ilog_0.DebugFormat("[BotThreadFunction] An InjectionDesyncException was detected.", Array.Empty<object>()); bool_3 = true; TritonHs.InvokeEvent(eventHandler_1, null, new ClientFrozenEventArgs()); } catch { } IL_FA: if (!autoResetEvent_0.WaitOne(0)) { goto IL_87; } try { smethod_2(CurrentBot); } catch { } BotThread = null; if (bool_3) { TritonHs.InvokeEvent(eventHandler_1, null, new ClientFrozenEventArgs()); return; } try { TritonHs.smethod_2(); } catch { } }