From ebec0738f6f155a2672b0e68405788b1097e727f Mon Sep 17 00:00:00 2001 From: MinhHai Date: Tue, 13 Jan 2026 16:20:04 +0700 Subject: [PATCH 1/3] update DlgNPC: add pressed visual for btn --- Assets/Prefabs/UI/DialogNPC.prefab | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Assets/Prefabs/UI/DialogNPC.prefab b/Assets/Prefabs/UI/DialogNPC.prefab index 25e43093cd..bd10c0f276 100644 --- a/Assets/Prefabs/UI/DialogNPC.prefab +++ b/Assets/Prefabs/UI/DialogNPC.prefab @@ -415,8 +415,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 284.9078, y: -25} - m_SizeDelta: {x: 550, y: 50} + m_AnchoredPosition: {x: 284.9078, y: -15} + m_SizeDelta: {x: 550, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7193160187579287240 CanvasRenderer: @@ -439,7 +439,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Navigation: - m_Mode: 3 + m_Mode: 0 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} @@ -448,8 +448,8 @@ MonoBehaviour: m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_HighlightedColor: {r: 0.86252034, g: 0.9622642, b: 0.43120328, a: 1} + m_PressedColor: {r: 0.31746176, g: 0.7735849, b: 0.4484142, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 @@ -466,7 +466,7 @@ MonoBehaviour: m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 - m_TargetGraphic: {fileID: 0} + m_TargetGraphic: {fileID: 478583687716476312} m_OnClick: m_PersistentCalls: m_Calls: [] From 8285d1b68a07347da0491e9835b9dd0d3cf487fc Mon Sep 17 00:00:00 2001 From: MinhHai Date: Tue, 13 Jan 2026 17:27:44 +0700 Subject: [PATCH 2/3] add FreeLook Camera become prefab --- .../Prefab/FreeLook Camera.prefab | 40 +++++++++---------- Assets/Scenes/a61.unity | 4 +- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab b/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab index adc5d9379e..f8024fa0fc 100644 --- a/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab +++ b/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab @@ -1,6 +1,6 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &4998203355105501952 +--- !u!1 &5860545600847923144 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -8,11 +8,11 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1628544740079825057} - - component: {fileID: 2396821685412871444} - - component: {fileID: 7258523983903280597} - - component: {fileID: 2200587088708437140} - - component: {fileID: 8677225758390490087} + - component: {fileID: 5220884980158782753} + - component: {fileID: 2923694103221183510} + - component: {fileID: 864878593467321995} + - component: {fileID: 3005089224860696078} + - component: {fileID: 9220823260634167621} m_Layer: 0 m_Name: FreeLook Camera m_TagString: Untagged @@ -20,13 +20,13 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &1628544740079825057 +--- !u!4 &5220884980158782753 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4998203355105501952} + m_GameObject: {fileID: 5860545600847923144} serializedVersion: 2 m_LocalRotation: {x: 0.23378472, y: -1.6779091e-15, z: 8.341431e-16, w: 0.9722884} m_LocalPosition: {x: -736.68787, y: 50.89, z: -269.46097} @@ -35,13 +35,13 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &2396821685412871444 +--- !u!114 &2923694103221183510 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4998203355105501952} + m_GameObject: {fileID: 5860545600847923144} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f9dfa5b682dcd46bda6128250e975f58, type: 3} @@ -78,13 +78,13 @@ MonoBehaviour: BarrelClipping: 0.25 Anamorphism: 0 BlendHint: 0 ---- !u!114 &7258523983903280597 +--- !u!114 &864878593467321995 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4998203355105501952} + m_GameObject: {fileID: 5860545600847923144} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 3b5d7c088409d9a40b7b09aa707777f8, type: 3} @@ -141,13 +141,13 @@ MonoBehaviour: Wait: 1 Time: 2 Restrictions: 0 ---- !u!114 &2200587088708437140 +--- !u!114 &3005089224860696078 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4998203355105501952} + m_GameObject: {fileID: 5860545600847923144} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f38bda98361e1de48a4ca2bd86ea3c17, type: 3} @@ -164,19 +164,19 @@ MonoBehaviour: Offset: {x: 0, y: 0} CenterOnActivate: 1 TargetOffset: {x: 0, y: 1.5, z: 0} - Damping: {x: 0.5, y: 0.5} + Damping: {x: 0.5, y: 0} Lookahead: Enabled: 0 Time: 0 Smoothing: 0 IgnoreY: 0 ---- !u!114 &8677225758390490087 +--- !u!114 &9220823260634167621 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4998203355105501952} + m_GameObject: {fileID: 5860545600847923144} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 89875cdc57c54474a8a74efd9b2a3b5d, type: 3} @@ -188,7 +188,7 @@ MonoBehaviour: m_ControllerManager: Controllers: - Name: Look Orbit X - Owner: {fileID: 7258523983903280597} + Owner: {fileID: 864878593467321995} Enabled: 1 Input: InputAction: {fileID: -5630151704836100654, guid: 1d6e640e716dc4ff6989b73d02023f2b, type: 3} @@ -201,7 +201,7 @@ MonoBehaviour: AccelTime: 0.2 DecelTime: 0.2 - Name: Look Orbit Y - Owner: {fileID: 7258523983903280597} + Owner: {fileID: 864878593467321995} Enabled: 1 Input: InputAction: {fileID: -5630151704836100654, guid: 1d6e640e716dc4ff6989b73d02023f2b, type: 3} @@ -214,7 +214,7 @@ MonoBehaviour: AccelTime: 0.2 DecelTime: 0.2 - Name: Orbit Scale - Owner: {fileID: 7258523983903280597} + Owner: {fileID: 864878593467321995} Enabled: 1 Input: InputAction: {fileID: -423771258819551211, guid: 1d6e640e716dc4ff6989b73d02023f2b, type: 3} diff --git a/Assets/Scenes/a61.unity b/Assets/Scenes/a61.unity index 7b83b30ff0..c4f8966cc0 100644 --- a/Assets/Scenes/a61.unity +++ b/Assets/Scenes/a61.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:93bd71a1075577b8cfeb184d2dd0dbe13c961132bb7dbffbf13f53c62f694dff -size 200524005 +oid sha256:def3c6a4f58ef9b5c9558210328e5b6f3ed11bfee5b577271ee43fa110616b82 +size 200521689 From 425698dd7908d20a1bb75ea71de693173c1ad969 Mon Sep 17 00:00:00 2001 From: Tungdv Date: Tue, 13 Jan 2026 18:34:59 +0700 Subject: [PATCH 3/3] fix: update pos camera in HP. --- .../Prefab/FreeLook Camera.prefab | 6 +-- .../Scripts/Camera/CameraController.cs | 18 +++++++-- Assets/PerfectWorld/Scripts/Move/CECPlayer.cs | 6 ++- Assets/Prefabs/Player/PlayerPrefab.prefab | 37 ++++++++++++++++++- Assets/Scripts/CECHostPlayer.cs | 8 ++++ 5 files changed, 65 insertions(+), 10 deletions(-) diff --git a/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab b/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab index f8024fa0fc..c74004d051 100644 --- a/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab +++ b/Assets/PerfectWorld/Prefab/FreeLook Camera.prefab @@ -28,13 +28,13 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5860545600847923144} serializedVersion: 2 - m_LocalRotation: {x: 0.23378472, y: -1.6779091e-15, z: 8.341431e-16, w: 0.9722884} + m_LocalRotation: {x: 0.2337847, y: 0, z: 0, w: 0.9722884} m_LocalPosition: {x: -736.68787, y: 50.89, z: -269.46097} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_LocalEulerAnglesHint: {x: 27.04, y: 0, z: 0} --- !u!114 &2923694103221183510 MonoBehaviour: m_ObjectHideFlags: 0 @@ -164,7 +164,7 @@ MonoBehaviour: Offset: {x: 0, y: 0} CenterOnActivate: 1 TargetOffset: {x: 0, y: 1.5, z: 0} - Damping: {x: 0.5, y: 0} + Damping: {x: 0, y: 0} Lookahead: Enabled: 0 Time: 0 diff --git a/Assets/PerfectWorld/Scripts/Camera/CameraController.cs b/Assets/PerfectWorld/Scripts/Camera/CameraController.cs index 7a9f933518..4664fecc29 100644 --- a/Assets/PerfectWorld/Scripts/Camera/CameraController.cs +++ b/Assets/PerfectWorld/Scripts/Camera/CameraController.cs @@ -53,10 +53,20 @@ namespace BrewMonster //todo: should not always update if (_cinemachineCamera.Follow == null && CECGameRun.Instance.GetHostPlayer() != null) { - _cinemachineCamera.Follow = CECGameRun.Instance.GetHostPlayer().transform; - _cinemachineCamera.ForceCameraPosition(CECGameRun.Instance.GetHostPlayer().transform.position, Quaternion.identity); - orbital.HorizontalAxis.Value = 208; - orbital.VerticalAxis.Value = -268; + if(CECGameRun.Instance.GetHostPlayer().PointCam != null) + { + _cinemachineCamera.Follow = CECGameRun.Instance.GetHostPlayer().PointCam; + _cinemachineCamera.ForceCameraPosition(CECGameRun.Instance.GetHostPlayer().PointCam.position, Quaternion.identity); + orbital.HorizontalAxis.Value = 208; + orbital.VerticalAxis.Value = -268; + } + else + { + _cinemachineCamera.Follow = CECGameRun.Instance.GetHostPlayer().transform; + _cinemachineCamera.ForceCameraPosition(CECGameRun.Instance.GetHostPlayer().transform.position, Quaternion.identity); + orbital.HorizontalAxis.Value = 208; + orbital.VerticalAxis.Value = -268; + } } } } diff --git a/Assets/PerfectWorld/Scripts/Move/CECPlayer.cs b/Assets/PerfectWorld/Scripts/Move/CECPlayer.cs index f928cb76d0..7de9bc56fd 100644 --- a/Assets/PerfectWorld/Scripts/Move/CECPlayer.cs +++ b/Assets/PerfectWorld/Scripts/Move/CECPlayer.cs @@ -28,6 +28,7 @@ namespace BrewMonster { [SerializeField] protected Transform parentModel; [SerializeField] protected TextMeshProUGUI txtName; + [SerializeField] protected Transform pointCam; [ResetStatic] private static PLAYER_ACTION[] _default_actions; [ResetStatic] @@ -181,7 +182,10 @@ namespace BrewMonster { parentModel = transform.GetChild(0); txtName = GetComponentInChildren(); - + if(transform.childCount >= 3) + { + pointCam = transform.GetChild(2); + } _pPlayerModel = await NPCManager.Instance.GetModelPlayer(profession, gender); Scene scene = SceneManager.GetActiveScene(); SceneManager.MoveGameObjectToScene(_pPlayerModel, scene); diff --git a/Assets/Prefabs/Player/PlayerPrefab.prefab b/Assets/Prefabs/Player/PlayerPrefab.prefab index 9f25b14707..165b3f469f 100644 --- a/Assets/Prefabs/Player/PlayerPrefab.prefab +++ b/Assets/Prefabs/Player/PlayerPrefab.prefab @@ -103,7 +103,7 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3356314488807061436} - m_LocalRotation: {x: 0.15124027, y: 0.8467184, z: 0.39120576, w: -0.3273416} + m_LocalRotation: {x: -3.7702125e-16, y: 0.97228837, z: 0.23378475, w: 1.5679955e-15} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 @@ -194,6 +194,37 @@ MonoBehaviour: m_EditorClassIdentifier: targetCamera: {fileID: 0} mode: 1 +--- !u!1 &3780435110686298972 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1700647273248867791} + m_Layer: 3 + m_Name: PointCam + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1700647273248867791 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3780435110686298972} + 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: 5695237227048099898} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5505736060713067023 GameObject: m_ObjectHideFlags: 0 @@ -298,7 +329,7 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6417286913550183034} - m_LocalRotation: {x: 0.15189841, y: -0.86322004, z: -0.37099996, w: 0.30681783} + m_LocalRotation: {x: 0.15068072, y: -0.80287755, z: -0.16731258, w: 0.5519869} m_LocalPosition: {x: 0, y: 0, z: -0.19} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 @@ -456,6 +487,7 @@ Transform: m_Children: - {fileID: 78581589932911603} - {fileID: 8793437051475293945} + - {fileID: 1700647273248867791} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!143 &2967440448469171042 @@ -503,6 +535,7 @@ MonoBehaviour: _animationList: [] isHit: 0 id: 0 + isDebug: 0 --- !u!1 &7854944069823046156 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/CECHostPlayer.cs b/Assets/Scripts/CECHostPlayer.cs index 6b71749fe3..b75f000329 100644 --- a/Assets/Scripts/CECHostPlayer.cs +++ b/Assets/Scripts/CECHostPlayer.cs @@ -170,6 +170,8 @@ namespace BrewMonster public EC_Inventory EquipInventory => m_equipInventory; public EC_Inventory TaskInventory => m_taskInventory; + public Transform PointCam { get => pointCam; } + private void OnApplicationQuit() { if (m_pTaskInterface != null) @@ -361,6 +363,12 @@ namespace BrewMonster { return; } + // Always set the pointCam's world rotation value to Vector3.zero + // because rotating the character with the camera will cause a lagging effect. + if(pointCam != null) + { + pointCam.rotation = Quaternion.identity; + } #if UNITY_EDITOR if (Input.GetKeyDown(KeyCode.C)) {