1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-20 11:45:51 +00:00

Improve and also order console output

This commit is contained in:
Daniel Walsh 2019-10-13 17:32:42 +01:00
parent 5c5214beba
commit 22a9f8955a

View File

@ -6,6 +6,7 @@ import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator; import java.util.Iterator;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.logging.Level; import java.util.logging.Level;
@ -20,6 +21,7 @@ import org.bukkit.block.Block;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import io.github.thebusybiscuit.cscorelib2.chat.ChatColors;
import me.mrCookieSlime.CSCoreLibPlugin.general.Chat.TellRawMessage; import me.mrCookieSlime.CSCoreLibPlugin.general.Chat.TellRawMessage;
import me.mrCookieSlime.CSCoreLibPlugin.general.Chat.TellRawMessage.HoverAction; import me.mrCookieSlime.CSCoreLibPlugin.general.Chat.TellRawMessage.HoverAction;
import me.mrCookieSlime.Slimefun.SlimefunPlugin; import me.mrCookieSlime.Slimefun.SlimefunPlugin;
@ -201,19 +203,19 @@ public class TickerTask implements Runnable {
sender.sendMessage(""); sender.sendMessage("");
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6Ticking Machines:")); sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6Ticking Machines:"));
List<Map.Entry<String, Long>> timings = machineCount.keySet().stream()
.map(key -> new AbstractMap.SimpleEntry<>(key, machineTimings.getOrDefault(key, 0L)))
.sorted((o1, o2) -> o2.getValue().compareTo(o1.getValue()))
.collect(Collectors.toList());
if (sender instanceof Player) { if (sender instanceof Player) {
TellRawMessage tellraw = new TellRawMessage(); TellRawMessage tellraw = new TellRawMessage();
tellraw.addText(" &7&oHover for more Info"); tellraw.addText(" &7&oHover for more Info");
StringBuilder hover = new StringBuilder(); StringBuilder hover = new StringBuilder();
int hidden = 0; int hidden = 0;
Map<String, Long> timings = machineCount.keySet().stream() for (Map.Entry<String, Long> entry : timings) {
.map(key -> new AbstractMap.SimpleEntry<>(key, machineTimings.getOrDefault(key, 0L))) int count = machineCount.get(entry.getKey());
.sorted((o1, o2) -> o2.getValue().compareTo(o1.getValue()))
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (e1, e2) -> e1, LinkedHashMap::new));
for (Map.Entry<String, Long> entry : timings.entrySet()) {
int count = machineCount.getOrDefault(entry.getKey(), 0);
if (entry.getValue() > 0) if (entry.getValue() > 0)
hover.append("\n&c").append(entry.getKey()).append(" - ") hover.append("\n&c").append(entry.getKey()).append(" - ")
.append(count).append("x &7(").append(entry.getValue()).append("ms, ") .append(count).append("x &7(").append(entry.getValue()).append("ms, ")
@ -234,10 +236,13 @@ public class TickerTask implements Runnable {
else { else {
int hidden = 0; int hidden = 0;
for (Map.Entry<String, Integer> entry: machineCount.entrySet()) { for (Map.Entry<String, Long> entry: timings) {
long timings = machineTimings.get(entry.getKey()); int count = machineCount.get(entry.getKey());
if (timings > 0) sender.sendMessage(ChatColor.translateAlternateColorCodes('&', " &e" + entry.getKey() + " - " + entry.getValue()+ "x &7(" + timings + "ms)")); if (entry.getValue() > 0)
else hidden++; sender.sendMessage(ChatColors.color(" &e" + entry.getKey() + " - " + count + "x &7(" + entry.getValue() + "ms"
+ ", " + (entry.getValue() / count) + "ms avg/machine)"));
else
hidden++;
} }
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c+ &4" + hidden + " Hidden")); sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c+ &4" + hidden + " Hidden"));
@ -246,17 +251,17 @@ public class TickerTask implements Runnable {
sender.sendMessage(""); sender.sendMessage("");
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6Ticking Chunks:")); sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6Ticking Chunks:"));
timings = chunkTimings.entrySet().stream()
.sorted(Map.Entry.comparingByValue(Comparator.reverseOrder()))
.collect(Collectors.toList());
if (sender instanceof Player) { if (sender instanceof Player) {
TellRawMessage tellraw = new TellRawMessage(); TellRawMessage tellraw = new TellRawMessage();
tellraw.addText(" &7&oHover for more Info"); tellraw.addText(" &7&oHover for more Info");
StringBuilder hover = new StringBuilder(); StringBuilder hover = new StringBuilder();
int hidden = 0; int hidden = 0;
Map<String, Long> timings = chunkTimings.entrySet().stream() for (Map.Entry<String, Long> entry: timings) {
.sorted(Map.Entry.comparingByValue(Comparator.reverseOrder()))
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (e1, e2) -> e1, LinkedHashMap::new));
for (Map.Entry<String, Long> entry: timings.entrySet()) {
if (!chunksSkipped.contains(entry.getKey())) { if (!chunksSkipped.contains(entry.getKey())) {
if (entry.getValue() > 0) if (entry.getValue() > 0)
hover.append("\n&c").append(entry.getKey().replace("CraftChunk", "")).append(" - ") hover.append("\n&c").append(entry.getKey().replace("CraftChunk", "")).append(" - ")
@ -278,7 +283,7 @@ public class TickerTask implements Runnable {
} }
else { else {
int hidden = 0; int hidden = 0;
for (Map.Entry<String, Long> entry: chunkTimings.entrySet()) { for (Map.Entry<String, Long> entry: timings) {
if (!chunksSkipped.contains(entry.getKey())) { if (!chunksSkipped.contains(entry.getKey())) {
if (entry.getValue() > 0) sender.sendMessage(" &c" + entry.getKey().replace("CraftChunk", "") + " - " if (entry.getValue() > 0) sender.sendMessage(" &c" + entry.getKey().replace("CraftChunk", "") + " - "
+ (chunkItemCount.getOrDefault(entry.getKey(), 0)) + "x &7(" + entry.getValue() + "ms)"); + (chunkItemCount.getOrDefault(entry.getKey(), 0)) + "x &7(" + entry.getValue() + "ms)");