protected override void SetupBehaviour() { EventManager.On(HWnd, "PlayerTransformChanged", (Event ev) => { if (TargetLocation != null && !_isInCombat && !Paused && CorpseTransform == null) { _enemyTargettingCommander.Update(); } }); EventManager.On(HWnd, "KeyPressRequested", (Event ev) => { var keyRequest = (KeyPressRequest)ev.Data; if (keyRequest.ModifierKey == Keys.LShiftKey && keyRequest.Key == Keys.D4) { KeyHandler.PressKey(Keys.Tab); return; } if (keyRequest.ModifierKey != Keys.None) { KeyHandler.ModifiedKeypress(keyRequest.ModifierKey, keyRequest.Key); } else { KeyHandler.PressKey(keyRequest.Key); } }); EventManager.On(HWnd, "TooFarAway", (Event _) => { KeyHandler.PressKey(Keys.Tab); }); }
protected override void SetupBehaviour() { EventManager.On(HWnd, "PlayerTransformChanged", (Event _) => { if (TargetLocation != null && !_isInCombat && !Paused && CorpseTransform == null) { _enemyTargettingCommander.Update(); } }); EventManager.On(HWnd, "DeathChanged", (Event ev) => { if ((bool)ev.Data) { _isAlive = false; Task.Run(() => { Thread.Sleep(6000); KeyHandler.PressKey(Keys.F8); while (!_isAlive) { KeyHandler.PressKey(Keys.F8); Thread.Sleep(1000); } }); } else { _isAlive = true; } }); EventManager.On(HWnd, "CombatChanged", (Event ev) => { _isInCombat = (bool)ev.Data; Console.WriteLine("Combat: " + _isInCombat); if (_isInCombat) { PauseMovement(); Task.Run(() => { Thread.Sleep(3000); RunTargetSwitchHandler(); }); return; } _lootingCommander.Loot(() => { if (!_isInCombat) { ResumeMovement(); } }); }); EventManager.On(HWnd, "KeyPressRequested", (Event ev) => { var keyRequest = (KeyPressRequest)ev.Data; if (keyRequest.ModifierKey != Keys.None) { KeyHandler.ModifiedKeypress(keyRequest.ModifierKey, keyRequest.Key); } else { if (keyRequest.Key == Keys.D9) { if (_initialResting) { _initialResting = false; KeyHandler.PressKey(keyRequest.Key); } if (_restingTask != null) { _restingTask.Abort(); } _restingTask = new Thread(() => { PauseMovement(); Thread.Sleep(3500); if (!_isInCombat) { _initialResting = true; ResumeMovement(); } }); _restingTask.Start(); } else { KeyHandler.PressKey(keyRequest.Key); } } if (_isInCombat) { _timeSinceLastAttackInCombat = DateTime.Now; } }); EventManager.On(HWnd, "WrongFacing", (Event _) => { PauseMovement(); KeyHandler.PressKey(Keys.S, 1500); }); EventManager.On(HWnd, "TooFarAway", (Event _) => { KeyHandler.PressKey(Keys.Tab); }); }