Преглед на файлове

bugfixes, small code improvements

RedstoneFuture преди 3 години
родител
ревизия
9729459658

+ 25 - 3
missilewars-plugin/src/main/java/de/butzlabben/missilewars/Config.java

@@ -207,6 +207,7 @@ public class Config {
     public static boolean isContactAuth() {
         return cfg.getBoolean("contact_auth_server");
     }
+
     public static boolean isPrefetchPlayers() {
         return cfg.getBoolean("prefetch_players");
     }
@@ -222,9 +223,11 @@ public class Config {
     public static boolean isMultipleLobbies() {
         return cfg.getBoolean("lobbies.multiple_lobbies");
     }
+
     public static String getLobbiesFolder() {
         return cfg.getString("lobbies.folder") + "/";
     }
+
     public static String getDefaultLobby() {
         return cfg.getString("lobbies.default_lobby");
     }
@@ -232,6 +235,7 @@ public class Config {
     public static int getReplaceTicks() {
         return cfg.getInt("replace.after_ticks");
     }
+
     public static int getReplaceRadius() {
         return cfg.getInt("replace.radius");
     }
@@ -239,12 +243,15 @@ public class Config {
     public static String motdEnded() {
         return cfg.getString("motd.ended");
     }
+
     public static String motdGame() {
         return cfg.getString("motd.ingame");
     }
+
     public static String motdLobby() {
         return cfg.getString("motd.lobby");
     }
+
     public static boolean motdEnabled() {
         return cfg.getBoolean("motd.enable");
     }
@@ -252,6 +259,7 @@ public class Config {
     public static boolean isFightStatsEnabled() {
         return cfg.getBoolean("fightstats.enable");
     }
+
     public static boolean isShowRealSkins() {
         return cfg.getBoolean("fightstats.show_real_skins");
     }
@@ -259,27 +267,41 @@ public class Config {
     public static String getHost() {
         return cfg.getString("mysql.host");
     }
+
     public static String getDatabase() {
         return cfg.getString("mysql.database");
     }
+
     public static String getPort() {
         return cfg.getString("mysql.port");
     }
+
     public static String getUser() {
         return cfg.getString("mysql.user");
     }
+
     public static String getPassword() {
         return cfg.getString("mysql.password");
     }
+
     public static String getFightsTable() {
         return cfg.getString("mysql.fights_table");
     }
+
     public static String getFightMembersTable() {
         return cfg.getString("mysql.fightmember_table");
     }
 
-    public static String getScoreboardTitle() {return cfg.getString("sidebar.title");}
-    public static String getScoreboardMembersStyle() {return cfg.getString("sidebar.member_list_style");}
-    public static int getScoreboardMembersMax() {return cfg.getInt("sidebar.member_list_max");}
+    public static String getScoreboardTitle() {
+        return cfg.getString("sidebar.title");
+    }
+
+    public static String getScoreboardMembersStyle() {
+        return cfg.getString("sidebar.member_list_style");
+    }
+
+    public static int getScoreboardMembersMax() {
+        return cfg.getInt("sidebar.member_list_max");
+    }
 
 }

+ 2 - 2
missilewars-plugin/src/main/java/de/butzlabben/missilewars/listener/EndListener.java

@@ -25,7 +25,6 @@ import de.butzlabben.missilewars.util.PlayerDataProvider;
 import de.butzlabben.missilewars.wrapper.event.PlayerArenaJoinEvent;
 import org.bukkit.Bukkit;
 import org.bukkit.GameMode;
-import org.bukkit.attribute.Attribute;
 import org.bukkit.entity.Player;
 import org.bukkit.event.EventHandler;
 import org.bukkit.event.EventPriority;
@@ -67,12 +66,13 @@ public class EndListener extends GameBoundListener {
         }
     }
 
+    @SuppressWarnings("deprecation")
     @EventHandler
     public void onDeath(PlayerDeathEvent e) {
         if (!isInLobbyArea(e.getEntity().getLocation())) return;
 
         Player p = e.getEntity();
-        p.setHealth(p.getAttribute(Attribute.GENERIC_MAX_HEALTH).getDefaultValue());
+        p.setHealth(p.getMaxHealth());
         p.teleport(getGame().getArena().getSpectatorSpawn());
         e.setDeathMessage(null);
     }

+ 1 - 2
missilewars-plugin/src/main/java/de/butzlabben/missilewars/listener/GameListener.java

@@ -36,7 +36,6 @@ import de.butzlabben.missilewars.wrapper.player.MWPlayer;
 import org.bukkit.Bukkit;
 import org.bukkit.GameMode;
 import org.bukkit.Location;
-import org.bukkit.attribute.Attribute;
 import org.bukkit.entity.*;
 import org.bukkit.event.EventHandler;
 import org.bukkit.event.EventPriority;
@@ -266,7 +265,7 @@ public class GameListener extends GameBoundListener {
 
         // spectator respawn for people there are not in a team
         if (player.getTeam() == null) {
-            p.setHealth(p.getAttribute(Attribute.GENERIC_MAX_HEALTH).getDefaultValue());
+            p.setHealth(p.getMaxHealth());
             p.teleport(getGame().getArena().getSpectatorSpawn());
             return;
         }

+ 18 - 27
missilewars-plugin/src/main/java/de/butzlabben/missilewars/util/ScoreboardManager.java

@@ -45,22 +45,21 @@ public class ScoreboardManager {
     private Arena arena;
 
     // get config options
-    private String scoreBoardTitle = Config.getScoreboardTitle();
-    private String memberListStyle = Config.getScoreboardMembersStyle();
-    private int memberListMaxSize = Config.getScoreboardMembersMax();
-    private List<String> scoreBoardEntries = Config.getScoreboardEntries();
+    private static final String SCOREBOARD_TITLE = Config.getScoreboardTitle();
+    private static final String MEMBER_LIST_STYLE = Config.getScoreboardMembersStyle();
+    private static final int MEMBER_LIST_MAX_SIZE = Config.getScoreboardMembersMax();
+    private static final List<String> SCOREBOARD_ENTRIES = Config.getScoreboardEntries();
 
     private boolean isTeam1ListUsed = false;
     private boolean isTeam2ListUsed = false;
 
-    private int maxScoreboardLines = 15;
     public Scoreboard board;
     private Objective obj;
     private HashMap<Integer, org.bukkit.scoreboard.Team> teams = new HashMap<>();
-    String[] colorCodes = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};
+    private static final String[] COLOR_CODES = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};
     
     /**
-     * This method register the scoreboard.
+     * This method registers the scoreboard.
      */
     public void createScoreboard() {
 
@@ -74,10 +73,10 @@ public class ScoreboardManager {
         }
         obj = board.registerNewObjective("Info", "dummy");
         obj.setDisplaySlot(DisplaySlot.SIDEBAR);
-        obj.setDisplayName(ChatColor.translateAlternateColorCodes('&', scoreBoardTitle));
+        obj.setDisplayName(ChatColor.translateAlternateColorCodes('&', SCOREBOARD_TITLE));
 
         // check if the team lists are used
-        for (String cleanLine : scoreBoardEntries) {
+        for (String cleanLine : SCOREBOARD_ENTRIES) {
             if (cleanLine.contains("%team1_members%")) {
                 isTeam1ListUsed = true;
             } else if (cleanLine.contains("%team2_members%")) {
@@ -98,8 +97,8 @@ public class ScoreboardManager {
 
         if (teams.size() < line) {
             team = board.registerNewTeam(arena.getName() + "-" + line);
-            team.addEntry("§" + colorCodes[line - 1]);
-            obj.getScore("§" + colorCodes[line - 1]).setScore(line);
+            team.addEntry("§" + COLOR_CODES[line - 1]);
+            obj.getScore("§" + COLOR_CODES[line - 1]).setScore(line);
             teams.put(line, team);
         }
     }
@@ -107,7 +106,7 @@ public class ScoreboardManager {
     public void updateScoreboard() {
 
         // the number of lines required for the complete Scoreboard
-        int scoreboardLine = scoreBoardEntries.size() + getLineOffset();
+        int scoreboardLine = SCOREBOARD_ENTRIES.size() + getLineOffset();
 
         // add new teams
         for (int i = 1; i <= scoreboardLine; i++) {
@@ -116,7 +115,7 @@ public class ScoreboardManager {
 
         String replacedLine;
 
-        for (String cleanLine : scoreBoardEntries) {
+        for (String cleanLine : SCOREBOARD_ENTRIES) {
             if (scoreboardLine <= 0) {
                 break;
             }
@@ -145,14 +144,14 @@ public class ScoreboardManager {
                 for (MWPlayer player : placeholderTeam.getMembers()) {
 
                     // limit check
-                    if (playerCounter >= memberListMaxSize) {
+                    if (playerCounter >= MEMBER_LIST_MAX_SIZE) {
                         break;
                     }
 
                     String playerName = player.getPlayer().getName();
                     String teamColor = placeholderTeam.getColor();
 
-                    replacedLine = memberListStyle.replace("%playername%", playerName)
+                    replacedLine = MEMBER_LIST_STYLE.replace("%playername%", playerName)
                             .replace("%team_color%", teamColor);
                     teams.get(scoreboardLine).setPrefix(replacedLine);
 
@@ -174,7 +173,7 @@ public class ScoreboardManager {
 
     /**
      * This method calculates the offset lines based of the amount of players
-     * and the using of the member-list placeholders for booths teams.
+     * and the using of the member-list placeholders for both teams.
      *
      * @return (int) the amount of offset lines
      */
@@ -184,20 +183,12 @@ public class ScoreboardManager {
         int team2ListSize = 0;
 
         if (isTeam1ListUsed) {
-            if (team1.getMembers().size() > memberListMaxSize) {
-                team1ListSize = memberListMaxSize;
-            } else {
-                team1ListSize = team1.getMembers().size();
-            }
+            team1ListSize = Math.min(team1.getMembers().size(), MEMBER_LIST_MAX_SIZE);
             team1ListSize--;
         }
 
         if (isTeam2ListUsed) {
-            if (team2.getMembers().size() > memberListMaxSize) {
-                team2ListSize = memberListMaxSize;
-            } else {
-                team2ListSize = team2.getMembers().size();
-            }
+            team2ListSize = Math.min(team2.getMembers().size(), MEMBER_LIST_MAX_SIZE);
             team2ListSize--;
         }
 
@@ -222,7 +213,7 @@ public class ScoreboardManager {
     }
 
     /**
-     * This method remove the current Scoreboard and create a new one.
+     * This method deletes the current indicator and creates a new one.
      */
     public void resetScoreboard() {
         removeScoreboard();