public void ApplyUpdate(EliteDangerousDataModel model) { model.Ship.Name = ShipName; model.Ship.Ident = ShipIdent; (model.Ship.Type, model.Ship.Size) = ShipTypeDefinitions.GetById(Ship); model.Navigation.MaximumUnladenJumpRange = MaxJumpRange; }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Navigation.CurrentStation = null; model.Navigation.DockStatus.Undocked.Trigger(new DockingEventArgs { StationName = StationName }); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Navigation.ApproachBody.Trigger(new ApproachBodyEventArgs { BodyName = Body }); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Navigation.DockStatus.RequestStatusChanged.Trigger(new DockingRequestStatusChangedEventArgs { StationName = StationName, Status = DockingStatus.Timeout }); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Navigation.DockStatus.Liftoff.Trigger(new LandingEventArgs { PlayerControlled = PlayerControlled, NearestDestination = NearestDestination }); }
public void ApplyUpdate(EliteDangerousDataModel model) { // Does not need to update IsDocked, this is done via Status.json. model.Navigation.CurrentStation = StationName; model.Navigation.DockStatus.Docked.Trigger(new DockingEventArgs { StationName = StationName }); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Player.Ranks.CombatProgress = Combat; model.Player.Ranks.TradeProgress = Trade; model.Player.Ranks.ExplorerProgress = Explore; model.Player.Ranks.CQCProgress = CQC; model.Player.Ranks.EmpireProgress = Empire; model.Player.Ranks.FederationProgress = Federation; }
public void ApplyUpdate(EliteDangerousDataModel model) { // Does not need to update IsLanded, this is done via Status.json. model.Navigation.DockStatus.Touchdown.Trigger(new LandingEventArgs { PlayerControlled = PlayerControlled, NearestDestination = NearestDestination }); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Player.Ranks.Combat = Combat; model.Player.Ranks.Trade = Trade; model.Player.Ranks.Explorer = Explore; model.Player.Ranks.CQC = CQC; model.Player.Ranks.Empire = Empire; model.Player.Ranks.Federation = Federation; }
public StarClass?StarClass; // Only when JumpType = Hyperspace public void ApplyUpdate(EliteDangerousDataModel model) { // Does not need to update FSD statuses (charging, cooldown, etc), this is done via Status.json. model.Ship.FSD.StartJump.Trigger(new StartJumpEventArgs { JumpType = JumpType, StarSystem = StarSystem, StarClass = StarClass }); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Ship.Interdiction.Trigger(new InterdictionEventArgs { Interdictor = Interdictor, InterdictorIsPlayer = IsPlayer, Escaped = true, Submitted = false }); }
public void ApplyUpdate(EliteDangerousDataModel model) { // Does not need to update FSD statuses (charging, etc.), this is done via Status.json. model.Navigation.UpdateLocation(StarSystem); model.Ship.FSD.CompleteJump.Trigger(new CompleteJumpEventArgs { // The star class is not passed to the FSDJump event, but we can get it from the most // recent "StartJump" event. StarClass = model.Ship.FSD.StartJump.LastEventArguments.StarClass ?? default, JumpDistance = JumpDist, FuelUsed = FuelUsed });
public void ApplyUpdate(EliteDangerousDataModel model) { model.Navigation.UpdateLocation(StarSystem, Body, BodyType, StationName); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Navigation.RemainingJumpsInRoute = RemainingJumpsInRoute; model.Navigation.FSDTarget.Trigger(); }
public void ApplyUpdate(EliteDangerousDataModel model) { // Does not need to update InSupercruise, this is done via Status.json model.Navigation.UpdateLocation(StarSystem); model.Navigation.EnterSupercruise.Trigger(); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.Player.Died.Trigger(); }
protected override void OnContentRead(EliteDangerousDataModel dataModel, string content) { var status = JsonConvert.DeserializeObject <StatusJson>(content); if (status == null) { return; } bool Has(StatusFlags flag) => (status.Flags & flag) != 0; // // Update the datamodel based on the parsed values // // Player details dataModel.Player.CurrentlyPiloting = Has(StatusFlags.PilotingMainShip) ? Vehicle.Ship : Has(StatusFlags.PilotingFighter) ? Vehicle.Fighter : Has(StatusFlags.PilotingSRV) ? Vehicle.SRV : Vehicle.Unknown; dataModel.Player.LegalState = status.LegalState; dataModel.Player.InWing = Has(StatusFlags.InWing); // HUD dataModel.HUD.FocusedPanel = status.GuiFocus; dataModel.HUD.AnalysisModeActive = Has(StatusFlags.AnalysisMode); dataModel.HUD.NightVisionActive = Has(StatusFlags.NightVision); // Nav dataModel.Navigation.DockStatus.IsDocked = Has(StatusFlags.Docked); dataModel.Navigation.DockStatus.IsLanded = Has(StatusFlags.Landed); dataModel.Navigation.Latitude = status.Latitude; dataModel.Navigation.Longitude = status.Longitude; dataModel.Navigation.Altitude = status.Altitude; dataModel.Navigation.Heading = status.Heading; // Ship dataModel.Ship.IsInSupercruise = Has(StatusFlags.Supercruise); dataModel.Ship.Systems.LandingGearDeployed = Has(StatusFlags.LandingGearDeployed); dataModel.Ship.Systems.CargoScoopDeployed = Has(StatusFlags.CargoScoopDeployed); dataModel.Ship.Systems.HardpointsDeployed = Has(StatusFlags.HardpointsDeployed); dataModel.Ship.Systems.ShieldsActive = Has(StatusFlags.ShieldsUp); dataModel.Ship.Systems.FlightAssistActive = !Has(StatusFlags.FlightAssistOff); dataModel.Ship.Systems.LightsActive = Has(StatusFlags.PilotingMainShip) && Has(StatusFlags.LightsOn); dataModel.Ship.Systems.SilentRunningActive = Has(StatusFlags.SilentRunning); dataModel.Ship.Systems.IsOverheating = Has(StatusFlags.Overheating); dataModel.Ship.IsInDanger = Has(StatusFlags.InDanger); dataModel.Ship.IsBeingInterdicted = Has(StatusFlags.BeingInterdicted); // Ship power dataModel.Ship.Systems.SystemPips = status.Pips[0] / 2f; dataModel.Ship.Systems.EnginePips = status.Pips[1] / 2f; dataModel.Ship.Systems.WeaponPips = status.Pips[2] / 2f; // Ship FSD dataModel.Ship.FSD.IsCharging = Has(StatusFlags.FSDCharging); dataModel.Ship.FSD.IsJumping = Has(StatusFlags.FSDJump); dataModel.Ship.FSD.IsCoolingDown = Has(StatusFlags.FSDCooldown); dataModel.Ship.FSD.IsMassLocked = Has(StatusFlags.FSDMassLocked); // Ship fuel dataModel.Ship.Fuel.FuelMain = status.Fuel.FuelMain; dataModel.Ship.Fuel.FuelReservoir = status.Fuel.FuelReservoir; dataModel.Ship.Fuel.IsLow = Has(StatusFlags.LowFuel); dataModel.Ship.Fuel.IsScooping = Has(StatusFlags.FuelScooping); // SRV dataModel.SRV.HandbrakeActive = Has(StatusFlags.SRVHandbrake); dataModel.SRV.TurretViewActive = Has(StatusFlags.SRVTurretView); dataModel.SRV.TurretRetracted = Has(StatusFlags.SRVTurretRetracted); dataModel.SRV.DriveAssistActive = Has(StatusFlags.SRVDriveAssist); dataModel.SRV.LightsActive = Has(StatusFlags.PilotingSRV) && Has(StatusFlags.LightsOn); dataModel.SRV.HighBeamActive = Has(StatusFlags.SRVHighBeam); }
public void ApplyUpdate(EliteDangerousDataModel model) { model.SRV.Docked.Trigger(); }