Table of Contents

Class VesselComponent

Namespace
KSP.Sim.impl
Assembly
Assembly-CSharp.dll
public class VesselComponent : ObjectComponent, IGuidIdentity, IPhysicsOwner, IWorldLabelData
Inheritance
VesselComponent
Implements
Inherited Members
Extension Methods

Constructors

VesselComponent()

public VesselComponent()

VesselComponent(AssemblyDefinition, UniverseModel)

public VesselComponent(AssemblyDefinition vesselDefinition, UniverseModel universeModel)

Parameters

vesselDefinition AssemblyDefinition
universeModel UniverseModel

Fields

OriginalLaunchLocation

public OABProvider.LaunchLocation OriginalLaunchLocation

Field Value

OABProvider.LaunchLocation

displaylandedAt

public string displaylandedAt

Field Value

string

landedAt

public string landedAt

Field Value

string

landedAtLast

public string landedAtLast

Field Value

string

lastOrbitalVel

public Vector lastOrbitalVel

Field Value

Vector

lastSurfaceVel

public Vector lastSurfaceVel

Field Value

Vector

Properties

AccelerationOrbital

public Vector AccelerationOrbital { get; }

Property Value

Vector

AccelerationOrbitalSmoothed

public Vector AccelerationOrbitalSmoothed { get; }

Property Value

Vector

AccelerationSurface

public Vector AccelerationSurface { get; }

Property Value

Vector

AccelerationSurfaceSmoothed

public Vector AccelerationSurfaceSmoothed { get; }

Property Value

Vector

AllCrewCamerasInVessel

public List<(Camera, int)> AllCrewCamerasInVessel { get; }

Property Value

List<(Camera, int)>

AltitudeFromRadius

public double AltitudeFromRadius { get; }

Property Value

double

AltitudeFromScenery

public double AltitudeFromScenery { get; }

Property Value

double

AltitudeFromSeaLevel

public double AltitudeFromSeaLevel { get; }

Property Value

double

AltitudeFromSurface

public double AltitudeFromSurface { get; }

Property Value

double

AltitudeFromTerrain

public double AltitudeFromTerrain { get; }

Property Value

double

AngularVelocity

public AngularVelocity AngularVelocity { get; }

Property Value

AngularVelocity

AngularVelocityMassAvg

public AngularVelocity AngularVelocityMassAvg { get; }

Property Value

AngularVelocity

AtmDensity

public double AtmDensity { get; }

Property Value

double

AtmosphericTemperature

public double AtmosphericTemperature { get; }

Property Value

double

Autopilot

public VesselAutopilot Autopilot { get; set; }

Property Value

VesselAutopilot

AutopilotStatus

public AutopilotStatus AutopilotStatus { get; }

Property Value

AutopilotStatus

CenterOfMass

public Position CenterOfMass { get; }

Property Value

Position

ControlStatus

public VesselControlState ControlStatus { get; }

Property Value

VesselControlState

ControlTransform

public ITransformModel ControlTransform { get; }

Property Value

ITransformModel

CurrentCoM

public Vector3 CurrentCoM { get; }

Property Value

Vector3

DefinitionType

[TypeConverterIgnore]
public override Type DefinitionType { get; }

Property Value

Type

DistanceToSun

public double DistanceToSun { get; }

Property Value

double

DragCoefficient

public double DragCoefficient { get; }

Property Value

double

DynamicPressure_kPa

public double DynamicPressure_kPa { get; }

Property Value

double

ExposedArea

public double ExposedArea { get; }

Property Value

double

ExternalTemperature

public double ExternalTemperature { get; }

Property Value

double

FuelPercentage

public double FuelPercentage { get; }

Property Value

double

HasCommandModule

public bool HasCommandModule { get; }

Property Value

bool

HasLaunched

public bool HasLaunched { get; }

Property Value

bool

HasLaunchedOrTeleported

public bool HasLaunchedOrTeleported { get; }

Property Value

bool

HasTargetObject

public bool HasTargetObject { get; }

Property Value

bool

HasTeleported

public bool HasTeleported { get; }

Property Value

bool

Heading

public double Heading { get; }

Property Value

double

HorizontalSrfSpeed

public double HorizontalSrfSpeed { get; }

Property Value

double

IsAeroActive

public bool IsAeroActive { get; }

Property Value

bool

IsControllable

public bool IsControllable { get; }

Property Value

bool

IsFlying

public bool IsFlying { get; }

Property Value

bool

IsInAtmosphere

public bool IsInAtmosphere { get; }

Property Value

bool

IsKerbalEVA

public bool IsKerbalEVA { get; set; }

Property Value

bool

IsOrbitalPhysicsUnderThrustActive

public bool IsOrbitalPhysicsUnderThrustActive { get; }

Property Value

bool

IsRCSEnabled

public bool IsRCSEnabled { get; set; }

Property Value

bool

IsVesselRecoverable

public bool IsVesselRecoverable { get; }

Property Value

bool

LabelCategory

public LabelCategory LabelCategory { get; }

Property Value

LabelCategory

LabelPosition

public Position LabelPosition { get; }

Property Value

Position

Landed

public bool Landed { get; set; }

Property Value

bool

LandedOrSplashed

public bool LandedOrSplashed { get; }

Property Value

bool

Latitude

public double Latitude { get; }

Property Value

double

LoadedFromSave

public bool LoadedFromSave { get; }

Property Value

bool

Longitude

public double Longitude { get; }

Property Value

double

MOI

public Vector MOI { get; }

Property Value

Vector

MachNumber

public double MachNumber { get; }

Property Value

double

OffsetToGround

public float OffsetToGround { get; }

Property Value

float

Orbit

[TypeConverterIgnore]
public PatchedConicsOrbit Orbit { get; }

Property Value

PatchedConicsOrbit

OrbitalSpeed

public double OrbitalSpeed { get; }

Property Value

double

OrbitalVelocity

public Vector OrbitalVelocity { get; }

Property Value

Vector

Orbiter

[TypeConverterIgnore]
public OrbiterComponent Orbiter { get; }

Property Value

OrbiterComponent

Perturbation

public Vector Perturbation { get; }

Property Value

Vector

PerturbationSmoothed

public Vector PerturbationSmoothed { get; }

Property Value

Vector

Physics

public PhysicsMode Physics { get; }

Property Value

PhysicsMode

Pitch_HorizonRelative

public double Pitch_HorizonRelative { get; }

Property Value

double

ReEntryMaximumFlux

public double ReEntryMaximumFlux { get; }

Property Value

double

Roll_HorizonRelative

public double Roll_HorizonRelative { get; }

Property Value

double

Situation

public VesselSituations Situation { get; }

Property Value

VesselSituations

SoundSpeed

public double SoundSpeed { get; }

Property Value

double

Splashed

public bool Splashed { get; set; }

Property Value

bool

SrfSpeedMagnitude

public double SrfSpeedMagnitude { get; }

Property Value

double

StageFuelPercentage

public double StageFuelPercentage { get; }

Property Value

double

StateType

[TypeConverterIgnore]
public override Type StateType { get; }

Property Value

Type

StaticPressure_kPa

public double StaticPressure_kPa { get; }

Property Value

double

SurfaceVelocity

public Vector SurfaceVelocity { get; }

Property Value

Vector

TargetObject

public SimulationObjectModel TargetObject { get; }

Property Value

SimulationObjectModel

TargetObjectId

public IGGuid TargetObjectId { get; }

Property Value

IGGuid

TargetSpeed

public double TargetSpeed { get; }

Property Value

double

TargetVelocity

public Vector TargetVelocity { get; }

Property Value

Vector

TimeSinceLaunch

public double TimeSinceLaunch { get; }

Property Value

double

TotalCommandCrewCapacity

public int TotalCommandCrewCapacity { get; }

Property Value

int

TravelObjectId

public IGGuid TravelObjectId { get; }

Property Value

IGGuid

Type

[TypeConverterIgnore]
public override Type Type { get; }

Property Value

Type

Velocity

public Velocity Velocity { get; }

Property Value

Velocity

VelocityMassAvg

public Velocity VelocityMassAvg { get; }

Property Value

Velocity

VerticalSrfSpeed

public double VerticalSrfSpeed { get; }

Property Value

double

VerticalSrfSpeedMagnitude

public double VerticalSrfSpeedMagnitude { get; }

Property Value

double

VesselDeltaV

[TypeConverterIgnore]
public VesselDeltaVComponent VesselDeltaV { get; }

Property Value

VesselDeltaVComponent

ViewObjectComponentType

[TypeConverterIgnore]
public override Type ViewObjectComponentType { get; }

Property Value

Type

Yaw_HorizonRelative

public double Yaw_HorizonRelative { get; }

Property Value

double

Zenith

public double Zenith { get; }

Property Value

double

altimeterMode

public AltimeterDisplayMode altimeterMode { get; }

Property Value

AltimeterDisplayMode

angularMomentum

public AngularVelocity angularMomentum { get; }

Property Value

AngularVelocity

convectiveCoefficient

public double convectiveCoefficient { get; }

Property Value

double

convectiveMachFlux

public double convectiveMachFlux { get; }

Property Value

double

directSunlight

public bool directSunlight { get; }

Property Value

bool

flightControlsMode

public FlightControlsMode flightControlsMode { get; }

Property Value

FlightControlsMode

flightCtrlState

public FlightCtrlState flightCtrlState { get; }

Property Value

FlightCtrlState

frameWasRotating

public bool frameWasRotating { get; }

Property Value

bool

geeForce

public double geeForce { get; }

Property Value

double

geeForce_immediate

public double geeForce_immediate { get; }

Property Value

double

graviticAcceleration

public Vector graviticAcceleration { get; }

Property Value

Vector

gravityForPos

public Vector gravityForPos { get; }

Property Value

Vector

gravityMultiplier

public double gravityMultiplier { get; }

Property Value

double

gravityTrue

public Vector gravityTrue { get; }

Property Value

Vector

justLaunched

public bool justLaunched { get; set; }

Property Value

bool

landedAtBase

public string landedAtBase { get; }

Property Value

string

landedAtBaseTime

public double landedAtBaseTime { get; }

Property Value

double

launchTime

public double launchTime { get; }

Property Value

double

mainBody

public CelestialBodyComponent mainBody { get; }

Property Value

CelestialBodyComponent

solarFlux

public double solarFlux { get; }

Property Value

double

specificAcceleration

public double specificAcceleration { get; }

Property Value

double

speedMode

public SpeedDisplayMode speedMode { get; }

Property Value

SpeedDisplayMode

state

public VesselStatus state { get; }

Property Value

VesselStatus

totalMass

public double totalMass { get; }

Property Value

double

waterOffset

public double waterOffset { get; }

Property Value

double

Methods

ActivateNextStage()

public void ActivateNextStage()

AddActionToActionGroup(ModuleActionGroupAction, KSPActionGroup)

public bool AddActionToActionGroup(ModuleActionGroupAction action, KSPActionGroup group)

Parameters

action ModuleActionGroupAction
group KSPActionGroup

Returns

bool

AddPartCamerasToVesselCameraList(IGGuid, List<(Camera, int)>)

public void AddPartCamerasToVesselCameraList(IGGuid partGuid, List<(Camera, int)> updatedPartCameras)

Parameters

partGuid IGGuid
updatedPartCameras List<(Camera, int)>

AddSubVesselData(SubVesselData)

public void AddSubVesselData(VesselComponent.SubVesselData subVesselData)

Parameters

subVesselData VesselComponent.SubVesselData

ApplyFlightCtrlState(FlightCtrlStateIncremental)

public void ApplyFlightCtrlState(FlightCtrlStateIncremental stateDiff)

Parameters

stateDiff FlightCtrlStateIncremental

CalculateConvectiveCoefficient()

protected virtual double CalculateConvectiveCoefficient()

Returns

double

CalculateConvectiveCoefficientMach()

protected virtual double CalculateConvectiveCoefficientMach()

Returns

double

CalculateConvectiveCoefficientNewtonian()

protected virtual double CalculateConvectiveCoefficientNewtonian()

Returns

double

CalculateVesselElectricity()

public double CalculateVesselElectricity()

Returns

double

CalculateVesselFuel()

public double CalculateVesselFuel()

Returns

double

CalculateVesselStageFuel()

public double CalculateVesselStageFuel()

Returns

double

ClearTarget()

public void ClearTarget()

Debug_TeleportToOrbit(string)

public void Debug_TeleportToOrbit(string celestialBodyGuid)

Parameters

celestialBodyGuid string

Debug_TeleportToOrbit(string, double, double, double, double, double, double, double)

public void Debug_TeleportToOrbit(string celestialBodyGuid, double inclination, double eccentricity, double semiMajorAxis, double longitudeOfAscendingNode, double argumentOfPeriapsis, double meanAnomalyAtEpoch, double epoch)

Parameters

celestialBodyGuid string
inclination double
eccentricity double
semiMajorAxis double
longitudeOfAscendingNode double
argumentOfPeriapsis double
meanAnomalyAtEpoch double
epoch double

Debug_TeleportToRendezvous(SimulationObjectModel, Vector3d, Vector3d)

public void Debug_TeleportToRendezvous(SimulationObjectModel targetObject, Vector3d offset, Vector3d rotationDeg)

Parameters

targetObject SimulationObjectModel
offset Vector3d
rotationDeg Vector3d

Debug_TeleportToSurface(string)

public void Debug_TeleportToSurface(string celestialBodyGuid)

Parameters

celestialBodyGuid string

Debug_TeleportToSurface(string, double, double, double, double)

public void Debug_TeleportToSurface(string celestialBodyGuid, double altitude, double latitude, double longitude, double localVerticalSpeed)

Parameters

celestialBodyGuid string
altitude double
latitude double
longitude double
localVerticalSpeed double

EnsureValidPortraitViews()

public void EnsureValidPortraitViews()

GetActionGroupPartCount(KSPActionGroup)

public int GetActionGroupPartCount(KSPActionGroup group)

Parameters

group KSPActionGroup

Returns

int

GetActionGroupState(KSPActionGroup)

public KSPActionGroupState GetActionGroupState(KSPActionGroup group)

Parameters

group KSPActionGroup

Returns

KSPActionGroupState

GetAllVesselTravelIds()

public List<IGGuid> GetAllVesselTravelIds()

Returns

List<IGGuid>

GetControlOwner()

public PartComponent GetControlOwner()

Returns

PartComponent

GetDecouplerCount()

public int GetDecouplerCount()

Returns

int

GetDefinition()

public override object GetDefinition()

Returns

object

GetEndBurnOrbit()

public IPatchedOrbit GetEndBurnOrbit()

Returns

IPatchedOrbit

GetState()

public override object GetState()

Returns

object

HasControlForEditingManeuvers()

public bool HasControlForEditingManeuvers()

Returns

bool

HasControlForEditingStagingStack()

public bool HasControlForEditingStagingStack()

Returns

bool

HasControlForManualYawPitchRoll()

public bool HasControlForManualYawPitchRoll()

Returns

bool

HasControlForThrottleDelta()

public bool HasControlForThrottleDelta()

Returns

bool

HasControlForThrottleMinMax()

public bool HasControlForThrottleMinMax()

Returns

bool

IsChildOfInertialReferenceFrame()

public bool IsChildOfInertialReferenceFrame()

Returns

bool

IsDebris()

public bool IsDebris()

Returns

bool

IsUnderAcceleration()

public bool IsUnderAcceleration()

Returns

bool

IsUnderEngineThrust()

public bool IsUnderEngineThrust()

Returns

bool

IsVesselAtRest()

public bool IsVesselAtRest()

Returns

bool

LastPartActivated()

public PartComponent LastPartActivated()

Returns

PartComponent

LoadedFromSaveFile()

public void LoadedFromSaveFile()

NotifyInsufficientVesselControl()

public void NotifyInsufficientVesselControl()

OnAdded(SimulationObjectModel, double)

public override void OnAdded(SimulationObjectModel simulationObject, double universalTime)

Parameters

simulationObject SimulationObjectModel
universalTime double

OnFixedUpdate(double, double)

public override void OnFixedUpdate(double universalTime, double deltaUniversalTime)

Parameters

universalTime double
deltaUniversalTime double

OnLateUpdate(double)

public override void OnLateUpdate(double universalTime)

Parameters

universalTime double

OnRemoved(SimulationObjectModel, double)

public override void OnRemoved(SimulationObjectModel simulationObject, double universalTime)

Parameters

simulationObject SimulationObjectModel
universalTime double

OnStart(double)

public override void OnStart(double universalTime)

Parameters

universalTime double

OnUpdate(double, double)

public override void OnUpdate(double universalTime, double deltaUniversalTime)

Parameters

universalTime double
deltaUniversalTime double

ParentToInertialReferenceFrame()

public void ParentToInertialReferenceFrame()

RebuildActionGroups()

public void RebuildActionGroups()

RecalculateFuel()

public void RecalculateFuel()

RecoverVessel(IGGuid)

public void RecoverVessel(IGGuid recoveryLocation)

Parameters

recoveryLocation IGGuid

RefreshFuelPercentages()

public void RefreshFuelPercentages()

RemoveActionFromActionGroup(ModuleActionGroupAction, KSPActionGroup)

public bool RemoveActionFromActionGroup(ModuleActionGroupAction action, KSPActionGroup group)

Parameters

action ModuleActionGroupAction
group KSPActionGroup

Returns

bool

RemoveSubVesselData(SubVesselData)

public bool RemoveSubVesselData(VesselComponent.SubVesselData subVesselData)

Parameters

subVesselData VesselComponent.SubVesselData

Returns

bool

RevealAltitude()

public double RevealAltitude()

Returns

double

RevealDisplayName()

public string RevealDisplayName()

Returns

string

RevealMass()

public float RevealMass()

Returns

float

RevealName()

public string RevealName()

Returns

string

RevealSituationString()

public string RevealSituationString()

Returns

string

RevealSpeed()

public double RevealSpeed()

Returns

double

RevealType()

public string RevealType()

Returns

string

SendPortaitViewsToUIOnVesselChange(MessageCenterMessage)

public void SendPortaitViewsToUIOnVesselChange(MessageCenterMessage msm)

Parameters

msm MessageCenterMessage

SetActionGroup(KSPActionGroup, bool)

public void SetActionGroup(KSPActionGroup group, bool newState)

Parameters

group KSPActionGroup
newState bool

SetAutopilotEnableDisable(bool)

public bool SetAutopilotEnableDisable(bool state)

Parameters

state bool

Returns

bool

SetAutopilotMode(AutopilotMode)

public bool SetAutopilotMode(AutopilotMode mode)

Parameters

mode AutopilotMode

Returns

bool

SetAutopilotState()

public void SetAutopilotState()

SetControlOwner(PartComponent)

public void SetControlOwner(PartComponent part)

Parameters

part PartComponent

SetControlOwnerToDefault()

public void SetControlOwnerToDefault()

SetDefinition(object)

public override void SetDefinition(object definitionData)

Parameters

definitionData object

SetFlightControlState(FlightCtrlState, bool)

public void SetFlightControlState(FlightCtrlState state, bool isRemote = false)

Parameters

state FlightCtrlState
isRemote bool

SetLandedAtBase(string)

public void SetLandedAtBase(string baseID)

Parameters

baseID string

SetModelPhysicsMode(PhysicsMode)

public void SetModelPhysicsMode(PhysicsMode physics)

Parameters

physics PhysicsMode

SetState(object, ISimulationModelMap)

public override object SetState(object stateData, ISimulationModelMap modelMap)

Parameters

stateData object
modelMap ISimulationModelMap

Returns

object

SetTargetByID(IGGuid)

public bool SetTargetByID(IGGuid targetId)

Parameters

targetId IGGuid

Returns

bool

SyncFlightControlState(FlightCtrlState, bool)

public void SyncFlightControlState(FlightCtrlState state, bool isRemote = false)

Parameters

state FlightCtrlState
isRemote bool

ToString()

public override string ToString()

Returns

string

TriggerActionGroup(KSPActionGroup)

public void TriggerActionGroup(KSPActionGroup group)

Parameters

group KSPActionGroup

TryGetSubVesselDataByAttachPartId(IGGuid, out SubVesselData)

public bool TryGetSubVesselDataByAttachPartId(IGGuid attachPartId, out VesselComponent.SubVesselData result)

Parameters

attachPartId IGGuid
result VesselComponent.SubVesselData

Returns

bool

TryGetSubVesselDataByRootPartId(IGGuid, out SubVesselData)

public bool TryGetSubVesselDataByRootPartId(IGGuid rootPartId, out VesselComponent.SubVesselData result)

Parameters

rootPartId IGGuid
result VesselComponent.SubVesselData

Returns

bool

TryRemoveLiveCamerasFromVessel(IGGuid)

public bool TryRemoveLiveCamerasFromVessel(IGGuid partGuid)

Parameters

partGuid IGGuid

Returns

bool

ValidateState(object, ISimulationModelMap)

public override bool ValidateState(object stateData, ISimulationModelMap simulationModelMap)

Parameters

stateData object
simulationModelMap ISimulationModelMap

Returns

bool

Events

OnHasTargetChanged

public event Action<bool> OnHasTargetChanged

Event Type

Action<bool>

OnLiveCamerasUpdated

public event Action<IReadOnlyList<(Camera, int)>> OnLiveCamerasUpdated

Event Type

Action<IReadOnlyList<(Camera Camera, int SeatIndex)>>

OnOrbitalPhysicsUnderThrustEnd

public event Action OnOrbitalPhysicsUnderThrustEnd

Event Type

Action

OnOrbitalPhysicsUnderThrustStart

public event Action OnOrbitalPhysicsUnderThrustStart

Event Type

Action

OnTargetObjectChanged

public event Action<SimulationObjectModel> OnTargetObjectChanged

Event Type

Action<SimulationObjectModel>

PhysicsChanged

public event Action<PhysicsMode> PhysicsChanged

Event Type

Action<PhysicsMode>

altimeterModeChanged

public event Action<AltimeterDisplayMode> altimeterModeChanged

Event Type

Action<AltimeterDisplayMode>

flightControlsModeChanged

public event Action<FlightControlsMode> flightControlsModeChanged

Event Type

Action<FlightControlsMode>

landedSituationChanged

public event Action<bool, bool> landedSituationChanged

Event Type

Action<bool, bool>

speedModeChanged

public event Action<SpeedDisplayMode> speedModeChanged

Event Type

Action<SpeedDisplayMode>