protected void sendLagMeter(CommandSender sender) { String wrapColor = white.toString(); if (sender instanceof Player) wrapColor = gold.toString(); String lagMeter = ""; float tps = 0f; if (useAverage) { tps = history.getAverage(); } else { tps = ticksPerSecond; } if (tps < 21) { int looped = 0; while (looped++ < tps) { lagMeter += "#"; } // lagMeter = String.format("%-20s",lagMeter); lagMeter += white; while (looped++ <= 20) { lagMeter += "_"; } } else { sender.sendMessage(wrapColor + "LagMeter just loaded, please wait for polling."); return; } String color = wrapColor; if (tps >= 20) { color = green.toString(); } else if (tps >= 18) { color = green.toString(); } else if (tps >= 15) { color = yellow.toString(); } else { color = red.toString(); } sender.sendMessage(wrapColor + "[" + color + lagMeter + wrapColor + "] " + tps + " TPS"); if (displayEntities) { int totalEntities = 0; List<World> worlds = getServer().getWorlds(); for (World world : worlds) { String worldName = world.getName(); int i = getServer().getWorld(worldName).getEntities().size(); totalEntities += i; sender.sendMessage(wrapColor + "Entities in world \"" + worldName + "\": " + i); } sender.sendMessage(wrapColor + "Total entities: " + totalEntities); } }
/** * Gets the ticks per second. * * @since 1.8 * @return ticksPerSecond */ public float getTPS() { if (useAverage) return history.getAverage(); return ticksPerSecond; }