public override void KeyReleased(KeyPayload payload) { AsyncHelper.RunSync(HandleDisplay); }
public void HandleEliteEvents(object sender, JournalEventArgs e) { AsyncHelper.RunSync(HandleDisplay); }
public override void KeyPressed(KeyPayload payload) { if (InputRunning || Program.Bindings == null) { ForceStop = true; return; } ForceStop = false; var isDisabled = (EliteData.StatusData.Docked || EliteData.StatusData.Landed || EliteData.StatusData.LandingGearDown || EliteData.StatusData.Supercruise || EliteData.StatusData.FsdJump //|| //EliteData.StatusData.CargoScoopDeployed || //EliteData.StatusData.SilentRunning || //EliteData.StatusData.ScoopingFuel || //EliteData.StatusData.IsInDanger || //EliteData.StatusData.BeingInterdicted || //EliteData.StatusData.HudInAnalysisMode || //EliteData.StatusData.FsdMassLocked || //EliteData.StatusData.FsdCharging || //EliteData.StatusData.FsdCooldown || //EliteData.StatusData.HardpointsDeployed ); if (!isDisabled && EliteData.LimpetCount > 0 && !string.IsNullOrEmpty(settings.Firegroup) && !string.IsNullOrEmpty(settings.Fire)) { var cycle = Convert.ToInt32(settings.Firegroup) - EliteData.StatusData.Firegroup; if (cycle < 0) { for (var f = 0; f < -cycle; f++) { SendKeypress(Program.Bindings.CycleFireGroupPrevious); Thread.Sleep(30); } } else if (cycle > 0) { for (var f = 0; f < cycle; f++) { SendKeypress(Program.Bindings.CycleFireGroupNext); Thread.Sleep(30); } } Thread.Sleep(100); SendKeypress(settings.Fire == "PRIMARY" ? Program.Bindings.PrimaryFire : Program.Bindings.SecondaryFire); Thread.Sleep(100); if (cycle < 0) { for (var f = 0; f < -cycle; f++) { Thread.Sleep(30); SendKeypress(Program.Bindings.CycleFireGroupNext); } } else if (cycle > 0) { for (var f = 0; f < cycle; f++) { Thread.Sleep(30); SendKeypress(Program.Bindings.CycleFireGroupPrevious); } } if (_clickSound != null) { try { AudioPlaybackEngine.Instance.PlaySound(_clickSound); } catch (Exception ex) { Logger.Instance.LogMessage(TracingLevel.FATAL, $"PlaySound: {ex}"); } } } else { if (_errorSound != null) { try { AudioPlaybackEngine.Instance.PlaySound(_errorSound); } catch (Exception ex) { Logger.Instance.LogMessage(TracingLevel.FATAL, $"PlaySound: {ex}"); } } } AsyncHelper.RunSync(HandleDisplay); }
public override void KeyPressed(KeyPayload payload) { if (InputRunning || Program.Binding == null) { ForceStop = true; return; } ForceStop = false; var isDisabled = (EliteData.StatusData.OnFoot || EliteData.StatusData.InSRV || EliteData.StatusData.Docked || EliteData.StatusData.Landed || EliteData.StatusData.LandingGearDown || EliteData.StatusData.CargoScoopDeployed || //EliteData.StatusData.SilentRunning || //EliteData.StatusData.ScoopingFuel || //EliteData.StatusData.IsInDanger || //EliteData.StatusData.BeingInterdicted || //EliteData.StatusData.HudInAnalysisMode || EliteData.StatusData.FsdMassLocked || //EliteData.StatusData.FsdCharging || EliteData.StatusData.FsdCooldown || //EliteData.StatusData.Supercruise || //EliteData.StatusData.FsdJump || EliteData.StatusData.HardpointsDeployed); if (!isDisabled) { switch (settings.Function) { case "HYPERSUPERCOMBINATION" : // context dependent, i.e. jump if another system is targeted, supercruise if not. SendKeypress(Program.Binding[BindingType.Ship].HyperSuperCombination); break; case "SUPERCRUISE": // supercruise even if another system targeted SendKeypress(Program.Binding[BindingType.Ship].Supercruise); break; case "HYPERSPACE": // jump SendKeypress(Program.Binding[BindingType.Ship].Hyperspace); break; } if (_clickSound != null) { try { AudioPlaybackEngine.Instance.PlaySound(_clickSound); } catch (Exception ex) { Logger.Instance.LogMessage(TracingLevel.FATAL, $"PlaySound: {ex}"); } } } else { if (_errorSound != null) { try { AudioPlaybackEngine.Instance.PlaySound(_errorSound); } catch (Exception ex) { Logger.Instance.LogMessage(TracingLevel.FATAL, $"PlaySound: {ex}"); } } } AsyncHelper.RunSync(HandleDisplay); }