LightingSendToggleCommand class
Пакет: com.hypixel.hytale.server.core.command.commands.utility.lighting
Файл: com/hypixel/hytale/server/core/command/commands/utility/lighting/LightingSendToggleCommand.java
extends: AbstractWorldCommand
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Boolean |
var4 |
|
Boolean |
var5 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
|
super super(var1, var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.commands.utility.lighting;
class="kw">import com.hypixel.hytale.component.Store;
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.arguments.system.OptionalArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractWorldCommand;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.Objects;
class="kw">import java.util.function.BooleanSupplier;
class="kw">import java.util.function.Consumer;
class="kw">import javax.annotation.Nonnull;
class="kw">abstract class LightingSendToggleCommand class="kw">extends AbstractWorldCommand {
@Nonnull
class="kw">private class="kw">final String statusTranslationKey;
@Nonnull
class="kw">private class="kw">final BooleanSupplier getter;
@Nonnull
class="kw">private class="kw">final Consumer<Boolean> setter;
@Nonnull
class="kw">private class="kw">final OptionalArg<Boolean> enabledArg;
class="kw">protected LightingSendToggleCommand(
@Nonnull String var1, @Nonnull String var2, @Nonnull String var3, @Nonnull String var4, @Nonnull BooleanSupplier var5, @Nonnull Consumer<Boolean> var6
) {
super(var1, var2);
this.statusTranslationKey = var4;
this.getter = var5;
this.setter = var6;
this.enabledArg = this.withOptionalArg("enabled", var3, ArgTypes.BOOLEAN);
}
@Override
class="kw">protected void execute(@Nonnull CommandContext var1, @Nonnull World var2, @Nonnull Store<EntityStore> var3) {
Boolean var4 = this.enabledArg.provided(var1) ? this.enabledArg.get(var1) : null;
Boolean var5 = Objects.requireNonNullElseGet(var4, () -> !this.getter.getAsBoolean());
this.setter.accept(var5);
var1.sendMessage(Message.translation(this.statusTranslationKey).param("enabled", var5.toString()));
}
}