CommandLag.java 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package me.km.commands;
  2. import me.km.KajetansMod;
  3. import me.km.api.Module;
  4. import me.km.api.ModuleCommand;
  5. import me.km.permissions.Permissions;
  6. import net.minecraft.command.ICommandSender;
  7. public class CommandLag extends ModuleCommand
  8. {
  9. public CommandLag(Module m)
  10. {
  11. super("lag", m);
  12. super.setDescription("Testet den Server auf Lags");
  13. super.setUsage("/lag");
  14. super.setPermission(Permissions.LAG);
  15. }
  16. @Override
  17. public boolean execute(ICommandSender cs, String[] arg)
  18. {
  19. Module m = this.getModule();
  20. m.send(cs, "Der Lagtest wird durchgeführt:");
  21. long time = System.currentTimeMillis();
  22. KajetansMod.scheduler.scheduleTask(() ->
  23. {
  24. long diff = System.currentTimeMillis() - time;
  25. m.sendListElement(cs, "5000 Millisekunden sind nach dem Scheduler vergangen");
  26. m.sendListElement(cs, diff + " Millisekunden sind tatsächlich vergangen");
  27. String s = String.valueOf((((double) diff / 50d) - 100d));
  28. if(s.length() > 6)
  29. {
  30. s = s.substring(0, 5);
  31. }
  32. m.sendListElement(cs, "Dies entspricht einer Abweichung von " + s + "%");
  33. }, 100);
  34. return true;
  35. }
  36. }