diff --git a/Assets/PerfectWorld/Prefab/GameController.prefab b/Assets/PerfectWorld/Prefab/GameController.prefab index d966f2e4ee..54167d4c09 100644 --- a/Assets/PerfectWorld/Prefab/GameController.prefab +++ b/Assets/PerfectWorld/Prefab/GameController.prefab @@ -90,7 +90,7 @@ MonoBehaviour: m_EditorClassIdentifier: _cinemachineCamera: {fileID: 0} orbital: {fileID: 0} - minSwipeDistance: 10 + minSwipeDistance: 0.1 speedX: 300 speedY: 500 --- !u!1 &2486392142327362049 @@ -247,3 +247,4 @@ MonoBehaviour: dialogResouce: {fileID: 11400000, guid: 540bc8e61556ba4479407a2d68e17580, type: 2} canvasDlg: {fileID: 7894129013412138377} cDlgQuickBar: {fileID: 0} + skillButton: {fileID: 0} diff --git a/Assets/PerfectWorld/Scripts/Move/CECHostMove.cs b/Assets/PerfectWorld/Scripts/Move/CECHostMove.cs index 7c98dfe6f8..8f55059fed 100644 --- a/Assets/PerfectWorld/Scripts/Move/CECHostMove.cs +++ b/Assets/PerfectWorld/Scripts/Move/CECHostMove.cs @@ -491,7 +491,9 @@ namespace BrewMonster return vNewPos; } - + + // Set / Get move stamp + public void SetMoveStamp(ushort wStamp) { m_wMoveStamp = wStamp; } } public struct CDR_INFO { diff --git a/Assets/PerfectWorld/Scripts/Move/EC_CDR.cs b/Assets/PerfectWorld/Scripts/Move/EC_CDR.cs index 53d239eba0..c32d5ba7c1 100644 --- a/Assets/PerfectWorld/Scripts/Move/EC_CDR.cs +++ b/Assets/PerfectWorld/Scripts/Move/EC_CDR.cs @@ -94,7 +94,7 @@ namespace BrewMonster CDR_WATER = 0x4; } - static LayerMask UsedMask_Ground() => BrushMask | TerrainMask | WaterMask; + static LayerMask UsedMask_Ground() => TerrainMask; public static bool CollideWithEnv(ref env_trace_t pEnvTrc) { diff --git a/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs b/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs index 3563f72d1b..8caa077d6e 100644 --- a/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs +++ b/Assets/PerfectWorld/Scripts/Network/CSNetwork/GameSession.cs @@ -432,7 +432,7 @@ namespace CSNetwork case CommandID.OBJECT_STOP_MOVE: { int id1 = GPDataTypeHelper.FromBytes(pDataBuf); - BMLogger.LogError($"### GameDataSend: STOP MOVE ID: {id1}"); + //BMLogger.LogError($"### GameDataSend: STOP MOVE ID: {id1}"); if (ISPLAYERID(id1)) { @@ -441,7 +441,7 @@ namespace CSNetwork } else if (ISNPCID(id1)) { - BMLogger.LogError($"### GameDataSend: NPC STOP MOVE ID: {id1}"); + //BMLogger.LogError($"### GameDataSend: NPC STOP MOVE ID: {id1}"); EC_ManMessage.PostMessage(EC_MsgDef.MSG_NM_NPCSTOPMOVE, (int)MANAGER_INDEX.MAN_NPC, 0, pDataBuf, pCmdHeader); } diff --git a/Assets/Scripts/CECHostPlayer.cs b/Assets/Scripts/CECHostPlayer.cs index b82ef09f16..f694a8df65 100644 --- a/Assets/Scripts/CECHostPlayer.cs +++ b/Assets/Scripts/CECHostPlayer.cs @@ -94,6 +94,7 @@ namespace BrewMonster int m_iOldWalkMode = Move_Mode.MOVE_STAND; // Copy of work mode public uint m_dwMoveRelDir = 0; // Move relative direction flags public ON_AIR_CDR_INFO m_AirCDRInfo; + public ushort m_wMoveStamp = 0; // Host config data version const int HOSTCFG_VERSION = 11; @@ -1883,14 +1884,19 @@ namespace BrewMonster public void OnMsgHstCorrectPos(in ECMSG Msg) { - Debug.LogWarning("HoangDev : OnMsgHstCorrectPos"); + //Debug.LogError("HoangDev : OnMsgHstCorrectPos"); byte[] buf = (byte[])Msg.dwParam1; // chỗ bạn lưu pDataBuf GCHandle handle = GCHandle.Alloc(buf, GCHandleType.Pinned); cmd_host_correct_pos pCmd = (cmd_host_correct_pos)Marshal.PtrToStructure( handle.AddrOfPinnedObject(), typeof(cmd_host_correct_pos)); handle.Free(); - Debug.LogWarning("HoangDev :pCmd.pos " + pCmd.pos); + //cmd_host_correct_pos pCmd = GPDataTypeHelper.FromBytes((byte[])Msg.dwParam1); + //Debug.LogError("HoangDev :pCmd.pos " + pCmd.pos); SetPos(pCmd.pos); + m_vVelocity.Clear(); + m_CDRInfo.vAbsVelocity.Clear(); + + m_MoveCtrl.SetMoveStamp(pCmd.stamp); } public void HandleRevive(short sReviveType, A3DVECTOR3 pos) @@ -4783,7 +4789,6 @@ namespace BrewMonster //AP_ActionEvent(AP_EVENT_MELEEOUTOFRANGE, 1); } } - } public enum StateAnim