class ConstructionPartTypeData
- ConstructionPartTypeData
static parts info, lives on EntityType level. Instanced data in 'ConstructionPart' class
Members 38
protected string m_Nameun-localized text name that is displayed ingame. Localized via getter method.
protected string m_PartNameconfig class name
Show 2 more
, InitBasicStrings(), and InitOptionalOverrides()protected string m_MainPartNamemain (parent) config class name
protected string m_PartPathraw part path, stored for deferred init
Show 20 more
, InitBasicStrings(), InitCollisionData(), InitConflictedParts(), InitConstructionActionDamage(), InitEssentialAttachmentSlots(), InitGuiAttachmentCategoryLinks(), InitHandAnimOverride(), InitInsiderBoxData(), InitItemFallingData(), InitMaterialType(), InitOptionalOverrides(), InitPartDecayData(), InitPartEffectsData(), InitPartMaterials(), InitPartTypeData(), InitRequiredParts(), InitRequiredPartVariants(), InitStaticsSupportPartData(), InitUtilityBuildData(), and InitUtilityPartInfo()protected typename m_CustomInstanceTypenameset only for custom types, contains type of custom part instances
protected int m_Ida number used for synchronization and persistence purposes, must be unique and withing sync limit (total number of bits in all sync/persistence variables)
protected int m_BuildActionTypeMaskvalues from EConstructionTools
protected int m_BuildIndicationTypeMaskvalues from EConstructionTools, used for indication only!
protected int m_DismantleActionTypeMaskvalues from EConstructionTools
protected int m_MaterialTypeused for determinig effect type (wood vs. metal sounds, for example)
protected int m_HandFBAnimOverride = -1override ID of the FB animation for hand construction (tool anims are driven by tools)
protected bool m_IsBasedefines if this part is the foundation of the whole construction
protected bool m_IsUtilityPartSpecial helper parts with invalid IDs
protected bool m_DamageHandsOnBuildprotected bool m_CanPartDecayConfigdetermined by, in sequence: 'can_decay_general' in class Construction > 'can_decay' on the part itself
protected float m_PartDecayThresholdConfigprotected float m_PartDecayRateConfiglist of part types required by this part
list of part types conflicting with this one
Names of min/max memory point selections
Names of min/max pairs for insider box considerations
Names of min/max memory point selections
Names of att. slots that are tied to the constructed part in some way
listing of related 'GUIInventoryAttachmentsProps' subclasses (part is required to display them, in this iteration)
protected ref array<ref ConstructionMaterialData> m_MaterialsDataprotected string m_BuildTextOverride = ""protected string m_DismantleTextOverride = ""used in 'Handle<operation>Physics' methods instead m_PartName
dictates behavior of geom selections from 'm_PhxGeomNames'. 0 == matches the phase of the animation, non-zero == inverted
used in 'Handle<operation>ProxyRoadways' methods instead m_PartName
dictates behavior of ProxyRoadway from 'm_ProxyRoadwayNames'. 0 == matches the phase of the animation, non-zero == inverted
used by 'SetAnimationPhase' instead of m_PartName
dictates behavior of animSources from 'm_AnimSourceNameOverrides'. 0 == matches the hide/show state of the animation, non-zero == inverted
protected ref TConstructionPartVariantArray m_ReqPartVariantsprotected ref ConstructionPartStaticsSupportData m_StaticsDataprotected ref ConstructionPartEffectsData m_EffectsDataMethods 76
void InitPartTypeData(PartTypeInitData initData)Show 20 more
, InitConflictedParts(), InitConstructionActionDamage(), InitCustomPartTypeProperties(), InitEssentialAttachmentSlots(), InitGuiAttachmentCategoryLinks(), InitHandAnimOverride(), InitInsiderBoxData(), InitItemFallingData(), InitMaterialType(), InitOptionalOverrides(), InitPartDecayData(), InitPartEffectsData(), InitPartMaterials(), InitRequiredParts(), InitRequiredPartVariants(), InitStaticsSupportPartData(), InitUtilityBuildData(), InitUtilityPartInfo(), m_PartPath, and PartTypeInitData.m_PartPathprotected void InitBasicStrings(PartTypeInitData partTypeData)Show 9 more
, m_Id, m_IsBase, m_IsGate, m_MainPartName, PartTypeInitData.m_MainPartName, m_Name, m_PartName, PartTypeInitData.m_PartName, and m_PartPathprotected void InitRequiredParts()protected void InitActionMasks()Show 3 more
, m_BuildActionTypeMask, m_DismantleActionTypeMask, and m_PartPathprotected void InitPartMaterials()Show 4 more
, new ConstructionMaterialData(), array.Insert(), m_MaterialsData, and m_PartPathprotected void InitMaterialType()protected void InitConflictedParts()protected void InitCollisionData()collision checks when building, if configured
Show 1 more
, m_PartPathprotected void InitInsiderBoxData()'inside' box data to help determine whether the character is inside. Modelspace.
Show 4 more
, array.Count(), ErrorEx(), m_InsiderBoxPairNames, and m_PartPathprotected void InitItemFallingData()item falling on dismantle/destruct, if configured.
Show 1 more
, m_PartPathprotected void InitPartDecayData()protected void InitHandAnimOverride()Show 1 more
, m_PartPathprotected void InitEssentialAttachmentSlots()attachment slots somehow considered 'essential' to the part
Show 1 more
, m_PartPathprotected void InitGuiAttachmentCategoryLinks()which 'GUIInventoryAttachmentsProps' subclasses it relates to
Show 1 more
, m_RelatedGUICategoryNamesprotected void InitConstructionActionDamage()if hands get damaged on build (and possibly other overrides later)
Show 1 more
, m_PartPathprotected void InitUtilityPartInfo()protected void InitUtilityBuildData()Show 1 more
, m_UtilityAutomaticBuildprotected void InitRequiredPartVariants()Show 5 more
, CGame.ConfigIsExisting(), array.Insert(), new TConstructionPartVariantArray(), m_PartPath, and m_ReqPartVariantsprotected void InitStaticsSupportPartData()Show 1 more
, m_StaticsDataprotected void InitPartEffectsData()'partPath' not necessary here, using part data directly, override as needed on unique part handlers
Show 1 more
, m_PartPathprotected void InitOptionalOverrides()Show 25 more
, array.Clear(), array.Clear(), array.Clear(), CGame.ConfigGetIntArray(), CGame.ConfigGetTextArray(), CGame.ConfigGetTextRaw(), CGame.ConfigIsExisting(), array.Count(), array.Count(), array.Count(), array.Count(), array.Count(), array.Count(), ErrorEx(), CGame.FormatRawConfigStringKeys(), m_AnimSourceBehaviorOverridesInverted, m_AnimSourceNameOverrides, m_BuildTextOverride, m_DismantleTextOverride, m_PartName, m_PartPath, m_PhxGeomBehaviorInverted, m_PhxGeomNames, m_ProxyRoadwayBehaviorInverted, and m_ProxyRoadwayNamesprotected void InitCustomPartTypeProperties(PartTypeInitData initData)Generic init method for custom part type properties
void SetCanDecayConfig(bool can)void SetCustomInstanceType(string name)string GetPartPath()string GetNameLocalized()string GetPartName()string GetMainPartName()bool DamageToolOnBuild()bool DamageHandsOnBuild()bool DamageToolOnDeconstruct()bool DamageHandsOnDeconstruct()bool CanPartDecayConfig()typename GetCustomInstanceType()float GetPartDecayRateConfig()float GetPartDecayThresholdConfig()int GetHandBuildFBAnimOverride()bool CanSimulateItemFalling()bool HasEssentialAttachmentSlots()bool HasRelatedGUICategories()strings of min/max selections (should be single points in memory LOD)
strings of min/max selections (should be single points in memory LOD)
string GetBuildTextOverride()string GetDismantleTextOverride()string GetPartAnimSourceName()returns AnimSource name to use in 'SetAnimationPhase'
string GetPartBoneName()returns bone name to use in 'ProxyPhysics' methods (translated to BoneIdx down the line)
int GetBuildActionTypeMask()int GetBuildIndicationTypeMask()int GetDismantleActionTypeMask()array<ref ConstructionMaterialData> GetMaterialsData()bool IsReversible()TConstructionPartVariantArray GetRequiredPartsTypeVariantArray()ConstructionPartStaticsSupportData GetPartTypeStaticsSupportData()Note, this will likely change after release, take care when modding
ConstructionPartEffectsData GetPartTypeEffectsData()protected void SanitizeBuildIndicationMask()Solves for category icon overlaps (in vanilla configuration)