internal static void ExecuteRG(string[] args) { //if (CurrentGameState == GameState.StartedGame) //{ // SendMsg(true, "이미 게임을 플레이 하는 중입니다."); // return; //} if (AutoRG.IsRunning) { SendMsg(true, "자동 RG 기능이 종료되었습니다."); AutoRG.CancelAsync(); return; } if (!(args?.Length > 1) || !int.TryParse(args[1], out int value) || value <= 0) { goto Error; } SendMsg(true, $"자동 RG 기능이 시작되었습니다. ▷반복: {args[1]}회"); AutoRG.RunWorkerAsync(value); return; Error: SendMsg(true, "자동 RG 기능이 시작되었습니다. ▷반복: 무제한"); AutoRG.RunWorkerAsync(-1); }
internal static async void StatusCheck() { if (WaitGameStart) { if (!GetSelectedReceiveStatus()) { return; } WaitGameStart = false; AutoRG.CancelAsync(); MainWorker.MapFileWatcher.EnableRaisingEvents = false; await Task.Delay(500); CameraInit(); GameDelay = Settings.GameDelay; if (Settings.IsAutoLoad) { await Task.Delay(3000); LoadCodeSelect(); } } else { if (!WaitLobby && CurrentMusicState == MusicState.BattleNet) { GameDelay = 50; WaitLobby = true; Warcraft3Info.Refresh(); } if (!WaitLobby || GameDelay != 100) { return; } GameDelay = 550; if (Settings.IsCheatMapCheck && !LoadedFiles.IsLoadedMap(out _)) { MainWorker.MapFileWatcher.EnableRaisingEvents = true; } if (File.Exists($"{DocumentPath}\\Replay\\LastReplay.w3g")) { try { File.Delete($"{DocumentPath}\\Replay\\CirnixReplay.w3g"); File.Move($"{DocumentPath}\\Replay\\LastReplay.w3g", $"{DocumentPath}\\Replay\\CirnixReplay.w3g"); } catch { // Delete : CirnixReplay.w3g 경로에 대한 액세스가 거부되었습니다. // 백신때문으로 유추 } } WaitLobby = false; WaitGameStart = true; } }
//internal static HangWatchdog AntiZombieProcessChecker; internal static async Task <bool> ProcessCheck() { if (GameModule.InitWarcraft3Info() != WarcraftState.OK || !GameModule.WarcraftCheck()) { InitializedWarcraft = false; if (AutoRG.IsRunning) { AutoRG.CancelAsync(); } AutoMouse.CheckOff(); // 프로그램을 찾지 못할 경우 검색 간격 증가 await Task.Delay(800); return(true); } else if (!InitializedWarcraft) { InitializedWarcraft = true; await Task.Delay(2000); Warcraft3Info.Refresh(); GameModule.GetOffset(); GameDelay = 50; RefreshCooldown = 0.01f; //ColorfulChat = true; name = string.Empty; StartDelay = Settings.StartSpeed > 0 ? Settings.StartSpeed : 0.01f; CameraDistance = Settings.CameraDistance; CameraAngleX = Settings.CameraAngleX; CameraAngleY = Settings.CameraAngleY; } if (Settings.IsAutoHp && !HPView) { HPView = true; } //AntiZombieProcessChecker.Check(); MemoryOptimizeChecker.Check(); StatusCheck(); return(false); }