KSP API
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | Properties | List of all members
Part Class Reference

Each part on a vessel is represented by a Part object. Plugins can add new functionality to parts by defining new PartModules, which can then be added to Parts. It is also possible to define new subclasses of Part, but this is deprecated in favor of PartModules. More...

Inheritance diagram for Part:
AtmosphericEngine Decoupler DecouplerGUI DockingPort FuelLine FuelTank FuelTankGUI

Public Types

enum  DragModel { DragModel.DEFAULT = 0, DragModel.CONIC = 1, DragModel.CYLINDRICAL = 2 }
 
enum  HighlightType { HighlightType.Disabled = 0, HighlightType.OnMouseOver = 1, HighlightType.AlwaysOn = 2 }
 
enum  PhysicalSignificance { PhysicalSignificance.FULL = 0, PhysicalSignificance.NONE = 1 }
 Represents whether a part has physics. More...
 

Public Member Functions

 Part ()
 
bool activate (int currentStage)
 
void addChild (Part child)
 
bool AddCrewmember (ProtoCrewMember crew)
 
InternalModel AddInternalPart (ConfigNode node)
 
PartModule AddModule (ConfigNode node)
 
PartModule AddModule (string moduleName)
 Add a PartModule to this part. PartModules that are dynamically added to parts and don't exist in the original part.cfg will not be properly restored from persistence. More...
 
void AddOnMouseDown (Part.OnActionDelegate method)
 
void AddOnMouseEnter (Part.OnActionDelegate method)
 
void AddOnMouseExit (Part.OnActionDelegate method)
 
PartResource AddResource (ConfigNode node)
 
bool CheckCollision (Collision c)
 
bool checkLanded ()
 
bool checkSplashed ()
 
void cleanReferencesFromOtherParts ()
 
void Couple (Part tgtPart)
 
void CreateInternalModel ()
 
void deactivate ()
 
void decouple (float breakForce=0f)
 
void DespawnAllCrew ()
 
void Die ()
 
void disconnect (bool controlledSeparation=false)
 
virtual bool DrainFuel (float amount)
 Deprecated. More...
 
void drawStats ()
 
void explode ()
 Calling this causes the part to explode. But you guessed that, didn't you? More...
 
AttachNode findAttachNode (string nodeId)
 Find an AttachNode by its name, as a string. More...
 
AttachNode findAttachNodeByPart (Part connectedPart)
 Given a child part of this part, find the AttachNode representing the connection between this part and that child. More...
 
AttachNode[] findAttachNodes (string partialNodeId)
 
FindChildPart< T > ()
 
FindChildPart< T > (bool recursive)
 
Part FindChildPart (string childName)
 
Part FindChildPart (string childName, bool recursive)
 
T[] FindChildParts< T > ()
 
T[] FindChildParts< T > (bool recursive)
 
virtual bool FindFuel (Part source, List< Part > fuelSources, uint reqId)
 
FXGroup findFxGroup (string groupID)
 
Animation[] FindModelAnimators ()
 
Animation[] FindModelAnimators (string clipName)
 
FindModelComponent< T > ()
 
FindModelComponent< T > (string childName)
 
T[] FindModelComponents< T > ()
 
T[] FindModelComponents< T > (string childName)
 
Transform FindModelTransform (string childName)
 
Transform[] FindModelTransforms (string childName)
 
void FindNonPhysicslessChildren (List< Part > parts)
 
void force_activate ()
 Activates the part now, regardless of when it was scheduled to be activated in the staging order. More...
 
void freeze ()
 
void GetConnectedResources (int resourceID, List< PartResource > resources)
 
float GetResourceMass ()
 The total mass of the resources held by the part. The total mass of the part is More...
 
Part getSymmetryCounterPart (int index)
 
void HandleCollision (Collision c)
 
bool hasIndirectChild (Part tgtPart)
 
bool hasIndirectParent (Part tgtPart)
 
bool isSymmetryCounterPart (Part cPart)
 
void LateUpdate ()
 
PartModule LoadModule (ConfigNode node, int moduleIndex)
 
void onAttach (Part parent, bool first=true)
 
virtual void onBackup ()
 
void OnCollisionEnter (Collision c)
 
void OnCollisionExit (Collision c)
 
void OnCollisionStay (Collision c)
 
void OnCopy (Part original, bool asSymCounterpart)
 
void OnDelete ()
 
void onDetach (bool first=true)
 
virtual void OnDrawStats ()
 
virtual void onFlightStateLoad (Dictionary< string, KSPParseable > parsedData)
 
virtual void onFlightStateSave (Dictionary< string, KSPParseable > partDataCollection)
 
void OnLiftOff ()
 
void OnLoad ()
 
void OnSplashDown ()
 
void OnTouchDown ()
 
void Pack ()
 
void propagateControlUpdate (FlightCtrlState st)
 
void removeChild (Part child)
 
void RemoveCrewmember (ProtoCrewMember crew)
 
void RemoveModule (PartModule module)
 
void RemoveOnMouseDown (Part.OnActionDelegate method)
 
void RemoveOnMouseEnter (Part.OnActionDelegate method)
 
void RemoveOnMouseExit (Part.OnActionDelegate method)
 
virtual bool RequestFuel (Part source, float amount, uint reqId)
 Deprecated. More...
 
virtual bool RequestRCS (float amount, int earliestStage)
 Deprecated. More...
 
double RequestResource (int resourceID, double demand)
 
float RequestResource (int resourceID, float demand)
 
double RequestResource (string resourceName, double demand)
 
float RequestResource (string resourceName, float demand)
 
void ResetCollisionIgnores ()
 
IEnumerator ResetJoints ()
 
void ResumeVelocity ()
 
void ScheduleSetCollisionIgnores ()
 
void SendEvent (string eventName)
 
void SendEvent (string eventName, BaseEventData data)
 
void SendEvent (string eventName, BaseEventData data, int maxDepth)
 
void SetCollisionIgnores ()
 
void SetDetectCollisions (bool setState)
 
void SetHierarchyRoot (Part root)
 
void SetHighlight (bool active)
 
void SetHighlightColor ()
 
void SetHighlightColor (Color color)
 
void SetHighlightDefault ()
 
void SetHighlightType (Part.HighlightType type)
 
void SetMirror (Vector3 mirrorVector)
 
void setOpacity (float opacity)
 
void setParent (Part p=null)
 
void SetResource (ConfigNode node)
 
void SpawnCrew ()
 
double TransferResource (int resourceID, double amount)
 
void Undock (DockedVesselInfo newVesselInfo)
 
void unfreeze ()
 
void Unpack ()
 
void UpdateOrgPosAndRot (Part newRoot)
 
delegate void OnActionDelegate (Part p)
 

Static Public Member Functions

static operator Part (GameObject o)
 
static Part FromGO (GameObject obj)
 
static T GetComponentUpwards< T > (GameObject obj)
 
static Component GetComponentUpwards (string type, GameObject obj)
 
static uint getFuelReqId ()
 

Public Attributes

bool ActivatesEvenIfDisconnected
 Whether this part will actually activate if it schedule to be activated in the same stage as it is decoupled from the rocket. In particular, sepratrons must have ActivatesEvenIfDisconnected set to true if they are to function properly. More...
 
Transform airlock
 
float angularDrag
 
Joint attachJoint
 
AttachNodeMethod attachMethod
 
AttachModes attachMode
 Whether this part is attached to its parent via a stack AttachNode or a surface AttachNode. More...
 
List< AttachNodeattachNodes
 An AttachNode represents the link between two attached parts. attachNodes is a list of possible nodes to which other parts can be attached to this part. You can find the parts that actually are attached using AttachNode.attachedPart. More...
 
AttachRules attachRules
 
Quaternion attRotation
 
float breakingForce
 
float breakingTorque
 
float buoyancy
 
Vector3 CenterOfBuoyancy
 
List< Partchildren
 The parts that are children of this part in the part tree (parts that were attached to this part in the editor after this part was already part of the vessel). More...
 
int childStageOffset
 
Collider collider
 
CollisionEnhancer collisionEnhancer
 
Vector3 CoMOffset
 
float crashTolerance
 
int CrewCapacity
 How many crew members this part can fit. More...
 
List< Collider > currentCollisions
 
string customPartData
 
int defaultInverseStage
 
Part.DragModel dragModel
 Unused? More...
 
string dragModelType
 Unused? More...
 
Vector3 dragReferenceVector
 
double dynamicPressureAtm
 
Part editorCollision
 
List< ParteditorLinks
 
float explosionPotential
 
uint flightID
 A unique identifider for this part. Note that despite the name, each part on the same vessel will still have a different value in this field. This value is persistent and not affected by game load or docking/undocking or similar. This is the 'uid' value at the PART level of the persistent.sfs file. More...
 
FlightIntegrator flightIntegrator
 
bool frozen
 
bool fuelCrossFeed
 Whether this part allows fuel crossfeed. More...
 
List< PartfuelLookupTargets
 In the flight scene, fuelLookupTargets is the list of fuel lines through which this part can draw fuel. Also if this part is a docking node docked to a another docking node through which it can draw fuel, then the attached docking node will also be in fuelLookupTargets. More...
 
List< FXGroup > fxGroups
 
bool GroundContact
 
bool hasHeiarchyModel
 
Color highlightColor
 
bool highlightRecurse
 
Part.HighlightType highlightType
 
string initialVesselName
 
int inStageIndex
 
InternalModel internalModel
 
string InternalModelName
 
int inverseStage
 The stage in which this part will activate, as shown in the staging display. (Possibly called inverseStage because the stages in KSP count down instead of up). More...
 
bool isClone
 
bool isControlSource
 
bool isMirrored
 
bool isPersistent
 
uint lastFuelRequestId
 
int manualStageOffset
 
float mass
 The DRY mass of this part, not including the mass of any resources it contains More...
 
float maximum_drag
 The drag coefficient of this part is equal to (total mass) * (maximum_drag) More...
 
float maxTemp
 The temperature at which this part will explode. More...
 
float minimum_drag
 Unused. More...
 
Vector3 mirrorAxis
 
Vector3 mirrorRefAxis
 
Vector3 mirrorVector
 
uint missionID
 A unique identifier assigned to the part when the vessel it is a part of is created. All parts on the vessel get the same missionID and it does not change. Splitting a vessel with a decoupler will result with two vessels whose parts have the same missionID. When two vessels spawned seperately dock, each part keeps its original missionID, undocking does not change this field either. More...
 
string NoCrossFeedNodeKey
 Specifies the name of a node through which this part will NOT draw resources. See the part.cfg of the stock tricoupler for an example of using this to prevent fuel from flowing backwards. More...
 
Callback OnEditorAttach
 Add a function to this callback and it will be called when your part is attached to another part in the editor. More...
 
Callback OnEditorDestroy
 Add a function to this callback and it will be called when your part is deleted in the editor. More...
 
Callback OnEditorDetach
 Add a function to this callback and it will be called when your part is detached, or is part of a set of parts that are detached, in the editor. More...
 
Callback OnJustAboutToBeDestroyed
 Add a function to this callback and it will be called when your part is about to be destroyed during flight. More...
 
Vector3 orgPos
 
Quaternion orgRot
 
int originalStage
 
bool packed
 
Part parent
 The parent of this part in the part tree: the part to which this part was attached in the editor. More...
 
PartBuoyancy partBuoyancy
 
AvailablePart partInfo
 Some of the part info that is displayed about this part in the editor. More...
 
string partName
 
Part.PhysicalSignificance physicalSignificance
 If physicalSignificance == Part.PhysicalSignificance.NONE, then this part doesn't actually have any physics. In particular, it has no mass, regardless of what its "mass" field is set to, and no drag. More...
 
int PhysicsSignificance
 Unused? More...
 
Part potentialParent
 
List< ProtoCrewMember > protoModuleCrew
 
ProtoPartSnapshot protoPartSnapshot
 
float rescaleFactor
 
PartStates ResumeState
 
float scaleFactor
 
AttachNode srfAttachNode
 IF this part is surface-attached to its parent, srfAttachNode is the attach node describing this connection. More...
 
VStackIcon stackIcon
 The sicon shown for this part in the staging display. More...
 
StackIconGrouping stackIconGrouping
 
int stackSymmetry
 
bool stageAfter
 
bool stageBefore
 
int stageOffset
 
string stagingIcon
 
bool started
 
double staticPressureAtm
 
Vector3 surfaceAreas
 
List< PartsymmetryCounterparts
 
int symmetryMode
 
float temperature
 The temperature of this part, in some arbitrary units. More...
 
PQS_PartCollider terrainCollider
 
AttachNode topNode
 
uint uid
 The purpose of uid is unknown. It changes everytime a vessel is swithched to, even within the same flight scene. Swith to a nearby vessel and back with [ and ] and the uid of the parts on a vessel will change. This value does not save to persistent.sfs, the uid value at the PART level is the part.flightID value instead. More...
 
Vector3 vel
 
Vessel vessel
 The vessel to which this part belongs. Beware that vessel == null in the editor. More...
 
VesselType vesselType
 
bool WaterContact
 

Static Public Attributes

static Color defaultHighlightNone
 
static Color defaultHighlightPart
 
static uint fuelRequestID
 

Protected Member Functions

virtual void onActiveFixedUpdate ()
 
virtual void onActiveUpdate ()
 
virtual void onCopy (Part original, bool asSymCounterpart)
 
virtual void onCtrlUpd (FlightCtrlState s)
 
virtual void onDecouple (float breakForce)
 
virtual void onDisconnect ()
 
virtual void onEditorUpdate ()
 
virtual void onFlightStart ()
 
virtual void onFlightStartAtLaunchPad ()
 
virtual void onGamePause ()
 
virtual void onGameResume ()
 
virtual void onJointDisable ()
 
virtual void onJointReset ()
 
virtual void onPack ()
 
virtual bool onPartActivate ()
 
virtual void onPartAttach (Part parent)
 
virtual void onPartAwake ()
 
virtual void onPartDeactivate ()
 
virtual void onPartDelete ()
 
virtual void onPartDestroy ()
 
virtual void onPartDetach ()
 
virtual void onPartExplode ()
 
virtual void onPartFixedUpdate ()
 
virtual void onPartLiftOff ()
 
virtual void onPartLoad ()
 
virtual void onPartSplashdown ()
 
virtual void onPartStart ()
 
virtual void onPartTouchdown ()
 
virtual void onPartUpdate ()
 
virtual void onStartComplete ()
 
virtual void onUnpack ()
 
void SetLayer (GameObject obj, int layer)
 

Protected Attributes

bool attached
 
bool connected
 
float heatConductivity
 
float heatDissipation
 
List< PartresourceTargets
 
PartStates state
 

Properties

BaseActionList Actions [get]
 
int ClassID [get]
 
string ClassName [get]
 
string ConstructID [get]
 
BaseEventList Events [get]
 
BaseFieldList Fields [get]
 
bool hasStagingIcon [get]
 
bool isAttached [get, set]
 
bool isConnected [get, set]
 
bool isControllable [get]
 
bool Landed [get]
 
Part localRoot [get]
 
PartModuleList Modules [get]
 
Orbit orbit [get]
 Don't use this; use Vessel.orbit instead. More...
 
PartResourceList Resources [get]
 A list of the resources contained by this part. You can loop over them with More...
 
Rigidbody Rigidbody [get]
 The rigidbody of this part. See the Unity documentation on rigidbodies for more information. More...
 
bool Splashed [get]
 
PartStates State [get]
 

Detailed Description

Each part on a vessel is represented by a Part object. Plugins can add new functionality to parts by defining new PartModules, which can then be added to Parts. It is also possible to define new subclasses of Part, but this is deprecated in favor of PartModules.

Member Enumeration Documentation

Enumerator
DEFAULT 
CONIC 
CYLINDRICAL 
Enumerator
Disabled 
OnMouseOver 
AlwaysOn 

Represents whether a part has physics.

Enumerator
FULL 

Part is a normal, physics-enabled part.

NONE 

Part has no physics, and in particular no mass or drag.

Constructor & Destructor Documentation

Part.Part ( )

Member Function Documentation

bool Part.activate ( int  currentStage)
void Part.addChild ( Part  child)
bool Part.AddCrewmember ( ProtoCrewMember  crew)
InternalModel Part.AddInternalPart ( ConfigNode  node)
PartModule Part.AddModule ( ConfigNode  node)
PartModule Part.AddModule ( string  moduleName)

Add a PartModule to this part. PartModules that are dynamically added to parts and don't exist in the original part.cfg will not be properly restored from persistence.

Parameters
moduleNameThe class name of the PartModule to add, as a string
Returns
The added PartModule
void Part.AddOnMouseDown ( Part.OnActionDelegate  method)
void Part.AddOnMouseEnter ( Part.OnActionDelegate  method)
void Part.AddOnMouseExit ( Part.OnActionDelegate  method)
PartResource Part.AddResource ( ConfigNode  node)
bool Part.CheckCollision ( Collision  c)
bool Part.checkLanded ( )
bool Part.checkSplashed ( )
void Part.cleanReferencesFromOtherParts ( )
void Part.Couple ( Part  tgtPart)
void Part.CreateInternalModel ( )
void Part.deactivate ( )
void Part.decouple ( float  breakForce = 0f)
void Part.DespawnAllCrew ( )
void Part.Die ( )
void Part.disconnect ( bool  controlledSeparation = false)
virtual bool Part.DrainFuel ( float  amount)
virtual

Deprecated.

Parameters
amount
Returns

Reimplemented in FuelTank.

void Part.drawStats ( )
void Part.explode ( )

Calling this causes the part to explode. But you guessed that, didn't you?

AttachNode Part.findAttachNode ( string  nodeId)

Find an AttachNode by its name, as a string.

Parameters
nodeIdThe name of the node to search for. The names of nodes are found in the part.cfg. For instance, node_stack_top describes a node with name "stack_top."
Returns
The AttachNode of the given name.
AttachNode Part.findAttachNodeByPart ( Part  connectedPart)

Given a child part of this part, find the AttachNode representing the connection between this part and that child.

Parameters
connectedPartA child part of this part.
Returns
The AttachNode connecting this part to the given child.
AttachNode [] Part.findAttachNodes ( string  partialNodeId)
Part Part.FindChildPart ( string  childName)
Part Part.FindChildPart ( string  childName,
bool  recursive 
)
T Part.FindChildPart< T > ( )
Type Constraints
T :Part 
T Part.FindChildPart< T > ( bool  recursive)
Type Constraints
T :Part 
T [] Part.FindChildParts< T > ( )
Type Constraints
T :Part 
T [] Part.FindChildParts< T > ( bool  recursive)
Type Constraints
T :Part 
virtual bool Part.FindFuel ( Part  source,
List< Part fuelSources,
uint  reqId 
)
virtual

Reimplemented in FuelLine, and FuelTank.

FXGroup Part.findFxGroup ( string  groupID)
Animation [] Part.FindModelAnimators ( )
Animation [] Part.FindModelAnimators ( string  clipName)
T Part.FindModelComponent< T > ( )
Type Constraints
T :Component 
T Part.FindModelComponent< T > ( string  childName)
Type Constraints
T :Component 
T [] Part.FindModelComponents< T > ( )
Type Constraints
T :Component 
T [] Part.FindModelComponents< T > ( string  childName)
Type Constraints
T :Component 
Transform Part.FindModelTransform ( string  childName)
Transform [] Part.FindModelTransforms ( string  childName)
void Part.FindNonPhysicslessChildren ( List< Part parts)
void Part.force_activate ( )

Activates the part now, regardless of when it was scheduled to be activated in the staging order.

void Part.freeze ( )
static Part Part.FromGO ( GameObject  obj)
static
static Component Part.GetComponentUpwards ( string  type,
GameObject  obj 
)
static
static T Part.GetComponentUpwards< T > ( GameObject  obj)
static
Type Constraints
T :Component 
void Part.GetConnectedResources ( int  resourceID,
List< PartResource resources 
)
static uint Part.getFuelReqId ( )
static
float Part.GetResourceMass ( )

The total mass of the resources held by the part. The total mass of the part is

mass + GetResourceMass()

Returns
Total resource mass, in tonnes
Part Part.getSymmetryCounterPart ( int  index)
void Part.HandleCollision ( Collision  c)
bool Part.hasIndirectChild ( Part  tgtPart)
bool Part.hasIndirectParent ( Part  tgtPart)
bool Part.isSymmetryCounterPart ( Part  cPart)
void Part.LateUpdate ( )
PartModule Part.LoadModule ( ConfigNode  node,
int  moduleIndex 
)
delegate void Part.OnActionDelegate ( Part  p)
virtual void Part.onActiveFixedUpdate ( )
protectedvirtual
virtual void Part.onActiveUpdate ( )
protectedvirtual
void Part.onAttach ( Part  parent,
bool  first = true 
)
virtual void Part.onBackup ( )
virtual

Reimplemented in FuelLine.

void Part.OnCollisionEnter ( Collision  c)
void Part.OnCollisionExit ( Collision  c)
void Part.OnCollisionStay ( Collision  c)
void Part.OnCopy ( Part  original,
bool  asSymCounterpart 
)
virtual void Part.onCopy ( Part  original,
bool  asSymCounterpart 
)
protectedvirtual

Reimplemented in FuelLine.

virtual void Part.onCtrlUpd ( FlightCtrlState  s)
protectedvirtual
virtual void Part.onDecouple ( float  breakForce)
protectedvirtual

Reimplemented in FuelTank, and FuelTankGUI.

void Part.OnDelete ( )
void Part.onDetach ( bool  first = true)
virtual void Part.onDisconnect ( )
protectedvirtual
virtual void Part.OnDrawStats ( )
virtual
virtual void Part.onEditorUpdate ( )
protectedvirtual

Reimplemented in FuelLine.

virtual void Part.onFlightStart ( )
protectedvirtual

Reimplemented in FuelLine, FuelTank, FuelTankGUI, and DockingPort.

virtual void Part.onFlightStartAtLaunchPad ( )
protectedvirtual
virtual void Part.onFlightStateLoad ( Dictionary< string, KSPParseable >  parsedData)
virtual

Reimplemented in FuelTank, and FuelTankGUI.

virtual void Part.onFlightStateSave ( Dictionary< string, KSPParseable >  partDataCollection)
virtual

Reimplemented in FuelTank, and FuelTankGUI.

virtual void Part.onGamePause ( )
protectedvirtual
virtual void Part.onGameResume ( )
protectedvirtual
virtual void Part.onJointDisable ( )
protectedvirtual
virtual void Part.onJointReset ( )
protectedvirtual
void Part.OnLiftOff ( )
void Part.OnLoad ( )
virtual void Part.onPack ( )
protectedvirtual
virtual bool Part.onPartActivate ( )
protectedvirtual
virtual void Part.onPartAttach ( Part  parent)
protectedvirtual

Reimplemented in FuelLine.

virtual void Part.onPartAwake ( )
protectedvirtual

Reimplemented in FuelTank, and FuelTankGUI.

virtual void Part.onPartDeactivate ( )
protectedvirtual
virtual void Part.onPartDelete ( )
protectedvirtual
virtual void Part.onPartDestroy ( )
protectedvirtual

Reimplemented in FuelLine.

virtual void Part.onPartDetach ( )
protectedvirtual

Reimplemented in FuelLine.

virtual void Part.onPartExplode ( )
protectedvirtual
virtual void Part.onPartFixedUpdate ( )
protectedvirtual

Reimplemented in FuelLine, and FuelTank.

virtual void Part.onPartLiftOff ( )
protectedvirtual
virtual void Part.onPartLoad ( )
protectedvirtual

Reimplemented in FuelLine.

virtual void Part.onPartSplashdown ( )
protectedvirtual
virtual void Part.onPartStart ( )
protectedvirtual
virtual void Part.onPartTouchdown ( )
protectedvirtual
virtual void Part.onPartUpdate ( )
protectedvirtual
void Part.OnSplashDown ( )
virtual void Part.onStartComplete ( )
protectedvirtual
void Part.OnTouchDown ( )
virtual void Part.onUnpack ( )
protectedvirtual
static Part.operator Part ( GameObject  o)
explicitstatic
void Part.Pack ( )
void Part.propagateControlUpdate ( FlightCtrlState  st)
void Part.removeChild ( Part  child)
void Part.RemoveCrewmember ( ProtoCrewMember  crew)
void Part.RemoveModule ( PartModule  module)
void Part.RemoveOnMouseDown ( Part.OnActionDelegate  method)
void Part.RemoveOnMouseEnter ( Part.OnActionDelegate  method)
void Part.RemoveOnMouseExit ( Part.OnActionDelegate  method)
virtual bool Part.RequestFuel ( Part  source,
float  amount,
uint  reqId 
)
virtual

Deprecated.

Parameters
source
amount
reqId
Returns

Reimplemented in FuelLine, FuelTank, and FuelTankGUI.

virtual bool Part.RequestRCS ( float  amount,
int  earliestStage 
)
virtual

Deprecated.

Parameters
amount
earliestStage
Returns
double Part.RequestResource ( int  resourceID,
double  demand 
)
float Part.RequestResource ( int  resourceID,
float  demand 
)
double Part.RequestResource ( string  resourceName,
double  demand 
)
float Part.RequestResource ( string  resourceName,
float  demand 
)
void Part.ResetCollisionIgnores ( )
IEnumerator Part.ResetJoints ( )
void Part.ResumeVelocity ( )
void Part.ScheduleSetCollisionIgnores ( )
void Part.SendEvent ( string  eventName)
void Part.SendEvent ( string  eventName,
BaseEventData  data 
)
void Part.SendEvent ( string  eventName,
BaseEventData  data,
int  maxDepth 
)
void Part.SetCollisionIgnores ( )
void Part.SetDetectCollisions ( bool  setState)
void Part.SetHierarchyRoot ( Part  root)
void Part.SetHighlight ( bool  active)
void Part.SetHighlightColor ( )
void Part.SetHighlightColor ( Color  color)
void Part.SetHighlightDefault ( )
void Part.SetHighlightType ( Part.HighlightType  type)
void Part.SetLayer ( GameObject  obj,
int  layer 
)
protected
void Part.SetMirror ( Vector3  mirrorVector)
void Part.setOpacity ( float  opacity)
void Part.setParent ( Part  p = null)
void Part.SetResource ( ConfigNode  node)
void Part.SpawnCrew ( )
double Part.TransferResource ( int  resourceID,
double  amount 
)
void Part.Undock ( DockedVesselInfo  newVesselInfo)
void Part.unfreeze ( )
void Part.Unpack ( )
void Part.UpdateOrgPosAndRot ( Part  newRoot)

Member Data Documentation

bool Part.ActivatesEvenIfDisconnected

Whether this part will actually activate if it schedule to be activated in the same stage as it is decoupled from the rocket. In particular, sepratrons must have ActivatesEvenIfDisconnected set to true if they are to function properly.

Transform Part.airlock
float Part.angularDrag
bool Part.attached
protected
Joint Part.attachJoint
AttachNodeMethod Part.attachMethod
AttachModes Part.attachMode

Whether this part is attached to its parent via a stack AttachNode or a surface AttachNode.

List<AttachNode> Part.attachNodes

An AttachNode represents the link between two attached parts. attachNodes is a list of possible nodes to which other parts can be attached to this part. You can find the parts that actually are attached using AttachNode.attachedPart.

AttachRules Part.attachRules
Quaternion Part.attRotation
float Part.breakingForce
float Part.breakingTorque
float Part.buoyancy
Vector3 Part.CenterOfBuoyancy
List<Part> Part.children

The parts that are children of this part in the part tree (parts that were attached to this part in the editor after this part was already part of the vessel).

int Part.childStageOffset
Collider Part.collider
CollisionEnhancer Part.collisionEnhancer
Vector3 Part.CoMOffset
bool Part.connected
protected
float Part.crashTolerance
int Part.CrewCapacity

How many crew members this part can fit.

List<Collider> Part.currentCollisions
string Part.customPartData
Color Part.defaultHighlightNone
static
Color Part.defaultHighlightPart
static
int Part.defaultInverseStage
Part.DragModel Part.dragModel

Unused?

string Part.dragModelType

Unused?

Vector3 Part.dragReferenceVector
double Part.dynamicPressureAtm
Part Part.editorCollision
List<Part> Part.editorLinks
float Part.explosionPotential
uint Part.flightID

A unique identifider for this part. Note that despite the name, each part on the same vessel will still have a different value in this field. This value is persistent and not affected by game load or docking/undocking or similar. This is the 'uid' value at the PART level of the persistent.sfs file.

FlightIntegrator Part.flightIntegrator
bool Part.frozen
bool Part.fuelCrossFeed

Whether this part allows fuel crossfeed.

List<Part> Part.fuelLookupTargets

In the flight scene, fuelLookupTargets is the list of fuel lines through which this part can draw fuel. Also if this part is a docking node docked to a another docking node through which it can draw fuel, then the attached docking node will also be in fuelLookupTargets.

uint Part.fuelRequestID
static
List<FXGroup> Part.fxGroups
bool Part.GroundContact
bool Part.hasHeiarchyModel
float Part.heatConductivity
protected
float Part.heatDissipation
protected
Color Part.highlightColor
bool Part.highlightRecurse
Part.HighlightType Part.highlightType
string Part.initialVesselName
int Part.inStageIndex
InternalModel Part.internalModel
string Part.InternalModelName
int Part.inverseStage

The stage in which this part will activate, as shown in the staging display. (Possibly called inverseStage because the stages in KSP count down instead of up).

bool Part.isClone
bool Part.isControlSource
bool Part.isMirrored
bool Part.isPersistent
uint Part.lastFuelRequestId
int Part.manualStageOffset
float Part.mass

The DRY mass of this part, not including the mass of any resources it contains

float Part.maximum_drag

The drag coefficient of this part is equal to (total mass) * (maximum_drag)

float Part.maxTemp

The temperature at which this part will explode.

float Part.minimum_drag

Unused.

Vector3 Part.mirrorAxis
Vector3 Part.mirrorRefAxis
Vector3 Part.mirrorVector
uint Part.missionID

A unique identifier assigned to the part when the vessel it is a part of is created. All parts on the vessel get the same missionID and it does not change. Splitting a vessel with a decoupler will result with two vessels whose parts have the same missionID. When two vessels spawned seperately dock, each part keeps its original missionID, undocking does not change this field either.

string Part.NoCrossFeedNodeKey

Specifies the name of a node through which this part will NOT draw resources. See the part.cfg of the stock tricoupler for an example of using this to prevent fuel from flowing backwards.

Callback Part.OnEditorAttach

Add a function to this callback and it will be called when your part is attached to another part in the editor.

Callback Part.OnEditorDestroy

Add a function to this callback and it will be called when your part is deleted in the editor.

Callback Part.OnEditorDetach

Add a function to this callback and it will be called when your part is detached, or is part of a set of parts that are detached, in the editor.

Callback Part.OnJustAboutToBeDestroyed

Add a function to this callback and it will be called when your part is about to be destroyed during flight.

Vector3 Part.orgPos
Quaternion Part.orgRot
int Part.originalStage
bool Part.packed
Part Part.parent

The parent of this part in the part tree: the part to which this part was attached in the editor.

PartBuoyancy Part.partBuoyancy
AvailablePart Part.partInfo

Some of the part info that is displayed about this part in the editor.

string Part.partName
Part.PhysicalSignificance Part.physicalSignificance

If physicalSignificance == Part.PhysicalSignificance.NONE, then this part doesn't actually have any physics. In particular, it has no mass, regardless of what its "mass" field is set to, and no drag.

int Part.PhysicsSignificance

Unused?

Part Part.potentialParent
List<ProtoCrewMember> Part.protoModuleCrew
ProtoPartSnapshot Part.protoPartSnapshot
float Part.rescaleFactor
List<Part> Part.resourceTargets
protected
PartStates Part.ResumeState
float Part.scaleFactor
AttachNode Part.srfAttachNode

IF this part is surface-attached to its parent, srfAttachNode is the attach node describing this connection.

VStackIcon Part.stackIcon

The sicon shown for this part in the staging display.

StackIconGrouping Part.stackIconGrouping
int Part.stackSymmetry
bool Part.stageAfter
bool Part.stageBefore
int Part.stageOffset
string Part.stagingIcon
bool Part.started
PartStates Part.state
protected
double Part.staticPressureAtm
Vector3 Part.surfaceAreas
List<Part> Part.symmetryCounterparts
int Part.symmetryMode
float Part.temperature

The temperature of this part, in some arbitrary units.

PQS_PartCollider Part.terrainCollider
AttachNode Part.topNode
uint Part.uid

The purpose of uid is unknown. It changes everytime a vessel is swithched to, even within the same flight scene. Swith to a nearby vessel and back with [ and ] and the uid of the parts on a vessel will change. This value does not save to persistent.sfs, the uid value at the PART level is the part.flightID value instead.

Vector3 Part.vel
Vessel Part.vessel

The vessel to which this part belongs. Beware that vessel == null in the editor.

VesselType Part.vesselType
bool Part.WaterContact

Property Documentation

BaseActionList Part.Actions
get
int Part.ClassID
get
string Part.ClassName
get
string Part.ConstructID
get
BaseEventList Part.Events
get
BaseFieldList Part.Fields
get
bool Part.hasStagingIcon
get
bool Part.isAttached
getset
bool Part.isConnected
getset
bool Part.isControllable
get
bool Part.Landed
get
Part Part.localRoot
get
PartModuleList Part.Modules
get
Orbit Part.orbit
get

Don't use this; use Vessel.orbit instead.

PartResourceList Part.Resources
get

A list of the resources contained by this part. You can loop over them with

foreach(PartResource resource in part.Resources) { ... }

Rigidbody Part.Rigidbody
get

The rigidbody of this part. See the Unity documentation on rigidbodies for more information.

bool Part.Splashed
get
PartStates Part.State
get

The documentation for this class was generated from the following file: