Table of Contents

Class PartComponent

Namespace
KSP.Sim.impl
Assembly
Assembly-CSharp.dll
public class PartComponent : ObjectComponent, IGuidIdentity, IFlowNode, IDeltaVPart, IEquatable<IDeltaVPart>
Inheritance
PartComponent
Implements
Inherited Members
Extension Methods

Constructors

PartComponent()

public PartComponent()

PartComponent(PartDefinition, UniverseModel)

public PartComponent(PartDefinition partDefinition, UniverseModel universeModel)

Parameters

partDefinition PartDefinition
universeModel UniverseModel

Fields

AssemblySizeTypeDiameters

public List<float> AssemblySizeTypeDiameters

Field Value

List<float>

Modules

public DictionaryValueList<Type, PartComponentModule> Modules

Field Value

DictionaryValueList<Type, PartComponentModule>

ThermalData

public ThermalData ThermalData

Field Value

ThermalData

Properties

ActivationStage

public int ActivationStage { get; set; }

Property Value

int

AllowKinematicPhysicsIfIntersectTerrain

public bool AllowKinematicPhysicsIfIntersectTerrain { get; }

Property Value

bool

AtmDensity

public double AtmDensity { get; }

Property Value

double

AtmDensityASL

public double AtmDensityASL { get; }

Property Value

double

AtmosphericTemperature

public double AtmosphericTemperature { get; }

Property Value

double

AtmosphericTemperatureASL

public double AtmosphericTemperatureASL { get; }

Property Value

double

BreakingForce

public double BreakingForce { get; set; }

Property Value

double

BreakingTorque

public double BreakingTorque { get; set; }

Property Value

double

CenterOfLift

public Position CenterOfLift { get; }

Property Value

Position

CenterOfLiftOffset

public Vector3d CenterOfLiftOffset { get; }

Property Value

Vector3d

CenterOfMass

public Position CenterOfMass { get; set; }

Property Value

Position

CenterOfMassOffset

public Vector3d CenterOfMassOffset { get; }

Property Value

Vector3d

Containers

public IResourceContainer[] Containers { get; }

Property Value

IResourceContainer[]

ControlTransform

public ITransformModel ControlTransform { get; }

Property Value

ITransformModel

CrashTolerance

public float CrashTolerance { get; set; }

Property Value

float

DecoupleStage

public int DecoupleStage { get; set; }

Property Value

int

DefinitionType

[TypeConverterIgnore]
public override Type DefinitionType { get; }

Property Value

Type

DeltaVChildren

public IEnumerable<IDeltaVPart> DeltaVChildren { get; }

Property Value

IEnumerable<IDeltaVPart>

DeltaVContainers

public IResourceContainer[] DeltaVContainers { get; }

Property Value

IResourceContainer[]

DryMass

public double DryMass { get; }

Property Value

double

ExplosionPotential

public float ExplosionPotential { get; }

Property Value

float

FuelCrossfeed

public bool FuelCrossfeed { get; set; }

Property Value

bool

GreenMass

public double GreenMass { get; }

Property Value

double

IsActiveInStaging

public bool IsActiveInStaging { get; set; }

Property Value

bool

IsAeroActive

public bool IsAeroActive { get; }

Property Value

bool

IsCompound

public bool IsCompound { get; }

Property Value

bool

IsDamaged

public bool IsDamaged { get; set; }

Property Value

bool

IsSymmetryMirrored

public bool IsSymmetryMirrored { get; }

Property Value

bool

IsValidInSim

public override bool IsValidInSim { get; }

Property Value

bool

LegacyModuleData

public List<Dictionary<string, object>> LegacyModuleData { get; }

Property Value

List<Dictionary<string, object>>

LiquidAngularDragScalar

public double LiquidAngularDragScalar { get; set; }

Property Value

double

LiquidDragScalar

public double LiquidDragScalar { get; set; }

Property Value

double

MaxTemp

public double MaxTemp { get; set; }

Property Value

double

OnDecoupled

public DecouplePartEvent OnDecoupled { get; set; }

Property Value

DecouplePartEvent

Parent

public IDeltaVPart Parent { get; }

Property Value

IDeltaVPart

ParentPart

public PartComponent ParentPart { get; }

Property Value

PartComponent

PartCelestialBody

public CelestialBodyComponent PartCelestialBody { get; }

Property Value

CelestialBodyComponent

PartData

public PartData PartData { get; }

Property Value

PartData

PartName

public string PartName { get; }

Property Value

string

PartOwner

public PartOwnerComponent PartOwner { get; }

Property Value

PartOwnerComponent

PartResourceContainer

public ResourceContainer PartResourceContainer { get; }

Property Value

ResourceContainer

PartResourceFlowRequestBroker

public ResourceFlowRequestBroker PartResourceFlowRequestBroker { get; }

Property Value

ResourceFlowRequestBroker

PhysicsMass

public double PhysicsMass { get; }

Property Value

double

PhysicsMode

public PartPhysicsModes PhysicsMode { get; set; }

Property Value

PartPhysicsModes

ResourceMass

public double ResourceMass { get; }

Property Value

double

ResourceThermalMass

public double ResourceThermalMass { get; }

Property Value

double

Splashed

public bool Splashed { get; set; }

Property Value

bool

StateType

[TypeConverterIgnore]
public override Type StateType { get; }

Property Value

Type

StaticPressureAtm

public float StaticPressureAtm { get; }

Property Value

float

StaticPressureAtmASL

public float StaticPressureAtmASL { get; }

Property Value

float

Status

public PartStatus Status { get; }

Property Value

PartStatus

SurfaceAttachmentsToMe

public List<AttachNodeData> SurfaceAttachmentsToMe { get; }

Property Value

List<AttachNodeData>

SymmetrySet

public SymmetrySet SymmetrySet { get; set; }

Property Value

SymmetrySet

Temperature

public double Temperature { get; set; }

Property Value

double

ThermalMass

public double ThermalMass { get; }

Property Value

double

TotalMass

public double TotalMass { get; }

Property Value

double

Type

[TypeConverterIgnore]
public override Type Type { get; }

Property Value

Type

ViewObjectComponentType

[TypeConverterIgnore]
public override Type ViewObjectComponentType { get; }

Property Value

Type

WetMass

public double WetMass { get; }

Property Value

double

WettedArea

public double WettedArea { get; set; }

Property Value

double

atmDensity

public double atmDensity { get; }

Property Value

double

decimatedChildParts

public List<PartBehavior> decimatedChildParts { get; set; }

Property Value

List<PartBehavior>

dragCoefficient

public double dragCoefficient { get; }

Property Value

double

dynamicPressureAtm

public double dynamicPressureAtm { get; }

Property Value

double

dynamicPressurekPa

public double dynamicPressurekPa { get; }

Property Value

double

isDecimated

public bool isDecimated { get; set; }

Property Value

bool

machNumber

public double machNumber { get; }

Property Value

double

maximum_drag

public float maximum_drag { get; set; }

Property Value

float

minimum_drag

public float minimum_drag { get; set; }

Property Value

float

partProperties

[Obsolete("Please use PartData instead")]
public PartProperties partProperties { get; }

Property Value

PartProperties

soundSpeed

public double soundSpeed { get; }

Property Value

double

staticPressureAtm

public double staticPressureAtm { get; }

Property Value

double

staticPressurekPa

public double staticPressurekPa { get; }

Property Value

double

Methods

AddNodeAttachment(AttachNodeData)

public bool AddNodeAttachment(AttachNodeData newAttachNodeData)

Parameters

newAttachNodeData AttachNodeData

Returns

bool

ClearAllAttachments()

public void ClearAllAttachments()

ClearNodeAttachment(string)

public bool ClearNodeAttachment(string nodeID)

Parameters

nodeID string

Returns

bool

ClearPendingPromotion()

public void ClearPendingPromotion()

DestroyPart(ExplosionType)

public void DestroyPart(ExplosionType explosionType)

Parameters

explosionType ExplosionType

Equals(IDeltaVPart)

public bool Equals(IDeltaVPart other)

Parameters

other IDeltaVPart

Returns

bool

FindAttachNodeAttachedPart(string)

public IDeltaVPart FindAttachNodeAttachedPart(string nodeName)

Parameters

nodeName string

Returns

IDeltaVPart

FindAttachmentTo(PartComponent, string)

public AttachNodeData FindAttachmentTo(PartComponent otherPart, string otherPartNodeID)

Parameters

otherPart PartComponent
otherPartNodeID string

Returns

AttachNodeData

FindAttachmentsTo(PartComponent, ref List<AttachNodeData>)

public void FindAttachmentsTo(PartComponent otherPart, ref List<AttachNodeData> results)

Parameters

otherPart PartComponent
results List<AttachNodeData>

FindInternalSeat(int)

public IInternalSeat FindInternalSeat(int index)

Parameters

index int

Returns

IInternalSeat

FindNodeAttachmentsOfType(AttachNodeType)

public List<AttachNodeData> FindNodeAttachmentsOfType(AttachNodeType nodeType)

Parameters

nodeType AttachNodeType

Returns

List<AttachNodeData>

GetAllAttachments()

public IEnumerable<AttachNodeData> GetAllAttachments()

Returns

IEnumerable<AttachNodeData>

GetAttachments()

public IEnumerable<AttachNodeData> GetAttachments()

Returns

IEnumerable<AttachNodeData>

GetDefinition()

public override object GetDefinition()

Returns

object

GetNodeAttachment(string, bool)

public AttachNodeData GetNodeAttachment(string attachmentNodeId, bool logWarning = true)

Parameters

attachmentNodeId string
logWarning bool

Returns

AttachNodeData

GetPartBoundCoords()

public Vector3d[] GetPartBoundCoords()

Returns

Vector3d[]

GetState()

public override object GetState()

Returns

object

ModuleActiveUpdated()

public void ModuleActiveUpdated()

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

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

RemoveNodeAttachment(string)

public bool RemoveNodeAttachment(string nodeID)

Parameters

nodeID string

Returns

bool

SetAsVesselControl()

public bool SetAsVesselControl()

Returns

bool

SetAttachNodeState(List<AttachNodeState>, ISimulationModelMap)

public void SetAttachNodeState(List<AttachNodeState> attachNodeStates, ISimulationModelMap simulationModelMap)

Parameters

attachNodeStates List<AttachNodeState>
simulationModelMap ISimulationModelMap

SetControlTransform(Vector3, Vector3, string)

public void SetControlTransform(Vector3 position, Vector3 orientation, string cpId)

Parameters

position Vector3
orientation Vector3
cpId string

SetDefinition(object)

public override void SetDefinition(object definitionData)

Parameters

definitionData object

SetNodeAttachment(string, PartComponent, string)

public bool SetNodeAttachment(string nodeID, PartComponent otherPart, string otherPartNodeID)

Parameters

nodeID string
otherPart PartComponent
otherPartNodeID string

Returns

bool

SetPartOwner(PartOwnerComponent, bool, bool)

public List<PartComponent> SetPartOwner(PartOwnerComponent newPartOwner, bool isRecursive, bool ignoreChildrenOfCompoundParts = false)

Parameters

newPartOwner PartOwnerComponent
isRecursive bool
ignoreChildrenOfCompoundParts bool

Returns

List<PartComponent>

SetPendingPromotion(IGGuid, IGGuid)

public void SetPendingPromotion(IGGuid promotionGuid, IGGuid subVesselDataId)

Parameters

promotionGuid IGGuid
subVesselDataId IGGuid

SetStageIndex(int, bool)

public void SetStageIndex(int value, bool notifyStaging)

Parameters

value int
notifyStaging bool

SetState(object, ISimulationModelMap)

public override object SetState(object stateData, ISimulationModelMap simulationModelMap)

Parameters

stateData object
simulationModelMap ISimulationModelMap

Returns

object

SubscribeOnPartActiveUpdate(Action<PartComponent, bool>)

public void SubscribeOnPartActiveUpdate(Action<PartComponent, bool> action)

Parameters

action Action<PartComponent, bool>

TriggerPartExplosionEvent(FXContextualEventParams)

public void TriggerPartExplosionEvent(FXContextualEventParams data)

Parameters

data FXContextualEventParams

TriggerWaterSplashEvent(WaterSplashEventData)

public void TriggerWaterSplashEvent(WaterSplashEventData data)

Parameters

data WaterSplashEventData

TryGetAttachment(string, out AttachNodeData)

public bool TryGetAttachment(string attachmentNodeId, out AttachNodeData attachNodeData)

Parameters

attachmentNodeId string
attachNodeData AttachNodeData

Returns

bool

TryGetModule(Type, out PartComponentModule)

public bool TryGetModule(Type moduleType, out PartComponentModule foundModule)

Parameters

moduleType Type
foundModule PartComponentModule

Returns

bool

TryGetModuleData<T, U>(out U)

public bool TryGetModuleData<T, U>(out U data) where T : PartComponentModule where U : ModuleData

Parameters

data U

Returns

bool

Type Parameters

T
U

TryGetModule<T>(out T)

public bool TryGetModule<T>(out T module) where T : PartComponentModule

Parameters

module T

Returns

bool

Type Parameters

T

TryGetPendingPromotion(out PendingPromotion)

public bool TryGetPendingPromotion(out PartComponent.PendingPromotion result)

Parameters

result PartComponent.PendingPromotion

Returns

bool

UnsubscribeOnPartActiveUpdate()

public void UnsubscribeOnPartActiveUpdate()

UpdateMass()

public void UpdateMass()

ValidateState(object, ISimulationModelMap)

public override bool ValidateState(object stateData, ISimulationModelMap simulationModelMap)

Parameters

stateData object
simulationModelMap ISimulationModelMap

Returns

bool

Events

PartExploded

public event Action<FXContextualEventParams> PartExploded

Event Type

Action<FXContextualEventParams>

WaterSplash

public event Action<WaterSplashEventData> WaterSplash

Event Type

Action<WaterSplashEventData>