From 394fd37a34b70f529c2b897678c87c9d0293132f Mon Sep 17 00:00:00 2001 From: Ding Yuntian <1491671119@qq.com> Date: Sun, 1 Dec 2024 21:50:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=9D=E5=AD=98=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Editor/Script/GearSystemEditor.cs | 22 + Assets/Editor/Script/GearSystemEditor.cs.meta | 3 + Assets/Scenes/ExpressFixScene.unity | 1634 ++++++++++++----- .../Scripts/Dialog System/DialogController.cs | 42 +- Assets/Scripts/FixSystemNew/BodyModule.cs | 9 +- .../Scripts/FixSystemNew/BodyModuleSystem.cs | 1 - .../Scripts/FixSystemNew/FixYarnCommandEx.cs | 2 +- .../Scripts/Framework/OtherKit/MonoCenter.cs | 17 - .../Framework/ResourceKit/ResourceKit.cs | 2 +- Assets/Scripts/MiniGame/Gear/Gear.cs | 23 +- .../Scripts/MiniGame/Gear/GearController.cs | 117 -- Assets/Scripts/MiniGame/Gear/GearSystem.cs | 215 +++ ...rController.cs.meta => GearSystem.cs.meta} | 0 .../Scripts/MiniGame/Gear/GearSystemConfig.cs | 40 - .../MiniGame/Gear/GearSystemConfig.cs.meta | 3 - Assets/Scripts/MiniGame/Gear/Shaft.cs | 81 +- .../StreamingAssets/LevelData/GearSystem.meta | 8 + .../LevelData/GearSystem/stone1.json | 1 + .../LevelData/GearSystem/stone1.json.meta | 7 + .../LevelData/GearSystem/temp.json | 1 + .../LevelData/GearSystem/temp.json.meta | 7 + 21 files changed, 1497 insertions(+), 738 deletions(-) create mode 100644 Assets/Editor/Script/GearSystemEditor.cs create mode 100644 Assets/Editor/Script/GearSystemEditor.cs.meta delete mode 100644 Assets/Scripts/MiniGame/Gear/GearController.cs create mode 100644 Assets/Scripts/MiniGame/Gear/GearSystem.cs rename Assets/Scripts/MiniGame/Gear/{GearController.cs.meta => GearSystem.cs.meta} (100%) delete mode 100644 Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs delete mode 100644 Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs.meta create mode 100644 Assets/StreamingAssets/LevelData/GearSystem.meta create mode 100644 Assets/StreamingAssets/LevelData/GearSystem/stone1.json create mode 100644 Assets/StreamingAssets/LevelData/GearSystem/stone1.json.meta create mode 100644 Assets/StreamingAssets/LevelData/GearSystem/temp.json create mode 100644 Assets/StreamingAssets/LevelData/GearSystem/temp.json.meta diff --git a/Assets/Editor/Script/GearSystemEditor.cs b/Assets/Editor/Script/GearSystemEditor.cs new file mode 100644 index 000000000..e73632e97 --- /dev/null +++ b/Assets/Editor/Script/GearSystemEditor.cs @@ -0,0 +1,22 @@ +using UnityEditor; +using UnityEngine; + +namespace AibisDream.SystemEditor +{ + [CustomEditor(typeof(GearSystem))] + public class GearSystemEditor : SystemHasDataEditor + { + public override void OnInspectorGUI() + { + var example = (GearSystem)target; + + base.OnInspectorGUI(); + GUILayout.Label("修改"); + + if (GUILayout.Button("添加一个齿轮轴")) + { + example.AddShaft(); + } + } + } +} \ No newline at end of file diff --git a/Assets/Editor/Script/GearSystemEditor.cs.meta b/Assets/Editor/Script/GearSystemEditor.cs.meta new file mode 100644 index 000000000..7f3adc04f --- /dev/null +++ b/Assets/Editor/Script/GearSystemEditor.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c1170b044a134eb4a82c4ed0f2e42fbd +timeCreated: 1732965905 \ No newline at end of file diff --git a/Assets/Scenes/ExpressFixScene.unity b/Assets/Scenes/ExpressFixScene.unity index a4aad8c37..d44c39aec 100644 --- a/Assets/Scenes/ExpressFixScene.unity +++ b/Assets/Scenes/ExpressFixScene.unity @@ -874,13 +874,133 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1747384944} - - {fileID: 1860845981} - - {fileID: 1888547583} - - {fileID: 1078086547} - - {fileID: 404437037} + - {fileID: 542720339} + - {fileID: 995693012} + - {fileID: 1429499427} + - {fileID: 2012701254} + - {fileID: 1933921925} m_Father: {fileID: 657112469} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &207364163 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 207364164} + - component: {fileID: 207364166} + - component: {fileID: 207364165} + m_Layer: 0 + m_Name: Static Gear + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &207364164 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 207364163} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1429499427} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &207364165 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 207364163} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!212 &207364166 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 207364163} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 5 + m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 1 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &240190234 GameObject: m_ObjectHideFlags: 0 @@ -1406,6 +1526,126 @@ Transform: m_Children: [] m_Father: {fileID: 657112469} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &385257988 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 385257989} + - component: {fileID: 385257991} + - component: {fileID: 385257990} + m_Layer: 0 + m_Name: Static Gear + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &385257989 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 385257988} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2012701254} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &385257990 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 385257988} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!212 &385257991 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 385257988} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 5 + m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 1 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &389220476 GameObject: m_ObjectHideFlags: 0 @@ -1437,11 +1677,6 @@ Transform: m_Children: [] m_Father: {fileID: 2104743874} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!4 &404437037 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - m_PrefabInstance: {fileID: 1443501785} - m_PrefabAsset: {fileID: 0} --- !u!1 &463110380 GameObject: m_ObjectHideFlags: 0 @@ -1562,83 +1797,113 @@ Transform: - {fileID: 1097272285} m_Father: {fileID: 1732205055} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &514341497 -PrefabInstance: +--- !u!1 &542720338 +GameObject: m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 542720339} + - component: {fileID: 542720341} + - component: {fileID: 542720340} + m_Layer: 0 + m_Name: Target + m_TagString: Shaft + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &542720339 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 542720338} serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 199118573} - m_Modifications: - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: hasGear - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: shaftType - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initRadius - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initSprite - value: - objectReference: {fileID: 2517083572485905542, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: targetSpeed - value: 0.3 - objectReference: {fileID: 0} - - target: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_Name - value: Target Shaft - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.x - value: 6.629 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.y - value: 0.684 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 6.629, y: 0.684, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1449816260} + m_Father: {fileID: 199118573} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &542720340 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 542720338} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 468fc3bf68cb91149818f305858bc7fd, type: 3} + m_Name: + m_EditorClassIdentifier: + id: 0 + shaftType: 1 + initRadius: 1 + initSprite: {fileID: 2517083572485905542, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + hasGear: 1 + childGear: {fileID: 0} + initialSpeed: 0 + targetSpeed: 0.3 + speed: 0 +--- !u!212 &542720341 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 542720338} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 4 + m_Sprite: {fileID: -5530534795728576300, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 0.55} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &551825976 GameObject: m_ObjectHideFlags: 0 @@ -1895,14 +2160,13 @@ GameObject: m_Component: - component: {fileID: 657112469} - component: {fileID: 657112471} - - component: {fileID: 657112470} m_Layer: 0 m_Name: Gear Box System m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &657112469 Transform: m_ObjectHideFlags: 0 @@ -1912,7 +2176,7 @@ Transform: m_GameObject: {fileID: 657112468} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.08, y: -0.63, z: 0} + m_LocalPosition: {x: 20, y: 0, z: 0} m_LocalScale: {x: 0.93, y: 0.93, z: 0.93} m_ConstrainProportionsScale: 0 m_Children: @@ -1920,58 +2184,6 @@ Transform: - {fileID: 199118573} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &657112470 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 657112468} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 3 - m_Sprite: {fileID: 3788501556435333283, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 7.06, y: 3.95} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!114 &657112471 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1984,7 +2196,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 5489eacced0c49c4ab26308cd50fb917, type: 3} m_Name: m_EditorClassIdentifier: - gearPrefab: {fileID: 0} + gearPrefab: {fileID: 5285827322175967477, guid: 1711cb9f16070e0488096c259d4eee3d, type: 3} + shaftPrefab: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} --- !u!1 &693951178 GameObject: m_ObjectHideFlags: 0 @@ -2062,7 +2275,7 @@ SpriteRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: 4 + m_SortingOrder: 5 m_Sprite: {fileID: 2633204686855763081, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 @@ -2890,6 +3103,113 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 1 +--- !u!1 &995693011 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 995693012} + - component: {fileID: 995693014} + - component: {fileID: 995693013} + m_Layer: 0 + m_Name: Driver + m_TagString: Shaft + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &995693012 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 995693011} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.64, y: 3.33, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2003869747} + m_Father: {fileID: 199118573} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &995693013 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 995693011} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 468fc3bf68cb91149818f305858bc7fd, type: 3} + m_Name: + m_EditorClassIdentifier: + id: 0 + shaftType: 0 + initRadius: 0.5 + initSprite: {fileID: -997898850808940670, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + hasGear: 1 + childGear: {fileID: 0} + initialSpeed: 1 + targetSpeed: 0 + speed: 0 +--- !u!212 &995693014 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 995693011} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 4 + m_Sprite: {fileID: -5530534795728576300, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 0.55} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &1034942116 GameObject: m_ObjectHideFlags: 0 @@ -2974,84 +3294,6 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!1001 &1078086546 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 199118573} - m_Modifications: - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: hasGear - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: shaftType - value: 3 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initRadius - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initSprite - value: - objectReference: {fileID: 2517083572485905542, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} - - target: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_Name - value: Pluggable Shaft - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.x - value: 5.516 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.y - value: 3.867 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} ---- !u!4 &1078086547 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - m_PrefabInstance: {fileID: 1078086546} - m_PrefabAsset: {fileID: 0} --- !u!1 &1081346457 GameObject: m_ObjectHideFlags: 0 @@ -3205,14 +3447,13 @@ GameObject: m_Component: - component: {fileID: 1112213369} - component: {fileID: 1112213371} - - component: {fileID: 1112213370} m_Layer: 0 m_Name: Heart Engine System m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &1112213369 Transform: m_ObjectHideFlags: 0 @@ -3222,7 +3463,7 @@ Transform: m_GameObject: {fileID: 1112213368} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -2.1, y: 2.32, z: 0} + m_LocalPosition: {x: 0, y: -12, z: 0} m_LocalScale: {x: 0.93, y: 0.93, z: 0.93} m_ConstrainProportionsScale: 0 m_Children: @@ -3234,14 +3475,112 @@ Transform: - {fileID: 551825977} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &1112213370 -SpriteRenderer: +--- !u!114 &1112213371 +MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1112213368} m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 10324e3c30ee1924893a08455ce65e0d, type: 3} + m_Name: + m_EditorClassIdentifier: + config: + oilDownRatio: 0.2 + oilUpRatio: 0.4 + acceleratedSpeed: 1 + resistance: 1 + airMaxRatio: 0.45 + airMinRatio: 0.37 + baseAirMax: 0.2 + maxLevel: 5 + invalidTime: 0.7 + engineData: + curSpeed: 0 + curOil: 0 + curAir: 0 + curAirMin: 0 + curAirMax: 0 + curAirLevel: 0 + inAirRange: 0 +--- !u!1 &1119304932 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1119304933} + - component: {fileID: 1119304935} + - component: {fileID: 1119304934} + m_Layer: 0 + m_Name: Static Gear + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &1119304933 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1119304932} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1933921925} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &1119304934 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1119304932} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!212 &1119304935 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1119304932} + m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 @@ -3274,48 +3613,18 @@ SpriteRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: 2 - m_Sprite: {fileID: -1971700305276715936, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + m_SortingOrder: 5 + m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 8.985, y: 5.755} + m_DrawMode: 1 + m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!114 &1112213371 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1112213368} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 10324e3c30ee1924893a08455ce65e0d, type: 3} - m_Name: - m_EditorClassIdentifier: - config: - oilDownRatio: 0.2 - oilUpRatio: 0.4 - acceleratedSpeed: 1 - resistance: 1 - airMaxRatio: 0.45 - airMinRatio: 0.37 - baseAirMax: 0.2 - maxLevel: 5 - invalidTime: 0.7 - engineData: - curSpeed: 0 - curOil: 0 - curAir: 0 - curAirMin: 0 - curAirMax: 0 - curAirLevel: 0 - inAirRange: 0 --- !u!1 &1167439877 GameObject: m_ObjectHideFlags: 0 @@ -3800,79 +4109,233 @@ Transform: - {fileID: 2061960537} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &1443501785 -PrefabInstance: +--- !u!1 &1429499426 +GameObject: m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1429499427} + - component: {fileID: 1429499429} + - component: {fileID: 1429499428} + m_Layer: 0 + m_Name: Constant + m_TagString: Shaft + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1429499427 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1429499426} serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 199118573} - m_Modifications: - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: hasGear - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: shaftType - value: 3 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initRadius - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initSprite - value: - objectReference: {fileID: 2517083572485905542, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} - - target: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_Name - value: Shaft - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.x - value: 6.56 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.y - value: 4.334 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 5.973, y: 2.457, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 207364164} + m_Father: {fileID: 199118573} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1429499428 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1429499426} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 468fc3bf68cb91149818f305858bc7fd, type: 3} + m_Name: + m_EditorClassIdentifier: + id: 0 + shaftType: 2 + initRadius: 0.5 + initSprite: {fileID: 4685789066096419141, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + hasGear: 1 + childGear: {fileID: 0} + initialSpeed: 0 + targetSpeed: 0 + speed: 0 +--- !u!212 &1429499429 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1429499426} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 4 + m_Sprite: {fileID: -5530534795728576300, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 0.55} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &1449816259 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1449816260} + - component: {fileID: 1449816262} + - component: {fileID: 1449816261} + m_Layer: 0 + m_Name: Static Gear + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &1449816260 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1449816259} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 542720339} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &1449816261 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1449816259} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!212 &1449816262 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1449816259} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 5 + m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 1 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &1492467213 GameObject: m_ObjectHideFlags: 0 @@ -3946,7 +4409,7 @@ SpriteRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: 4 + m_SortingOrder: 6 m_Sprite: {fileID: 9131045294461249809, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 @@ -4860,11 +5323,6 @@ MonoBehaviour: noiseColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} clearColor: {r: 0, g: 1, b: 0, a: 1} waveformType: 0 ---- !u!4 &1747384944 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - m_PrefabInstance: {fileID: 514341497} - m_PrefabAsset: {fileID: 0} --- !u!1 &1775584168 GameObject: m_ObjectHideFlags: 0 @@ -5080,88 +5538,6 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 0.805, y: 0.56} m_EdgeRadius: 0 ---- !u!1001 &1860845980 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 199118573} - m_Modifications: - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: hasGear - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initRadius - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initSprite - value: - objectReference: {fileID: -997898850808940670, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initialSpeed - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_Name - value: Driver Shaft - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalScale.x - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.x - value: 4.64 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.y - value: 3.33 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} ---- !u!4 &1860845981 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - m_PrefabInstance: {fileID: 1860845980} - m_PrefabAsset: {fileID: 0} --- !u!1 &1864728082 GameObject: m_ObjectHideFlags: 0 @@ -5311,88 +5687,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d539f4fdddef410c9df21320f69fe38f, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1001 &1888547582 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 199118573} - m_Modifications: - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: hasGear - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: shaftType - value: 2 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initRadius - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 6084533904510143880, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: initSprite - value: - objectReference: {fileID: 4685789066096419141, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} - - target: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_Name - value: Constant Shaft - objectReference: {fileID: 0} - - target: {fileID: 6363828760380717502, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_IsActive - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.x - value: 5.973 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.y - value: 2.457 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} ---- !u!4 &1888547583 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 8196328002646668744, guid: 4bc957ee60485f2439dca605f6d4035e, type: 3} - m_PrefabInstance: {fileID: 1888547582} - m_PrefabAsset: {fileID: 0} --- !u!1 &1894754778 GameObject: m_ObjectHideFlags: 0 @@ -5623,6 +5917,113 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 5 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &1933921924 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1933921925} + - component: {fileID: 1933921927} + - component: {fileID: 1933921926} + m_Layer: 0 + m_Name: Empty + m_TagString: Shaft + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1933921925 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1933921924} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 6.56, y: 4.334, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1119304933} + m_Father: {fileID: 199118573} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1933921926 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1933921924} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 468fc3bf68cb91149818f305858bc7fd, type: 3} + m_Name: + m_EditorClassIdentifier: + id: 0 + shaftType: 3 + initRadius: 0.5 + initSprite: {fileID: 2517083572485905542, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + hasGear: 0 + childGear: {fileID: 0} + initialSpeed: 0 + targetSpeed: 0 + speed: 0 +--- !u!212 &1933921927 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1933921924} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 4 + m_Sprite: {fileID: -5530534795728576300, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 0.55} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &1950862272 GameObject: m_ObjectHideFlags: 0 @@ -6029,7 +6430,7 @@ SpriteRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: 5 + m_SortingOrder: 7 m_Sprite: {fileID: 21300000, guid: 6f1e19b22a956634b86a43a0ee4ae6f6, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 @@ -6088,6 +6489,233 @@ CircleCollider2D: m_Offset: {x: 0, y: 0} serializedVersion: 2 m_Radius: 0.5 +--- !u!1 &2003869746 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2003869747} + - component: {fileID: 2003869749} + - component: {fileID: 2003869748} + m_Layer: 0 + m_Name: Static Gear + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &2003869747 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2003869746} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 995693012} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!58 &2003869748 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2003869746} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!212 &2003869749 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2003869746} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 5 + m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 1 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!1 &2012701253 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2012701254} + - component: {fileID: 2012701256} + - component: {fileID: 2012701255} + m_Layer: 0 + m_Name: Pluggable + m_TagString: Shaft + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2012701254 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2012701253} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 5.516, y: 3.867, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 385257989} + m_Father: {fileID: 199118573} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2012701255 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2012701253} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 468fc3bf68cb91149818f305858bc7fd, type: 3} + m_Name: + m_EditorClassIdentifier: + id: 0 + shaftType: 3 + initRadius: 0.5 + initSprite: {fileID: 2517083572485905542, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + hasGear: 1 + childGear: {fileID: 0} + initialSpeed: 0 + targetSpeed: 0 + speed: 0 +--- !u!212 &2012701256 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2012701253} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 4 + m_Sprite: {fileID: -5530534795728576300, guid: 6de0a74e5b5268b4998dc7a5c687fb95, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 0.55} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &2061960536 GameObject: m_ObjectHideFlags: 0 @@ -6496,6 +7124,10 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 8556345213791081418, guid: 13f00ab6092291d49a9312e52873d80b, type: 3} + propertyPath: m_LocalPosition.x + value: 20 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] diff --git a/Assets/Scripts/Dialog System/DialogController.cs b/Assets/Scripts/Dialog System/DialogController.cs index bc3b83a4f..e1d4a172e 100644 --- a/Assets/Scripts/Dialog System/DialogController.cs +++ b/Assets/Scripts/Dialog System/DialogController.cs @@ -2,7 +2,6 @@ using System; using System.Collections; using System.Collections.Generic; using AibisDream.Kit; -using AibisDream.Utility; using UnityEngine; using UnityEngine.Events; using Yarn.Unity; @@ -282,41 +281,12 @@ namespace AibisDream MainUIController.Instance.TVFadeOut(duration); } - /// - /// 角色初始化 - /// - /// 角色图片名 - // [YarnCommand("character_init")] - // public static void CharacterInit(string picName) - // { - // MainSceneController.Instance.Guest.SwitchImage(picName); - // MainSceneController.Instance.Guest.Show(); - // } - - // [YarnCommand("character_switch_image")] - // public static void CharacterSwitchImage(string picPath) - // { - // // TODO 统一路径后就不用路径做参数了 - // MainSceneController.Instance.Guest.SwitchImage(picPath); - // } - - // [YarnCommand("character_fade_in")] - // public static IEnumerator CharacterFadeIn(float duration = 1) - // { - // return MainSceneController.Instance.Guest.FadeInSync(duration); - // } - - // [YarnCommand("character_fade_Out")] - // public static IEnumerator CharacterFadeOut(float duration = 1) - // { - // return MainSceneController.Instance.Guest.FadeOutSync(duration); - // } - - // [YarnCommand("character_move_to_fix")] - // public static IEnumerator CharacterMoveToFix() - // { - // return MainSceneController.Instance.MoveToFix(); - // } + [YarnCommand("show_tv_scene")] + public static void ShowTVScene(float duration) + { + MainUIController.Instance.TVFadeIn(duration); + } + [YarnCommand("load_scene")] public static IEnumerator LoadScene(string sceneName, float duration = 1) { diff --git a/Assets/Scripts/FixSystemNew/BodyModule.cs b/Assets/Scripts/FixSystemNew/BodyModule.cs index 679d82a29..8a5658b67 100644 --- a/Assets/Scripts/FixSystemNew/BodyModule.cs +++ b/Assets/Scripts/FixSystemNew/BodyModule.cs @@ -94,7 +94,7 @@ namespace AibisDream.FixSystem return new BodyModuleData { moduleName = data.moduleName, - modulePicPath = ResourceKit.SavePsdSprite(modulePic.sprite), + ModulePic = modulePic.sprite, ModulePos = transform.localPosition, SocketPos = socketPos.localPosition, waveformType = data.waveformType, @@ -128,8 +128,11 @@ namespace AibisDream.FixSystem [JsonIgnore] public string DeepInNodeName => string.Format(DeepInTemplate, moduleName); [JsonIgnore] - public Sprite ModulePic => - !string.IsNullOrEmpty(modulePicPath) ? ResourceKit.LoadSpriteFromPsd(modulePicPath) : null; + public Sprite ModulePic + { + get => !string.IsNullOrEmpty(modulePicPath) ? ResourceKit.LoadSpriteFromPsd(modulePicPath) : null; + set => modulePicPath = ResourceKit.SaveSprite(value); + } [JsonIgnore] public Vector3 ModulePos diff --git a/Assets/Scripts/FixSystemNew/BodyModuleSystem.cs b/Assets/Scripts/FixSystemNew/BodyModuleSystem.cs index 2304341a2..61c1345c6 100644 --- a/Assets/Scripts/FixSystemNew/BodyModuleSystem.cs +++ b/Assets/Scripts/FixSystemNew/BodyModuleSystem.cs @@ -1,7 +1,6 @@ using System.Linq; using AibisDream.Framework; using AibisDream.Kit; -using AibisDream.Utility; using UnityEngine; using UnityEngine.Events; diff --git a/Assets/Scripts/FixSystemNew/FixYarnCommandEx.cs b/Assets/Scripts/FixSystemNew/FixYarnCommandEx.cs index 33c412185..348e857bf 100644 --- a/Assets/Scripts/FixSystemNew/FixYarnCommandEx.cs +++ b/Assets/Scripts/FixSystemNew/FixYarnCommandEx.cs @@ -34,7 +34,7 @@ namespace AibisDream.FixSystem private static void StartGearSystem(string dataKey) { - var gearSystem = FixSystemCenter.SystemDic.Get(); + var gearSystem = FixSystemCenter.SystemDic.Get(); } private static void StartEngineSystem(string dataKey) diff --git a/Assets/Scripts/Framework/OtherKit/MonoCenter.cs b/Assets/Scripts/Framework/OtherKit/MonoCenter.cs index bde7ea165..9475ace40 100644 --- a/Assets/Scripts/Framework/OtherKit/MonoCenter.cs +++ b/Assets/Scripts/Framework/OtherKit/MonoCenter.cs @@ -25,7 +25,6 @@ namespace AibisDream.Framework _iocContainer ??= new IOCContainer(); // 在这里添加相应的工具 Register(new MoveableSystem()); - Register(new WaveTest()); } private void Register(T kit) where T : IMonoKit @@ -43,22 +42,6 @@ namespace AibisDream.Framework private void Update() => OnUpdate?.Invoke(); } - public class WaveTest : IMonoKit - { - public void OnUpdate() - { - if (Input.GetKeyDown(KeyCode.Space)) - { - FixSystemCenter.SystemDic.Get().PlayWave(FixSystem.WaveformType.Sine, true); - } - - if (Input.GetKeyDown(KeyCode.A)) - { - FixSystemCenter.SystemDic.Get().StartScan(); - } - } - } - public interface IMonoKit { void OnUpdate(); diff --git a/Assets/Scripts/Framework/ResourceKit/ResourceKit.cs b/Assets/Scripts/Framework/ResourceKit/ResourceKit.cs index cd906f07c..d578dfdca 100644 --- a/Assets/Scripts/Framework/ResourceKit/ResourceKit.cs +++ b/Assets/Scripts/Framework/ResourceKit/ResourceKit.cs @@ -6,7 +6,7 @@ namespace AibisDream.Framework { public static class ResourceKit { - public static string SavePsdSprite(Sprite sprite) + public static string SaveSprite(Sprite sprite) { if (!sprite) return ""; diff --git a/Assets/Scripts/MiniGame/Gear/Gear.cs b/Assets/Scripts/MiniGame/Gear/Gear.cs index 4ac081691..489e04be6 100644 --- a/Assets/Scripts/MiniGame/Gear/Gear.cs +++ b/Assets/Scripts/MiniGame/Gear/Gear.cs @@ -1,3 +1,4 @@ +using AibisDream.FixSystem; using AibisDream.Framework; using DG.Tweening; using UnityEngine; @@ -9,21 +10,21 @@ namespace AibisDream [SerializeField] public float radius; [SerializeField] public Sprite gearSprite; - private GearController gearController; - private CircleCollider2D circleCollider; - private SpriteRenderer spriteRenderer; + private GearSystem _gearSystem; + private CircleCollider2D _circleCollider; + private SpriteRenderer _spriteRenderer; public Shaft targetShaft; private void Awake() { - circleCollider = GetComponent(); - spriteRenderer = GetComponent(); + _circleCollider = GetComponent(); + _spriteRenderer = GetComponent(); } private void Start() { - gearController = transform.parent.parent.GetComponent(); + _gearSystem = FixSystemCenter.SystemDic.Get(); // 给齿轮赋值 InitGearModel(); } @@ -34,10 +35,10 @@ namespace AibisDream public void InitGearModel() { // 给齿轮赋值 - spriteRenderer.sprite = gearSprite; - circleCollider.radius = radius; + _spriteRenderer.sprite = gearSprite; + _circleCollider.radius = radius; - spriteRenderer.size = new Vector2(radius * 2, radius * 2); + _spriteRenderer.size = new Vector2(radius * 2, radius * 2); } public void StartMove() @@ -58,10 +59,10 @@ namespace AibisDream public void Move(Vector2 targetPos) { transform.position = targetPos; - var tempShaft = gearController.CheckClosestShaft(transform.position, radius); + var tempShaft = _gearSystem.CheckClosestShaft(transform.position, radius); if (!tempShaft) return; - if (gearController.CheckGearSuitable(tempShaft, radius)) + if (_gearSystem.CheckGearSuitable(tempShaft, radius)) { targetShaft = tempShaft; } diff --git a/Assets/Scripts/MiniGame/Gear/GearController.cs b/Assets/Scripts/MiniGame/Gear/GearController.cs deleted file mode 100644 index 82ee21c56..000000000 --- a/Assets/Scripts/MiniGame/Gear/GearController.cs +++ /dev/null @@ -1,117 +0,0 @@ -using AibisDream.FixSystem; -using AibisDream.Framework; -using Framework.Core; -using UnityEngine; - -namespace AibisDream -{ - public class GearController : MonoBehaviour, ISystem - { - #region 索引 - - [SerializeField] private GameObject gearPrefab; - private Shaft[] _shafts; - - #endregion - - private ShaftGraph _shaftGraph; - private GearSysTemLevelData _levelData; - - private void Awake() - { - Init(); - } - - private void OnEnable() - { - Enable(); - } - - private void OnDisable() - { - Disable(); - } - - #region 生命周期管理 - - public void Init() - { - FixSystemCenter.SystemDic.Register(this); - this.FindComponents(); - _shafts = GetComponentsInChildren(); - - gearPrefab = Resources.Load("Prefabs/Gear System/Gear"); - } - - public void Enable() - { - _shaftGraph = new ShaftGraph(_shafts); - } - - public void Disable() - { - _shaftGraph = null; - } - - public void Deinit() - { - throw new System.NotImplementedException(); - } - - #endregion - - /// - /// 判断吸附位置 - /// - /// 齿轮当前位置 - /// 齿轮半径 - /// 能够被吸附的轴 - public Shaft CheckClosestShaft(Vector3 pos, float gearRadius) - { - return _shaftGraph.QuerySnapShaft(pos, gearRadius); - } - - /// - /// 判断齿轮能不能放进轴内 - /// - /// 当前轴 - /// 齿轮半径 - /// 是否可用 - public bool CheckGearSuitable(Shaft sourceShaft, float gearRadius) - { - return _shaftGraph.CheckGearSuitable(sourceShaft, gearRadius); - } - - /// - /// 生成齿轮 - /// - /// 位置 - /// 半径 - /// 齿轮图片 - /// 速度 - /// 齿轮Obj - public GameObject InitGear(Vector3 pos, float radius, Sprite sprite, float speed) - { - GameObject gearObj = Instantiate(gearPrefab, pos, Quaternion.identity); - gearObj.transform.parent = transform.GetChild(0).transform; - Gear gear = gearObj.GetComponent(); - gear.radius = radius; - gear.gearSprite = sprite; - return gearObj; - } - - /// - /// 某个轴上齿轮发生变化时更新临接关系 - /// - /// 轴ID - public void ChangeGraphVertex(int shaftId) - { - _shaftGraph?.ChangeVertex(shaftId); - } - - public void Succeed() - { - Debug.Log("达成目标"); - } - } -} \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/Gear/GearSystem.cs b/Assets/Scripts/MiniGame/Gear/GearSystem.cs new file mode 100644 index 000000000..a5fcc07ac --- /dev/null +++ b/Assets/Scripts/MiniGame/Gear/GearSystem.cs @@ -0,0 +1,215 @@ +using System; +using System.Linq; +using AibisDream.FixSystem; +using AibisDream.Framework; +using AibisDream.Kit; +using Framework.Core; +using UnityEngine; + +namespace AibisDream +{ + public class GearSystem : SystemHasData + { + #region 索引 + + [SerializeField] private GameObject gearPrefab; + [SerializeField] private GameObject shaftPrefab; + private Shaft[] _shafts; + + #endregion + + private ShaftGraph _shaftGraph; + + private void Awake() + { + Init(); + } + + private void OnEnable() + { + Enable(); + } + + private void OnDisable() + { + Disable(); + } + + #region 生命周期管理 + + public void Init() + { + FixSystemCenter.SystemDic.Register(this); + this.FindComponents(); + _shafts = GetComponentsInChildren(); + } + + public void Enable() + { + _shaftGraph = new ShaftGraph(_shafts); + } + + public void Disable() + { + _shaftGraph = null; + } + + #endregion + + /// + /// 判断吸附位置 + /// + /// 齿轮当前位置 + /// 齿轮半径 + /// 能够被吸附的轴 + public Shaft CheckClosestShaft(Vector3 pos, float gearRadius) + { + return _shaftGraph.QuerySnapShaft(pos, gearRadius); + } + + /// + /// 判断齿轮能不能放进轴内 + /// + /// 当前轴 + /// 齿轮半径 + /// 是否可用 + public bool CheckGearSuitable(Shaft sourceShaft, float gearRadius) + { + return _shaftGraph.CheckGearSuitable(sourceShaft, gearRadius); + } + + /// + /// 生成齿轮 + /// + /// 位置 + /// 半径 + /// 齿轮图片 + /// 速度 + /// 齿轮Obj + public GameObject InitGear(Vector3 pos, float radius, Sprite sprite) + { + GameObject gearObj = Instantiate(gearPrefab, pos, Quaternion.identity); + gearObj.transform.parent = transform.Find("Gears").transform; + Gear gear = gearObj.GetComponent(); + gear.radius = radius; + gear.gearSprite = sprite; + return gearObj; + } + + /// + /// 某个轴上齿轮发生变化时更新临接关系 + /// + /// 轴ID + public void ChangeGraphVertex(int shaftId) + { + _shaftGraph?.ChangeVertex(shaftId); + } + + public void Succeed() + { + Debug.Log("达成目标"); + } + + #region 数据保存与加载 + + public static string DataPath = Application.streamingAssetsPath + "/LevelData/GearSystem/"; + private string[] _keyOptions; + public override string CurDataKey { get; set; } + + public override string[] GetDataKeyOptions() + { + return _keyOptions ??= ConfigUtil.Instance.GetFileNames(DataPath); + } + + public override void Load() + { + if (string.IsNullOrEmpty(CurDataKey)) + { + Debug.Log("配置项名称为空"); + return; + } + + if (!ConfigUtil.Instance.TryLoadConfig(DataPath + CurDataKey, out var data)) + { + Debug.Log("没有找到配置项"); + return; + } + +#if UNITY_EDITOR + // 现将当前配置保存为temp避免丢失 + if (CurDataKey != "temp.json") + { + SaveByKey("temp.json"); + } +#endif + + LoadByData(data); + } + + private void LoadByData(GearSystemData gearSystemData) + { + // 先清除 + var shaftRoot = transform.Find("Shafts"); + var shaftsObj = shaftRoot.GetComponentsInChildren(); + foreach (var oldShaft in shaftsObj) + { +#if UNITY_EDITOR + DestroyImmediate(oldShaft.gameObject); +#else + Destory(oldShaft.gameObject); +#endif + } + + // 再添加 + foreach (var shaftData in gearSystemData.shaftLevelDataArray) + { + var newModule = Instantiate(shaftPrefab, shaftRoot).GetComponent(); + newModule.Load(shaftData); + } + } + + public override void Save() + { + if (string.IsNullOrEmpty(CurDataKey)) return; + + SaveByKey(CurDataKey); + if (!_keyOptions.Contains(CurDataKey)) + { + // 重新读取key + _keyOptions = ConfigUtil.Instance.GetFileNames(DataPath); + } + } + + private void SaveByKey(string key) + { + var shaftsObj = transform.Find("Shafts").GetComponentsInChildren(); + var shaftDataArray = new ShaftLevelData[shaftsObj.Length]; + + for (int i = 0; i < shaftDataArray.Length; i++) + { + shaftDataArray[i] = shaftsObj[i].Save(); + } + + var data = new GearSystemData + { + shaftLevelDataArray = shaftDataArray + }; + + ConfigUtil.Instance.SaveConfig(data, DataPath + key); + } + + public void AddShaft() + { + var shaftRoot = transform.Find("Shafts"); + Instantiate(shaftPrefab, shaftRoot); + } + + #endregion + } + + [Serializable] + public struct GearSystemData + { + public ShaftLevelData[] shaftLevelDataArray; + } +} \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/Gear/GearController.cs.meta b/Assets/Scripts/MiniGame/Gear/GearSystem.cs.meta similarity index 100% rename from Assets/Scripts/MiniGame/Gear/GearController.cs.meta rename to Assets/Scripts/MiniGame/Gear/GearSystem.cs.meta diff --git a/Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs b/Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs deleted file mode 100644 index 1a3cda8a0..000000000 --- a/Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; -using UnityEngine; - -namespace AibisDream -{ - [Serializable] - public class GearSysTemLevelData - { - public GearLevelData[] gearLevelDataArray; - public ShaftLevelData[] shaftLevelDataArray; - } - - [Serializable] - public class GearLevelData - { - public const string GearPicPath = "Art/Fix/Stone"; - - public Vector3 gearPos; - public float radius; - public string gearPic; - - public Sprite GearSprite => Resources.Load($"{GearPicPath}/{gearPic}"); - } - - [Serializable] - public class ShaftLevelData - { - public int id; - public ShaftType shaftType; - // 初始角速度(仅Driver有) - public float initialSpeed; - // 目标角速度(仅Target有) - public float targetSpeed; - - // 初始齿轮情况(Driver, Target, Constant必须有,Pluggable不一定) - public bool hasChildGear; - public float radius; - public string gearPic; - } -} \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs.meta b/Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs.meta deleted file mode 100644 index 51b66b84d..000000000 --- a/Assets/Scripts/MiniGame/Gear/GearSystemConfig.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1f588bece13144969fb1eb88bed44f56 -timeCreated: 1732358007 \ No newline at end of file diff --git a/Assets/Scripts/MiniGame/Gear/Shaft.cs b/Assets/Scripts/MiniGame/Gear/Shaft.cs index 5672d1c23..f1ad00d23 100644 --- a/Assets/Scripts/MiniGame/Gear/Shaft.cs +++ b/Assets/Scripts/MiniGame/Gear/Shaft.cs @@ -1,5 +1,8 @@ -using AibisDream.Utility; +using System; +using AibisDream.Framework; +using AibisDream.Utility; using DG.Tweening; +using Newtonsoft.Json; using UnityEngine; namespace AibisDream @@ -50,11 +53,11 @@ namespace AibisDream } } - private GearController gearController; + private GearSystem _gearSystem; private void Awake() { - gearController = transform.parent.parent.GetComponent(); + _gearSystem = transform.parent.parent.GetComponent(); } /// @@ -94,7 +97,7 @@ namespace AibisDream private GameObject InitPluggableGear() { - var gear = gearController.InitGear(transform.position, initRadius, initSprite, initialSpeed); + var gear = _gearSystem.InitGear(transform.position, initRadius, initSprite); gear.GetComponent().targetShaft = this; return gear; } @@ -102,13 +105,13 @@ namespace AibisDream public void PlugInGear(Gear gear) { childGear = gear.gameObject; - gearController.ChangeGraphVertex(GetInstanceID()); + _gearSystem.ChangeGraphVertex(GetInstanceID()); } public void PlugOutGear() { childGear = null; - gearController.ChangeGraphVertex(GetInstanceID()); + _gearSystem.ChangeGraphVertex(GetInstanceID()); } public void UpdateSpeed() @@ -154,7 +157,7 @@ namespace AibisDream { if (targetSpeed <= Mathf.Abs(speed)) { - gearController.Succeed(); + _gearSystem.Succeed(); } } } @@ -228,6 +231,39 @@ namespace AibisDream Gizmos.color = Color.red; Gizmos.DrawWireSphere(transform.position, initRadius); } + + #region 保存与加载 + + public void Load(ShaftLevelData levelData) + { + // 加载数据 + gameObject.name = levelData.shaftName; + transform.localPosition = levelData.ShaftPos; + initSprite = levelData.GearPic; + + shaftType = levelData.shaftType; + hasGear = levelData.hasChildGear; + initialSpeed = levelData.initialSpeed; + targetSpeed = levelData.targetSpeed; + initRadius = levelData.radius; + } + + public ShaftLevelData Save() + { + return new ShaftLevelData + { + shaftName = gameObject.name, + ShaftPos = transform.localPosition, + GearPic = initSprite, + shaftType = shaftType, + hasChildGear = hasGear, + initialSpeed = initialSpeed, + targetSpeed = targetSpeed, + radius = initRadius + }; + } + + #endregion } public enum ShaftType @@ -237,4 +273,35 @@ namespace AibisDream Constant, // 没有初始速度,没有目标速度,不可拖动 Pluggable // 没有初始速度,没有目标速度,可拔插 } + + [Serializable] + public struct ShaftLevelData + { + public string shaftName; + // 关卡数据 + public ShaftType shaftType; + public float initialSpeed; + public float targetSpeed; + public bool hasChildGear; + public float radius; + + // 外形数据 + public SerializableVector3 shaftPos; + public string gearPicPath; + + // 类型转换 + [JsonIgnore] + public Sprite GearPic + { + get => !string.IsNullOrEmpty(gearPicPath) ? ResourceKit.LoadSpriteFromPsd(gearPicPath) : null; + set => gearPicPath = ResourceKit.SaveSprite(value); + } + + [JsonIgnore] + public Vector3 ShaftPos + { + get => shaftPos.ToVector3(); + set => shaftPos = new SerializableVector3(value); + } + } } \ No newline at end of file diff --git a/Assets/StreamingAssets/LevelData/GearSystem.meta b/Assets/StreamingAssets/LevelData/GearSystem.meta new file mode 100644 index 000000000..b9dd27b23 --- /dev/null +++ b/Assets/StreamingAssets/LevelData/GearSystem.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e9aeeab7039af7b43987667800d98723 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/StreamingAssets/LevelData/GearSystem/stone1.json b/Assets/StreamingAssets/LevelData/GearSystem/stone1.json new file mode 100644 index 000000000..acb32ed78 --- /dev/null +++ b/Assets/StreamingAssets/LevelData/GearSystem/stone1.json @@ -0,0 +1 @@ +{"shaftLevelDataArray":[{"shaftName":"Target","shaftType":1,"initialSpeed":0.0,"targetSpeed":0.3,"hasChildGear":true,"radius":1.0,"shaftPos":{"x":6.629,"y":0.684,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮C"},{"shaftName":"Driver","shaftType":0,"initialSpeed":1.0,"targetSpeed":0.0,"hasChildGear":true,"radius":0.5,"shaftPos":{"x":4.64,"y":3.33,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮A"},{"shaftName":"Constant","shaftType":2,"initialSpeed":0.0,"targetSpeed":0.0,"hasChildGear":true,"radius":0.5,"shaftPos":{"x":5.973,"y":2.457,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮B"},{"shaftName":"Pluggable","shaftType":3,"initialSpeed":0.0,"targetSpeed":0.0,"hasChildGear":true,"radius":0.5,"shaftPos":{"x":5.516,"y":3.867,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮C"},{"shaftName":"Empty","shaftType":3,"initialSpeed":0.0,"targetSpeed":0.0,"hasChildGear":false,"radius":0.5,"shaftPos":{"x":6.56,"y":4.334,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮C"}]} \ No newline at end of file diff --git a/Assets/StreamingAssets/LevelData/GearSystem/stone1.json.meta b/Assets/StreamingAssets/LevelData/GearSystem/stone1.json.meta new file mode 100644 index 000000000..c359f93d6 --- /dev/null +++ b/Assets/StreamingAssets/LevelData/GearSystem/stone1.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1401bb776a2e10a41a5f1a9473fa90bc +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/StreamingAssets/LevelData/GearSystem/temp.json b/Assets/StreamingAssets/LevelData/GearSystem/temp.json new file mode 100644 index 000000000..acb32ed78 --- /dev/null +++ b/Assets/StreamingAssets/LevelData/GearSystem/temp.json @@ -0,0 +1 @@ +{"shaftLevelDataArray":[{"shaftName":"Target","shaftType":1,"initialSpeed":0.0,"targetSpeed":0.3,"hasChildGear":true,"radius":1.0,"shaftPos":{"x":6.629,"y":0.684,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮C"},{"shaftName":"Driver","shaftType":0,"initialSpeed":1.0,"targetSpeed":0.0,"hasChildGear":true,"radius":0.5,"shaftPos":{"x":4.64,"y":3.33,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮A"},{"shaftName":"Constant","shaftType":2,"initialSpeed":0.0,"targetSpeed":0.0,"hasChildGear":true,"radius":0.5,"shaftPos":{"x":5.973,"y":2.457,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮B"},{"shaftName":"Pluggable","shaftType":3,"initialSpeed":0.0,"targetSpeed":0.0,"hasChildGear":true,"radius":0.5,"shaftPos":{"x":5.516,"y":3.867,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮C"},{"shaftName":"Empty","shaftType":3,"initialSpeed":0.0,"targetSpeed":0.0,"hasChildGear":false,"radius":0.5,"shaftPos":{"x":6.56,"y":4.334,"z":0.0},"gearPicPath":"Art/Fix/Stone/身体维修界面/变速箱齿轮C"}]} \ No newline at end of file diff --git a/Assets/StreamingAssets/LevelData/GearSystem/temp.json.meta b/Assets/StreamingAssets/LevelData/GearSystem/temp.json.meta new file mode 100644 index 000000000..7eeed5f21 --- /dev/null +++ b/Assets/StreamingAssets/LevelData/GearSystem/temp.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d96def72e7e63ad4bbd261a4888aa809 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: