feat(HidePlatform): 实现通过信号控制的隐藏平台

This commit is contained in:
2025-10-25 09:38:50 +08:00
parent 24f6a95421
commit f547cc2ac5
5 changed files with 628 additions and 1 deletions

View File

@@ -0,0 +1,221 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4947787179331378800
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4521585963444198037}
m_Layer: 0
m_Name: TargetPosition
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4521585963444198037
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4947787179331378800}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 10, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 6191493531679122464}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &7524217001864027819
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6191493531679122464}
- component: {fileID: 1990321517117240577}
- component: {fileID: 6422074354652010622}
- component: {fileID: 8432974454533274826}
- component: {fileID: 975715541108697082}
- component: {fileID: 4565915128096524499}
- component: {fileID: 5795370598927137930}
m_Layer: 0
m_Name: HidePlatform
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6191493531679122464
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 25, y: 1, z: 5}
m_LocalScale: {x: 3, y: 0.5, z: 3}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4518247633435004253}
- {fileID: 4521585963444198037}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &1990321517117240577
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &6422074354652010622
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!65 &8432974454533274826
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &975715541108697082
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2791e039b8344f45ad6dc86f5188d82d, type: 3}
m_Name:
m_EditorClassIdentifier:
isEnableEdit: 1
isOpenInEditor: 1
--- !u!114 &4565915128096524499
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ce12e438b058416294facd94fdcec417, type: 3}
m_Name:
m_EditorClassIdentifier:
isEnableEdit: 1
isOpenInEditor: 1
--- !u!114 &5795370598927137930
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7524217001864027819}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f28214d1465c43208546605ea8a619db, type: 3}
m_Name:
m_EditorClassIdentifier:
isEnableInteract: 1
isEnableEdit: 1
isEnableConnect: 1
componentName:
needSignalCount: 1
isOpenInEditor: 1
disappearType: 0
--- !u!1 &8796126894100698369
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4518247633435004253}
m_Layer: 0
m_Name: StartPosition
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4518247633435004253
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8796126894100698369}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 6191493531679122464}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: fff496640cf3cc748b6a608893c657ba
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -216,6 +216,74 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 115d4e847c444833bc8dce4a03a78e55, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &346781470
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalPosition.x
value: -20
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalPosition.y
value: 0.8
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalPosition.z
value: -5
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6227019518059310355, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_Name
value: Lever (3)
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: be07db3098b709a40a6965f50f8c9640, type: 3}
--- !u!1 &410087039
GameObject:
m_ObjectHideFlags: 0
@@ -548,6 +616,154 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 85652dd0e36597644aa5b3bc9603797b, type: 3}
--- !u!1001 &761528196
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalPosition.x
value: -25
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalPosition.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7524217001864027819, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_Name
value: HidePlatform (1)
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: fff496640cf3cc748b6a608893c657ba, type: 3}
--- !u!114 &761528198 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 5795370598927137930, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
m_PrefabInstance: {fileID: 761528196}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f28214d1465c43208546605ea8a619db, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &817379214
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalPosition.x
value: -25
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalPosition.y
value: 0.8
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalPosition.z
value: -5
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2356242250385391551, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6227019518059310355, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
propertyPath: m_Name
value: Lever (4)
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: be07db3098b709a40a6965f50f8c9640, type: 3}
--- !u!1001 &865274353
PrefabInstance:
m_ObjectHideFlags: 0
@@ -1210,6 +1426,18 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: b3e24e2df98d14e4ebc08cc68c071afa, type: 3}
--- !u!114 &1753046143 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 4936355834716623489, guid: be07db3098b709a40a6965f50f8c9640,
type: 3}
m_PrefabInstance: {fileID: 817379214}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6b9b9a895b0d40edb9a6d7213afbb256, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1859676917
GameObject:
m_ObjectHideFlags: 0
@@ -2053,6 +2281,79 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 17ad2833fef1bc044bcc25a227730d74, type: 3}
--- !u!1001 &4318083913684650404
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 5795370598927137930, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: disappearType
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalPosition.x
value: -20
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalPosition.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6191493531679122464, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7524217001864027819, guid: fff496640cf3cc748b6a608893c657ba,
type: 3}
propertyPath: m_Name
value: HidePlatform
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: fff496640cf3cc748b6a608893c657ba, type: 3}
--- !u!1001 &4550639332017178188
PrefabInstance:
m_ObjectHideFlags: 0
@@ -2414,7 +2715,7 @@ PrefabInstance:
- target: {fileID: 6919868315282518728, guid: e6007da0e1121fd4ab3b932c054f6256,
type: 3}
propertyPath: preConnectionLines.Array.size
value: 1
value: 2
objectReference: {fileID: 0}
- target: {fileID: 6919868315282518728, guid: e6007da0e1121fd4ab3b932c054f6256,
type: 3}
@@ -2426,6 +2727,21 @@ PrefabInstance:
propertyPath: preConnectionLines.Array.data[0].target
value:
objectReference: {fileID: 183959152}
- target: {fileID: 6919868315282518728, guid: e6007da0e1121fd4ab3b932c054f6256,
type: 3}
propertyPath: preConnectionLines.Array.data[1].source
value:
objectReference: {fileID: 761528198}
- target: {fileID: 6919868315282518728, guid: e6007da0e1121fd4ab3b932c054f6256,
type: 3}
propertyPath: preConnectionLines.Array.data[1].target
value:
objectReference: {fileID: 1753046143}
- target: {fileID: 6919868315282518728, guid: e6007da0e1121fd4ab3b932c054f6256,
type: 3}
propertyPath: preConnectionLines.Array.data[1].PreConnectionID
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8209060139561151121, guid: e6007da0e1121fd4ab3b932c054f6256,
type: 3}
propertyPath: m_LocalPosition.x
@@ -2787,6 +3103,8 @@ SceneRoots:
- {fileID: 4550639332017178188}
- {fileID: 6865129841946316189}
- {fileID: 2578337202726380610}
- {fileID: 4318083913684650404}
- {fileID: 761528196}
- {fileID: 1781028406820323425}
- {fileID: 7779342506646282638}
- {fileID: 8980111935536418165}
@@ -2797,6 +3115,8 @@ SceneRoots:
- {fileID: 473911345}
- {fileID: 865274353}
- {fileID: 6350903300567888677}
- {fileID: 346781470}
- {fileID: 817379214}
- {fileID: 1549323716}
- {fileID: 2110019781}
- {fileID: 730184548946979397}

View File

@@ -0,0 +1,76 @@
using System;
using UnityEngine;
using Script.Gameplay.Edit;
namespace Script.Gameplay.Facility
{
[RequireComponent(typeof(ColliderEditableController))]
[RequireComponent(typeof(MeshRenderEditableController))]
public class HidePlatformController : BaseFacilityController
{
public enum DisappearType
{
ReceiveSignal,
NoReceiveSignal
}
[Tooltip("平台消失的类型")]
[SerializeField] private DisappearType disappearType;
private ColliderEditableController colliderEditableController;
private MeshRenderEditableController meshRenderEditableController;
private void Awake()
{
colliderEditableController = GetComponent<ColliderEditableController>();
meshRenderEditableController = GetComponent<MeshRenderEditableController>();
}
private void Start()
{
if (disappearType == DisappearType.NoReceiveSignal)
{
colliderEditableController.IsOpenInEditor = true;
meshRenderEditableController.IsOpenInEditor = true;
}
if (disappearType == DisappearType.ReceiveSignal)
{
colliderEditableController.IsOpenInEditor = false;
meshRenderEditableController.IsOpenInEditor = false;
}
}
public override void OnSignalReceived(bool active, GameObject sender)
{
base.OnSignalReceived(active, sender);
if (disappearType == DisappearType.ReceiveSignal)
{
if (active)
{
meshRenderEditableController.IsOpenInEditor = true;
colliderEditableController.IsOpenInEditor = true;
}
else
{
meshRenderEditableController.IsOpenInEditor = false;
colliderEditableController.IsOpenInEditor = false;
}
}
if (disappearType == DisappearType.NoReceiveSignal)
{
if (active)
{
meshRenderEditableController.IsOpenInEditor = false;
colliderEditableController.IsOpenInEditor = false;
}
else
{
meshRenderEditableController.IsOpenInEditor = true;
colliderEditableController.IsOpenInEditor = true;
}
}
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: f28214d1465c43208546605ea8a619db
timeCreated: 1761355078