1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-20 03:35: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.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
@ -20,6 +21,7 @@ import org.bukkit.block.Block;
import org.bukkit.command.CommandSender;
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.HoverAction;
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
@ -200,20 +202,20 @@ public class TickerTask implements Runnable {
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6Skipped Machines: &e" + skipped));
sender.sendMessage("");
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) {
TellRawMessage tellraw = new TellRawMessage();
tellraw.addText(" &7&oHover for more Info");
StringBuilder hover = new StringBuilder();
int hidden = 0;
Map<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.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);
for (Map.Entry<String, Long> entry : timings) {
int count = machineCount.get(entry.getKey());
if (entry.getValue() > 0)
hover.append("\n&c").append(entry.getKey()).append(" - ")
.append(count).append("x &7(").append(entry.getValue()).append("ms, ")
@ -233,30 +235,33 @@ public class TickerTask implements Runnable {
}
else {
int hidden = 0;
for (Map.Entry<String, Integer> entry: machineCount.entrySet()) {
long timings = machineTimings.get(entry.getKey());
if (timings > 0) sender.sendMessage(ChatColor.translateAlternateColorCodes('&', " &e" + entry.getKey() + " - " + entry.getValue()+ "x &7(" + timings + "ms)"));
else hidden++;
for (Map.Entry<String, Long> entry: timings) {
int count = machineCount.get(entry.getKey());
if (entry.getValue() > 0)
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("");
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6Ticking Chunks:"));
timings = chunkTimings.entrySet().stream()
.sorted(Map.Entry.comparingByValue(Comparator.reverseOrder()))
.collect(Collectors.toList());
if (sender instanceof Player) {
TellRawMessage tellraw = new TellRawMessage();
tellraw.addText(" &7&oHover for more Info");
StringBuilder hover = new StringBuilder();
int hidden = 0;
Map<String, Long> timings = chunkTimings.entrySet().stream()
.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()) {
for (Map.Entry<String, Long> entry: timings) {
if (!chunksSkipped.contains(entry.getKey())) {
if (entry.getValue() > 0)
hover.append("\n&c").append(entry.getKey().replace("CraftChunk", "")).append(" - ")
@ -278,7 +283,7 @@ public class TickerTask implements Runnable {
}
else {
int hidden = 0;
for (Map.Entry<String, Long> entry: chunkTimings.entrySet()) {
for (Map.Entry<String, Long> entry: timings) {
if (!chunksSkipped.contains(entry.getKey())) {
if (entry.getValue() > 0) sender.sendMessage(" &c" + entry.getKey().replace("CraftChunk", "") + " - "
+ (chunkItemCount.getOrDefault(entry.getKey(), 0)) + "x &7(" + entry.getValue() + "ms)");