WaitCommand class
Пакет: com.hypixel.hytale.builtin.commandmacro
Файл: com/hypixel/hytale/builtin/commandmacro/WaitCommand.java
extends: AbstractAsyncCommand
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
long |
MILLISECONDS_TO_SECONDS_MULTIPLIER |
|
CommandSender |
var2 |
|
Runnable |
var3 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
|
super super("wait", "server.commands.wait.desc") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.commandmacro;
class="kw">import com.hypixel.hytale.codec.validation.Validators;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandSender;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.FlagArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractAsyncCommand;
class="kw">import java.util.concurrent.CompletableFuture;
class="kw">import java.util.concurrent.TimeUnit;
class="kw">import javax.annotation.Nonnull;
class="kw">public class WaitCommand class="kw">extends AbstractAsyncCommand {
class="kw">private class="kw">static class="kw">final long MILLISECONDS_TO_SECONDS_MULTIPLIER = 1000L;
@Nonnull
class="kw">public class="kw">static class="kw">final Runnable EMPTY_RUNNABLE = () -> {};
@Nonnull
class="kw">private class="kw">final RequiredArg<Float> timeArg = this.withRequiredArg("time", "server.commands.wait.arg.time", ArgTypes.FLOAT)
.addValidator(Validators.greaterThan(0.0F))
.addValidator(Validators.lessThan(1000.0F));
@Nonnull
class="kw">private class="kw">final FlagArg printArg = this.withFlagArg("print", "server.commands.wait.arg.print");
class="kw">public WaitCommand() {
super("wait", "server.commands.wait.desc");
this.setPermissionGroups("hytale:WorldEditor");
}
@Nonnull
@Override
class="kw">protected CompletableFuture<Void> executeAsync(@Nonnull CommandContext var1) {
CommandSender var2 = var1.sender();
Runnable var3 = this.printArg.get(var1) ? () -> var2.sendMessage(Message.translation("server.commands.wait.complete")) : EMPTY_RUNNABLE;
class="kw">return CompletableFuture.runAsync(var3, CompletableFuture.delayedExecutor((long)(this.timeArg.get(var1) * 1000.0F), TimeUnit.MILLISECONDS));
}
}