From 7567d10ddaeba64004043cd21dab57dd87519eef Mon Sep 17 00:00:00 2001 From: Garbage Mule Date: Sat, 8 Oct 2011 12:55:10 +0200 Subject: [PATCH] Live players are now displayed on leaderboards in green. Dead players are still displayed in black. --- MobArena.jar | Bin 248713 -> 249354 bytes resources/plugin.yml | 2 +- src/com/garbagemule/MobArena/Arena.java | 8 ++- src/com/garbagemule/MobArena/ArenaPlayer.java | 21 ++++++- .../leaderboards/LeaderboardColumn.java | 56 +++++++++++++----- .../garbagemule/MobArena/util/TextUtils.java | 14 +++++ 6 files changed, 81 insertions(+), 20 deletions(-) diff --git a/MobArena.jar b/MobArena.jar index c084f82cc4e6e24e9e0b3091114ca2062f992eca..f4ff4f3744bb7ae5e546114ad85979c42b83e705 100644 GIT binary patch delta 30713 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 diff --git a/resources/plugin.yml b/resources/plugin.yml index da3d156..72d10c0 100644 --- a/resources/plugin.yml +++ b/resources/plugin.yml @@ -1,6 +1,6 @@ name: MobArena main: com.garbagemule.MobArena.MobArena -version: 0.94.3.15 +version: 0.94.3.16 softdepend: [Spout,Permissions,MultiVerse,XcraftGate,Towny,Heroes,MagicSpells] commands: ma: diff --git a/src/com/garbagemule/MobArena/Arena.java b/src/com/garbagemule/MobArena/Arena.java index 476d3de..0b3c9cf 100644 --- a/src/com/garbagemule/MobArena/Arena.java +++ b/src/com/garbagemule/MobArena/Arena.java @@ -674,6 +674,7 @@ public class Arena arenaPlayers.remove(p); lobbyPlayers.remove(p); classMap.remove(p); + arenaPlayerMap.remove(p); } /** @@ -703,9 +704,10 @@ public class Arena if (dead) restoreInvAndGiveRewardsDelayed(p); else restoreInvAndGiveRewards(p); - - if (log != null && spawnThread != null) - arenaPlayerMap.get(p).getStats().lastWave = spawnThread.getWave() - 1; + + ArenaPlayer ap = arenaPlayerMap.get(p); + if (ap != null) + ap.setDead(true); } public void repairBlocks() diff --git a/src/com/garbagemule/MobArena/ArenaPlayer.java b/src/com/garbagemule/MobArena/ArenaPlayer.java index 119acab..359eae8 100644 --- a/src/com/garbagemule/MobArena/ArenaPlayer.java +++ b/src/com/garbagemule/MobArena/ArenaPlayer.java @@ -18,7 +18,7 @@ public class ArenaPlayer private ArenaPlayerStatistics stats; - protected boolean inArena, inLobby, inSpec, isReady; + protected boolean isDead, inArena, inLobby, inSpec, isReady; public ArenaPlayer(Player player, Arena arena, MobArena plugin) { @@ -36,5 +36,24 @@ public class ArenaPlayer public Player getPlayer() { return player; } public Arena getArena() { return arena; } public String getClassName() { return className; } + + /** + * Check if the player is "dead", i.e. died or not. + * @return true, if the player is either a spectator or played and died, false otherwise + */ + public boolean isDead() + { + return isDead; + } + + /** + * Set the player's death status. + * @param value true, if the player is dead, false otherwise + */ + public void setDead(boolean value) + { + isDead = value; + } + public ArenaPlayerStatistics getStats() { return stats; } } diff --git a/src/com/garbagemule/MobArena/leaderboards/LeaderboardColumn.java b/src/com/garbagemule/MobArena/leaderboards/LeaderboardColumn.java index 9893491..756a410 100644 --- a/src/com/garbagemule/MobArena/leaderboards/LeaderboardColumn.java +++ b/src/com/garbagemule/MobArena/leaderboards/LeaderboardColumn.java @@ -3,21 +3,25 @@ package com.garbagemule.MobArena.leaderboards; import java.lang.reflect.Field; import java.util.List; +import org.bukkit.ChatColor; import org.bukkit.block.Sign; import com.garbagemule.MobArena.ArenaPlayerStatistics; +import com.garbagemule.MobArena.util.TextUtils; public class LeaderboardColumn { private Field field; + private boolean isPlayerName; private Sign header; private List signs; private LeaderboardColumn(String statname, Sign header, List signs) throws Exception { - this.field = ArenaPlayerStatistics.class.getDeclaredField(statname); - this.header = header; - this.signs = signs; + this.field = ArenaPlayerStatistics.class.getDeclaredField(statname); + this.isPlayerName = statname.equals("playerName"); + this.header = header; + this.signs = signs; } /** @@ -48,19 +52,41 @@ public class LeaderboardColumn try { - for (int i = 0; i < range; i++) + if (isPlayerName) { - // Grab the right sign. - Sign s = signs.get(i/4); - - // Get the stat value. - field.setAccessible(true); - Object o = field.get(stats.get(i)); - field.setAccessible(false); - - // Set the value on the right line. - s.setLine(i % 4, o.toString()); - s.update(); + for (int i = 0; i < range; i++) + { + // Grab the right sign. + Sign s = signs.get(i/4); + + // Get the stat value. + field.setAccessible(true); + ArenaPlayerStatistics aps = stats.get(i); + Object o = field.get(aps); + field.setAccessible(false); + String name = aps.getArenaPlayer().isDead() ? o.toString() : ChatColor.GREEN + o.toString(); + + // Set the value on the right line. + s.setLine(i % 4, TextUtils.truncate(name)); + s.update(); + } + } + else + { + for (int i = 0; i < range; i++) + { + // Grab the right sign. + Sign s = signs.get(i/4); + + // Get the stat value. + field.setAccessible(true); + Object o = field.get(stats.get(i)); + field.setAccessible(false); + + // Set the value on the right line. + s.setLine(i % 4, o.toString()); + s.update(); + } } } catch (Exception e) { e.printStackTrace(); } diff --git a/src/com/garbagemule/MobArena/util/TextUtils.java b/src/com/garbagemule/MobArena/util/TextUtils.java index 85cda7d..8b3dcb2 100644 --- a/src/com/garbagemule/MobArena/util/TextUtils.java +++ b/src/com/garbagemule/MobArena/util/TextUtils.java @@ -39,4 +39,18 @@ public class TextUtils public static String padLeft(String s, int length) { return padLeft(s, length, ' '); } public static String padLeft(int s, int length) { return padLeft(Integer.toString(s), length, ' '); } public static String padLeft(double s, int length) { return padLeft(Double.toString(s), length, ' '); } + + /** + * Truncate the input string to be at most the input length + * @param s The string to truncate + * @param length The maximum length + * @return A truncated string with length 15, or the input string + */ + public static String truncate(String s, int length) + { + if (s.length() <= length) + return s; + return s.substring(0, length); + } + public static String truncate(String s) { return truncate(s, 15); } }