Browse Source

【优化】加入房间增加一个判断

johnclot69 1 year ago
parent
commit
960c9ff6ec

+ 1 - 1
DotNet/Hotfix/Scenes/Game/Handler/C2G_CreatRoomHandler.cs

@@ -21,7 +21,7 @@ namespace ET.Server
                 return;
             }
             
-            // 玩家是否房间
+            // 玩家是否房间
             if (player.GetComponent<PlayerRoomComponent>() != null)
             { 
                 response.Error = ErrorCode.ERR_OperationError;

+ 11 - 4
DotNet/Hotfix/Scenes/Game/Handler/C2G_JoinRoomHandler.cs

@@ -39,7 +39,7 @@ namespace ET.Server
 
             PlayerRoomComponent playerRoomComponent = player.GetComponent<PlayerRoomComponent>();
             
-            // 判断玩家是否带房间加入
+            // 判断玩家是否在其他房间
             if (playerRoomComponent != null && !playerRoomComponent.RoomId.Equals(request.RoomId))
             { 
                 response.Error = ErrorCode.ERR_OperationError;
@@ -59,10 +59,17 @@ namespace ET.Server
                 reply();
                 return;
             }
-            
-            // todo 房间人数是否已满
-            
+
             // todo 玩家是否可以观战,如果可以 下面的判断屏蔽
+            // 房间人数是否已满
+            if (room.Players.Count >= room.MaxNum)
+            {
+                response.Error = ErrorCode.ERR_OperationError;
+                response.Message = "房间人数已满,不可进入...";
+                reply();
+                return;
+            }
+            
             // 房间状态是否可进入
             if (room.State != 0)
             {

+ 2 - 0
DotNet/Model/Scenes/Game/Room/Room.cs

@@ -10,6 +10,8 @@ namespace ET.Server
     {
         /** 房间号 **/
         public string RoomId { get; set; }
+        /** 房间最大人数 **/
+        public int MaxNum { get; set; }
         /** 房间玩家集合 **/
         public List<Player> Players { get; set; }
         /** 房间玩法类型 1:黄冈晃晃 **/