public void HandleEliteEvents(object sender, JournalEventArgs e) { 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); }