From 18f94146c57f3a225f1082480ed34194a57bbccd Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期二, 30 十月 2018 19:33:59 +0800
Subject: [PATCH] 4340 【前端】支持xlua方便IOS提审 修改网络封包系统,如果封包没有在C#注册,那么抛给lua
---
Core/NetworkPackage/Socket/ClientSocketController.cs | 32 ++++++++++++++++++++++----------
1 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/Core/NetworkPackage/Socket/ClientSocketController.cs b/Core/NetworkPackage/Socket/ClientSocketController.cs
index 4e8072f..c6ce2c4 100644
--- a/Core/NetworkPackage/Socket/ClientSocketController.cs
+++ b/Core/NetworkPackage/Socket/ClientSocketController.cs
@@ -9,8 +9,7 @@
public class ClientSocketController
{
Socket m_Socket;
- public Socket socket
- {
+ public Socket socket {
get { return m_Socket; }
}
@@ -205,6 +204,7 @@
}
+ static byte[] vCmdBytes = new byte[2];
/// <summary>
/// 闃呰淇℃伅
/// </summary>
@@ -249,16 +249,28 @@
vPackBytes = new byte[vBodyLeng];
Array.Copy(fixBytes, vReadIndex + 6, vPackBytes, 0, vBodyLeng); // 鎻愬彇鍖呯殑瀛楄妭鍐呭
// 瀹屾暣鐨勫寘鍒欒鍖�
- vNetpack = PackageRegedit.TransPack(vPackBytes);
- if (vNetpack != null)
- {
- if (DebugEx.EnableNetLog)
- {
- DebugEx.NetLogFormat("鏀跺寘锛歿0}", vNetpack.GetType().Name);
- }
- GameNetSystem.Instance.PushPackage(vNetpack);
+ vPackBytes = GameNetEncode.BaseXorSub(vPackBytes);
+ Array.Copy(vPackBytes, 0, vCmdBytes, 0, 2);
+ var cmd = (ushort)((ushort)(vCmdBytes[0] << 8) + vCmdBytes[1]);
+ if (PackageRegedit.Contain(cmd))
+ {
+ vNetpack = PackageRegedit.TransPack(cmd, vPackBytes);
+ if (vNetpack != null)
+ {
+ if (DebugEx.EnableNetLog)
+ {
+ DebugEx.NetLogFormat("鏀跺寘锛歿0}", vNetpack.GetType().Name);
+ }
+
+ GameNetSystem.Instance.PushPackage(vNetpack);
+ }
}
+ else
+ {
+ CSharpCallLua.OnRecieveLuaNetPackage(cmd, vPackBytes);
+ }
+
vReadIndex += 6 + vBodyLeng;
}
}
--
Gitblit v1.8.0