Browse Source

解决登录SessionKey问题

johnclot69 5 months ago
parent
commit
b5e91ba1b0

+ 6 - 1
DotNet/Hotfix/Scenes/Game/Handler/C2G_LoginGameHandler.cs

@@ -46,7 +46,7 @@ namespace ET.Server
 			}
 			
 			int channel = int.Parse(str[1]);
-			if (channel <= 0)
+			if (channel < 0)
 			{
 				response.Error = ErrorCore.ERR_ConnectGateKeyError;
 				response.Message = "Game key验证失败,渠道号错误";
@@ -87,6 +87,11 @@ namespace ET.Server
 					// 10002:鄂州
 					response.GameplayList.Add((int)RoomType.EzhouMahjong);
 					break;
+				default:
+					// 默认:测试渠道 全渠道
+					response.GameplayList.Add((int)RoomType.HGHH);
+					response.GameplayList.Add((int)RoomType.EzhouMahjong);
+					break;
 			}
 			
 			reply();

+ 3 - 3
DotNet/Hotfix/Scenes/Game/Handler/R2G_GetLoginKeyHandler.cs

@@ -10,9 +10,9 @@ namespace ET.Server
 	{
 		protected override async ETTask Run(Scene scene, R2G_GetLoginKey request, G2R_GetLoginKey response, Action reply)
 		{
-			long key = RandomGenerator.RandInt64();
-			scene.GetComponent<GameSessionKeyComponent>().Add(key.ToString(), request.Account);
-			response.Key = key + "," + request.Channel;
+			string key = RandomGenerator.RandInt64() + "," + request.Channel;
+			scene.GetComponent<GameSessionKeyComponent>().Add(key, request.Account);
+			response.Key = key;
 			response.GameId = scene.Id;
 			reply();
 			await ETTask.CompletedTask;