Initial commit (Forge 1291).
This commit is contained in:
44
src/main/java/org/spigotmc/TicksPerSecondCommand.java
Normal file
44
src/main/java/org/spigotmc/TicksPerSecondCommand.java
Normal file
@ -0,0 +1,44 @@
|
||||
package org.spigotmc;
|
||||
|
||||
import com.google.common.base.Joiner;
|
||||
import com.google.common.collect.Iterables;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class TicksPerSecondCommand extends Command
|
||||
{
|
||||
|
||||
public TicksPerSecondCommand(String name)
|
||||
{
|
||||
super( name );
|
||||
this.description = "Gets the current ticks per second for the server";
|
||||
this.usageMessage = "/tps";
|
||||
this.setPermission( "bukkit.command.tps" );
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean execute(CommandSender sender, String currentAlias, String[] args)
|
||||
{
|
||||
if ( !testPermission( sender ) )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
StringBuilder sb = new StringBuilder( ChatColor.GOLD + "TPS from last 1m, 5m, 15m: " );
|
||||
for ( double tps : net.minecraft.server.MinecraftServer.getServer().recentTps )
|
||||
{
|
||||
sb.append( format( tps ) );
|
||||
sb.append( ", " );
|
||||
}
|
||||
sender.sendMessage( sb.substring( 0, sb.length() - 2 ) );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private String format(double tps)
|
||||
{
|
||||
return ( ( tps > 18.0 ) ? ChatColor.GREEN : ( tps > 16.0 ) ? ChatColor.YELLOW : ChatColor.RED ).toString()
|
||||
+ ( ( tps > 20.0 ) ? "*" : "" ) + Math.min( Math.round( tps * 100.0 ) / 100.0, 20.0 );
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user