Add /tpslimit Command #113
@ -20,6 +20,8 @@
|
|||||||
package de.steamwar.bausystem.commands;
|
package de.steamwar.bausystem.commands;
|
||||||
|
|
||||||
import de.steamwar.bausystem.BauSystem;
|
import de.steamwar.bausystem.BauSystem;
|
||||||
|
import de.steamwar.bausystem.Permission;
|
||||||
|
import de.steamwar.bausystem.world.Welt;
|
||||||
|
|||||||
import net.md_5.bungee.api.ChatMessageType;
|
import net.md_5.bungee.api.ChatMessageType;
|
||||||
import net.md_5.bungee.api.chat.TextComponent;
|
import net.md_5.bungee.api.chat.TextComponent;
|
||||||
Lixfel
hat
Millis dürfte für diesen Zweck zu ungenau sein, besser wären Nanosekunden Millis dürfte für diesen Zweck zu ungenau sein, besser wären Nanosekunden
|
|||||||
import net.minecraft.server.v1_15_R1.PacketPlayOutEntityVelocity;
|
import net.minecraft.server.v1_15_R1.PacketPlayOutEntityVelocity;
|
||||||
Lixfel
hat
Nutzung von versionsspezifischen Teilen in versionsübergreifendem Codeteil Nutzung von versionsspezifischen Teilen in versionsübergreifendem Codeteil
|
|||||||
@ -67,6 +69,14 @@ public class CommandTPSLimiter implements CommandExecutor {
|
|||||||
}, 0, 1);
|
}, 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean permissionCheck(Player player) {
|
||||||
|
if(Welt.noPermission(player, Permission.world)){
|
||||||
|
player.sendMessage(BauSystem.PREFIX + "§cDu darfst hier nicht den TPS-Limiter nutzen");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
if (!(sender instanceof Player)) {
|
if (!(sender instanceof Player)) {
|
||||||
@ -77,6 +87,8 @@ public class CommandTPSLimiter implements CommandExecutor {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
Player player = (Player) sender;
|
Player player = (Player) sender;
|
||||||
Lixfel
hat
player bekommt eine doppelte Nachricht, ich denke, die Nachricht in der ActionBar reicht aus. player bekommt eine doppelte Nachricht, ich denke, die Nachricht in der ActionBar reicht aus.
|
|||||||
|
// TODO: Remove on final push
|
||||||
|
// if (permissionCheck(player)) return false;
|
||||||
|
|
||||||
String tpsLimit = args[0];
|
String tpsLimit = args[0];
|
||||||
Lixfel
hat
§c §c
|
|||||||
if (tpsLimit.equals("default")) {
|
if (tpsLimit.equals("default")) {
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren
Finde ich nicht so ganz elegant, dass das die ganze Zeit mitläuft. Besser wäre, sich ggf. den Task zu merken und ihn dann zu Stoppen/zu starten.
Wenn ich den Task cancel() dann würde natürlich der server kurzzeitig schneller als 20 tps laufen. Nur damit das klar ist.