-
-
Notifications
You must be signed in to change notification settings - Fork 44
/
TPSCommand.java
45 lines (39 loc) · 1.36 KB
/
TPSCommand.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package me.nallar.tickthreading.minecraft.commands;
import java.util.List;
import me.nallar.tickthreading.minecraft.TickManager;
import me.nallar.tickthreading.minecraft.TickThreading;
import me.nallar.tickthreading.util.TableFormatter;
import net.minecraft.command.ICommandSender;
import net.minecraft.server.MinecraftServer;
public class TPSCommand extends Command {
public static String name = "tps";
@Override
public String getCommandName() {
return name;
}
@Override
public boolean canCommandSenderUseCommand(ICommandSender par1ICommandSender) {
return true;
}
@Override
public void processCommand(ICommandSender commandSender, List<String> arguments) {
TableFormatter tf = new TableFormatter(commandSender);
StringBuilder tpsReport = tf.sb;
tf
.heading("World")
.heading("TPS")
.heading("Entities")
.heading("Tiles")
.heading("Chunks")
.heading("Load");
for (TickManager tickManager : TickThreading.instance.getManagers()) {
tickManager.writeStats(tf);
}
tf.finishTable();
float usedTime = MinecraftServer.getTickTime();
tpsReport.append("\nUsed time per tick: ").append(usedTime).append("ms")
.append("\nOverall TPS: ").append(MinecraftServer.getTPS())
.append("\nOverall load: ").append(usedTime * 2).append('%');
sendChat(commandSender, tpsReport.toString());
}
}