updated tablist
This commit is contained in:
parent
71c413673d
commit
b5bab4e4b6
@ -19,19 +19,19 @@ import java.util.List;
|
|||||||
|
|
||||||
public class Tablist extends Appliance {
|
public class Tablist extends Appliance {
|
||||||
private final int refreshRate = Ticks.TICKS_PER_SECOND * 3;
|
private final int refreshRate = Ticks.TICKS_PER_SECOND * 3;
|
||||||
private final RainbowComponent serverName = new RainbowComponent(" CraftAttack 6 ", 7, 3);
|
private final RainbowComponent serverName = new RainbowComponent(" CraftAttack 7 ", 7, 3);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEnable() {
|
public void onEnable() {
|
||||||
Bukkit.getScheduler().runTaskTimerAsynchronously(
|
Bukkit.getScheduler().runTaskTimerAsynchronously(
|
||||||
Main.instance(),
|
Main.instance(),
|
||||||
() -> IteratorUtil.onlinePlayers(this::update),
|
() -> IteratorUtil.onlinePlayers(this::updateHeader),
|
||||||
refreshRate,
|
refreshRate,
|
||||||
refreshRate
|
refreshRate
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void update(Player player) {
|
public void fullUpdate(Player player) {
|
||||||
updateHeader(player);
|
updateHeader(player);
|
||||||
updateFooter(player);
|
updateFooter(player);
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,6 @@ import org.bukkit.event.player.PlayerJoinEvent;
|
|||||||
public class TablistListener extends ApplianceListener<Tablist> {
|
public class TablistListener extends ApplianceListener<Tablist> {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onPlayerJoin(PlayerJoinEvent event) {
|
public void onPlayerJoin(PlayerJoinEvent event) {
|
||||||
getAppliance().update(event.getPlayer());
|
getAppliance().fullUpdate(event.getPlayer());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -40,29 +40,38 @@ public class ComponentUtil {
|
|||||||
|
|
||||||
public static Component getFormattedMSPT() {
|
public static Component getFormattedMSPT() {
|
||||||
long[] times = Bukkit.getServer().getTickTimes();
|
long[] times = Bukkit.getServer().getTickTimes();
|
||||||
double mspt = ((double) Arrays.stream(times).sum() / (double) times.length) * 1.0E-6D;
|
float mspt = ((float) Arrays.stream(times).sum() / times.length) * 1.0E-6f;
|
||||||
double roundedMspt = (double) Math.round(mspt * 100d) / 100d;
|
float roundedMspt = Math.round(mspt * 100f) / 100f;
|
||||||
|
int loadPercentage = (int) (Math.min(100, (mspt / 50.0) * 100));
|
||||||
int percentage = (int) (Math.min(100, (mspt / 50.0) * 100));
|
float roundedTPS = Math.round(Bukkit.getTPS()[0] * 100f) / 100f;
|
||||||
|
|
||||||
TextColor msptColor = ColorUtil.mapGreenToRed(roundedMspt, 0, 50, true);
|
TextColor msptColor = ColorUtil.mapGreenToRed(roundedMspt, 0, 50, true);
|
||||||
TextColor percentageColor = ColorUtil.mapGreenToRed(percentage, 80, 100, true);
|
TextColor percentageColor = ColorUtil.mapGreenToRed(loadPercentage, 80, 100, true);
|
||||||
|
TextColor tpsColor = ColorUtil.mapGreenToRed(roundedTPS, 15, 20, false);
|
||||||
|
|
||||||
return Component.text()
|
return Component.text()
|
||||||
.append(Component.text("Serverlast: ", NamedTextColor.GRAY))
|
.append(Component.text("Serverlast: ", NamedTextColor.GRAY))
|
||||||
.append(Component.text(percentage + "% ", percentageColor))
|
.append(Component.text(loadPercentage + "% ", percentageColor))
|
||||||
.appendNewline()
|
.appendNewline()
|
||||||
.append(Component.text("(", NamedTextColor.GRAY))
|
.append(Component.text(roundedMspt + "mspt", msptColor))
|
||||||
.append(Component.text(roundedMspt + "ms", msptColor))
|
.append(Component.text(" | ", NamedTextColor.GRAY))
|
||||||
.append(Component.text(" per tick)", NamedTextColor.GRAY))
|
.append(Component.text(roundedTPS + "tps", tpsColor))
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static Component getFormattedPing(Player player) {
|
public static Component getFormattedPing(Player player) {
|
||||||
|
int playerPing = player.getPing();
|
||||||
|
int averagePing = Bukkit.getOnlinePlayers().stream()
|
||||||
|
.map(Player::getPing).reduce(Integer::sum)
|
||||||
|
.orElse(0) / Bukkit.getOnlinePlayers().size();
|
||||||
|
|
||||||
return Component.text()
|
return Component.text()
|
||||||
.append(Component.text("Dein Ping: ", NamedTextColor.GRAY))
|
.append(Component.text("Dein Ping: ", NamedTextColor.GRAY))
|
||||||
.append(Component.text(player.getPing() + "ms", ColorUtil.mapGreenToRed(player.getPing(), 100, 500, true)))
|
.append(Component.text(playerPing + "ms", ColorUtil.mapGreenToRed(playerPing, 50, 200, true)))
|
||||||
|
.append(Component.text(" | ", NamedTextColor.GRAY))
|
||||||
|
.append(Component.text("Durschnitt: ", NamedTextColor.GRAY))
|
||||||
|
.append(Component.text(averagePing + "ms", ColorUtil.mapGreenToRed(averagePing, 50, 200, true)))
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user