From 7e83b578fe76484a3554d14feee2467748ded831 Mon Sep 17 00:00:00 2001 From: VDH Date: Mon, 5 Jan 2026 18:25:27 +0700 Subject: [PATCH 01/36] coool down ui --- .../PerfectWorld/Prefab/UI/ButtonSkill.prefab | 7 +- .../PerfectWorld/Scripts/Managers/EC_Skill.cs | 2 +- .../Scripts/Network/CSNetwork/GPDataType.cs | 5 + .../Scripts/Network/CSNetwork/GameSession.cs | 4 + Assets/PerfectWorld/Scripts/Skills/skill.cs | 2 - .../Scripts/UI/GamePlay/CdlgQuickBar.cs | 7 +- .../UI/GamePlay/SkillUI/AUIClockIcon.cs | 4 +- Assets/Prefabs/BoostrapForTest.prefab | 4 +- Assets/Scenes/a61.unity | 4 +- Assets/Scripts/CECHostPlayer.cs | 100 +++++++- Assets/Scripts/CECUIManager.cs | 31 +-- .../LiberationSans SDF - Fallback.asset | 230 +----------------- 12 files changed, 144 insertions(+), 256 deletions(-) diff --git a/Assets/PerfectWorld/Prefab/UI/ButtonSkill.prefab b/Assets/PerfectWorld/Prefab/UI/ButtonSkill.prefab index 3483c34288..c928ffce00 100644 --- a/Assets/PerfectWorld/Prefab/UI/ButtonSkill.prefab +++ b/Assets/PerfectWorld/Prefab/UI/ButtonSkill.prefab @@ -87,7 +87,7 @@ GameObject: - component: {fileID: 2690941580050673919} - component: {fileID: 4280331804577109228} m_Layer: 5 - m_Name: Image + m_Name: ImageLock m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -170,7 +170,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &5717981154351234976 RectTransform: m_ObjectHideFlags: 0 @@ -221,6 +221,9 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_ClockIcon: {fileID: 4280331804577109228} + m_iMin: 0 + m_iMax: 0 + m_iPos: 0 --- !u!222 &1012268097730980895 CanvasRenderer: m_ObjectHideFlags: 0 diff --git a/Assets/PerfectWorld/Scripts/Managers/EC_Skill.cs b/Assets/PerfectWorld/Scripts/Managers/EC_Skill.cs index 5087821949..e4528041cb 100644 --- a/Assets/PerfectWorld/Scripts/Managers/EC_Skill.cs +++ b/Assets/PerfectWorld/Scripts/Managers/EC_Skill.cs @@ -143,6 +143,7 @@ namespace BrewMonster // Tick routine public void Tick(float deltaTime) { + BMLogger.LogError($"CECSkill Tick m_bCooling: = {m_bCooling}, m_iCoolCnt={m_iCoolCnt}" ); // Convert deltaTime (seconds) to milliseconds int tickTime = (int)(deltaTime * 1000f); @@ -321,7 +322,6 @@ namespace BrewMonster public float GetCastRange(float fAtkDist, float fPrayDistancePlus) { - BMLogger.LogError($"HoangDev: GetCastRange {m_pSkillCore}"); return m_pSkillCore != null ? m_pSkillCore.GetPrayRange(fAtkDist, fPrayDistancePlus) : 0f; } public string GetEffect() diff --git a/Assets/PerfectWorld/Scripts/Network/CSNetwork/GPDataType.cs b/Assets/PerfectWorld/Scripts/Network/CSNetwork/GPDataType.cs index 421504404f..88403766c2 100644 --- a/Assets/PerfectWorld/Scripts/Network/CSNetwork/GPDataType.cs +++ b/Assets/PerfectWorld/Scripts/Network/CSNetwork/GPDataType.cs @@ -1728,6 +1728,11 @@ namespace CSNetwork.GPDataType public int cooldown; public int max_cooltime; } + public struct cmd_set_cooldown + { + public int cooldown_index; + public int cooldown_time; + }; [StructLayout(LayoutKind.Sequential, Pack = 1)] // sizeof = 36 với padding 1 byte sau dir public struct cmd_npc_info_00 diff --git a/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs b/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs index bb5d3acead..fc9da43662 100644 --- a/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs +++ b/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs @@ -367,6 +367,7 @@ namespace CSNetwork // pAutoTeam.OnPrtcAutoTeamSetGoalRe((AutoTeamSetGoal_Re)protocol); } break; + default: _logger.Log(LogType.Warning, $"Received unhandled protocol type: {protocol.GetPType()}"); break; @@ -783,6 +784,9 @@ namespace CSNetwork case CommandID.MINE_GATHERED: EC_ManMessage.PostMessage(EC_MsgDef.MSG_PM_PLAYERGATHER, MANAGER_INDEX.MAN_PLAYER, -1, pDataBuf, pCmdHeader); break; + case CommandID.COOLTIME_DATA: + EC_ManMessage.PostMessage(EC_MsgDef.MSG_HST_COOLTIMEDATA, MANAGER_INDEX.MAN_PLAYER, 0, pDataBuf, pCmdHeader); + break; } } diff --git a/Assets/PerfectWorld/Scripts/Skills/skill.cs b/Assets/PerfectWorld/Scripts/Skills/skill.cs index 9012091f41..f22b7908d2 100644 --- a/Assets/PerfectWorld/Scripts/Skills/skill.cs +++ b/Assets/PerfectWorld/Scripts/Skills/skill.cs @@ -100,11 +100,9 @@ namespace BrewMonster.Scripts.Skills player.SetPrayrangeplus(prayplus); if (stub.type == (int)skill_type.TYPE_ATTACK || stub.type == (int)skill_type.TYPE_CURSE) { - BMLogger.LogError($"HoangDev: GetPrayRange AutoAttack {stub.auto_attack}"); if (stub.auto_attack) { float r = 0.3f * stub.GetPraydistance(this); - BMLogger.LogError($"HoangDev: r={r} "); if (r >= 1.0) return stub.GetPraydistance(this) - 1.0f; diff --git a/Assets/PerfectWorld/Scripts/UI/GamePlay/CdlgQuickBar.cs b/Assets/PerfectWorld/Scripts/UI/GamePlay/CdlgQuickBar.cs index 52c2ce7b69..2d3768f142 100644 --- a/Assets/PerfectWorld/Scripts/UI/GamePlay/CdlgQuickBar.cs +++ b/Assets/PerfectWorld/Scripts/UI/GamePlay/CdlgQuickBar.cs @@ -10,7 +10,7 @@ using UnityEngine.UI; namespace BrewMonster { - public class CdlgQuickBar : MonoBehaviour + public class CDlgQuickBar : MonoBehaviour { //[SerializeField] List m_aSkillImage = new List(); //[SerializeField] List