浏览代码

Reworking team-size condition for game start

RedstoneFuture 1 年之前
父节点
当前提交
1db4e9a10f
共有 1 个文件被更改,包括 12 次插入10 次删除
  1. 12 10
      missilewars-plugin/src/main/java/de/butzlabben/missilewars/game/timer/LobbyTimer.java

+ 12 - 10
missilewars-plugin/src/main/java/de/butzlabben/missilewars/game/timer/LobbyTimer.java

@@ -48,18 +48,15 @@ public class LobbyTimer extends Timer implements Runnable {
             if (mwPlayer.getPlayer() == null) continue;
             mwPlayer.getPlayer().setLevel(seconds);
         }
-
-        int size1 = getGame().getTeam1().getMembers().size();
-        int size2 = getGame().getTeam2().getMembers().size();
-
-        if (size1 == 0 || size2 == 0) {
+        
+        if (hasEmptyPlayerTeam()) {
             seconds = startTime;
             return;
         }
-
+        
         --remaining;
         if (remaining == 0) {
-            if (size1 + size2 < getGame().getLobby().getMinSize()) {
+            if (getGame().areToFewPlayers()) {
                 seconds = startTime;
                 remaining = 90;
                 broadcast(Messages.getMessage(true, Messages.MessageEnum.LOBBY_NOT_ENOUGH_PLAYERS));
@@ -86,8 +83,7 @@ public class LobbyTimer extends Timer implements Runnable {
                 playPling();
                 break;
             case 0:
-                int diff = size1 - size2;
-                if (diff >= 2 || diff <= -2) {
+                if (hasEmptyPlayerTeam()) {
                     broadcast(Messages.getMessage(true, Messages.MessageEnum.LOBBY_TEAMS_UNEQUAL));
                     seconds = startTime;
                     return;
@@ -116,5 +112,11 @@ public class LobbyTimer extends Timer implements Runnable {
         playPling();
         getGame().startGame();
     }
-
+    
+    private boolean hasEmptyPlayerTeam() {
+        int size1 = getGame().getTeam1().getMembers().size();
+        int size2 = getGame().getTeam2().getMembers().size();
+        
+        return ((size1 == 0) || (size2 == 0));
+    }
 }