From 382687055fce6c21b2e7bb4808780f6113dd37e4 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Sat, 15 Feb 2025 00:04:44 +0800 Subject: [PATCH] =?UTF-8?q?clinic=E5=88=B0bodymodule=E6=89=8D=E8=A7=A6?= =?UTF-8?q?=E5=8F=91timeline=EF=BC=8C=E5=8A=A0=E4=B8=80=E4=BA=9B=E9=95=9C?= =?UTF-8?q?=E5=A4=B4=E8=BD=AC=E6=8D=A2=E8=AE=BE=E5=AE=9A=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E4=BD=A9=E4=BD=A9=E5=9C=BA=E6=99=AFbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/CameraData/Main Camera Blends.asset | 22 +++++++++++++++++++ Assets/Scenes/PeipeiFixScene.unity | 10 ++++----- Assets/Scenes/Persistence.unity | 2 +- .../Scripts/FixSystemNew/FixStateMachine.cs | 17 ++++++++++++-- 4 files changed, 43 insertions(+), 8 deletions(-) diff --git a/Assets/CameraData/Main Camera Blends.asset b/Assets/CameraData/Main Camera Blends.asset index 2e9e9634d..ebcd6ec71 100644 --- a/Assets/CameraData/Main Camera Blends.asset +++ b/Assets/CameraData/Main Camera Blends.asset @@ -35,3 +35,25 @@ MonoBehaviour: m_PreInfinity: 0 m_PostInfinity: 0 m_RotationOrder: 0 + - m_From: Cooling Camera + m_To: Body Module Camera + m_Blend: + m_Style: 0 + m_Time: 2 + m_CustomCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 0 + m_PostInfinity: 0 + m_RotationOrder: 0 + - m_From: Body Module Camera + m_To: Cooling Camera + m_Blend: + m_Style: 0 + m_Time: 2 + m_CustomCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 0 + m_PostInfinity: 0 + m_RotationOrder: 0 diff --git a/Assets/Scenes/PeipeiFixScene.unity b/Assets/Scenes/PeipeiFixScene.unity index 96ba0f66b..3b9441824 100644 --- a/Assets/Scenes/PeipeiFixScene.unity +++ b/Assets/Scenes/PeipeiFixScene.unity @@ -447,7 +447,7 @@ SpriteRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 1134468525 m_SortingLayer: 10 - m_SortingOrder: 5 + m_SortingOrder: 6 m_Sprite: {fileID: 3822937466802405960, guid: fd04c28739017964789d58d573f9fabb, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 @@ -31451,8 +31451,8 @@ Transform: m_GameObject: {fileID: 1822610249} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -4.084, y: 0.591, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} + m_LocalPosition: {x: -4.136, y: 0.591, z: 0} + m_LocalScale: {x: 0.95581, y: 0.95581, z: 0.95581} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 2071292136} @@ -34044,8 +34044,8 @@ Transform: m_GameObject: {fileID: 2071292135} 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_LocalPosition: {x: -0.078, y: -0.009, z: 0} + m_LocalScale: {x: 0.90277, y: 0.90277, z: 0.90277} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1434391375} diff --git a/Assets/Scenes/Persistence.unity b/Assets/Scenes/Persistence.unity index 2ce5b33ab..4fabf395d 100644 --- a/Assets/Scenes/Persistence.unity +++ b/Assets/Scenes/Persistence.unity @@ -8149,7 +8149,7 @@ MonoBehaviour: - {fileID: 11400000, guid: 8d8b11f0c2fbc4d4cb8c2857d98383c9, type: 2} - {fileID: 11400000, guid: afc5b01ef301cc74db7cae741acad427, type: 2} - {fileID: 11400000, guid: ac5ca9a66ff22ab4b9cd5adbdade6b8c, type: 2} - runMode: 2 + runMode: 0 firstTalkSo: {fileID: 11400000, guid: ac5ca9a66ff22ab4b9cd5adbdade6b8c, type: 2} testTalkSo: {fileID: 11400000, guid: 68a9c1b8c5230454bb9498fd2ab5714b, type: 2} saveFileName: "PeipeiDay2_\u7B2C\u4E00\u6B21\u53D1\u70ED" diff --git a/Assets/Scripts/FixSystemNew/FixStateMachine.cs b/Assets/Scripts/FixSystemNew/FixStateMachine.cs index 6f1b71e5a..dcb1264ea 100644 --- a/Assets/Scripts/FixSystemNew/FixStateMachine.cs +++ b/Assets/Scripts/FixSystemNew/FixStateMachine.cs @@ -10,6 +10,11 @@ namespace AibisDream.FixSystem private IState _curState; private string _curArgs; + public FixStateMachine() + { + // 初始化为一个默认状态 + _curState = CreateState(FixState.Default, ""); + } public IEnumerator SwitchState(FixState nextState, string args = "") { @@ -17,6 +22,14 @@ namespace AibisDream.FixSystem yield return _curState?.Exit(); + // 检查当前状态和下一个状态 + if (_curState.GetState == FixState.Clinic && nextState == FixState.BodyModule) + { + // 仅在从 Clinic 到 BodyModule 时执行这两行 + yield return CameraKit.Instance.SwitchCamera(CameraEnum.CoolingMachine); + yield return TimelineManager.Instance.PlayTimeline("ToBodyModule"); + } + GameLoopManager.Instance?.UpdateFixState(nextState, _curArgs); _curState = CreateState(nextState, _curArgs); yield return _curState.Enter(); @@ -83,6 +96,7 @@ namespace AibisDream.FixSystem public IEnumerator Enter() { // 切换相机 + yield return CameraKit.Instance.SwitchCamera(CameraEnum.CoolingMachine); yield return CameraKit.Instance.SwitchCamera(CameraEnum.Clinic); } @@ -109,8 +123,6 @@ namespace AibisDream.FixSystem // 拔出插头 bodyModuleSystem.ResetPlug(); // 切换相机 - yield return CameraKit.Instance.SwitchCamera(CameraEnum.CoolingMachine); - yield return TimelineManager.Instance.PlayTimeline("ToBodyModule"); yield return CameraKit.Instance.SwitchCamera(CameraEnum.BodyModule); // 开启交互 bodyModuleSystem.EnableSystem(); @@ -126,6 +138,7 @@ namespace AibisDream.FixSystem yield break; } } + public struct GearState : IState {