CancelUuidCommand class

Пакет: com.hypixel.hytale.builtin.adventure.worldevents.command

Файл: com/hypixel/hytale/builtin/adventure/worldevents/command/CancelCommand.java

extends: AbstractAsyncWorldCommand

Поля (3)

МодификаторыТипИмя
private final RequiredArg<UUID> uuidArg
Store var2
UUID var3

Методы (3)

МодификаторыВозвратСигнатура
protected CompletableFuture<Void> executeAsyncprotected CompletableFuture<Void> executeAsync(@Nonnull CommandContext var1, @Nonnull World var2)
if if(var3 == null)
abstract super super("uuid", "server.commands.worldevent.cancel.uuid.desc")

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.worldevents.command;

class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.GlobalWorldEventManager;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.action.EventStopAction;
class="kw">import com.hypixel.hytale.builtin.adventure.worldevents.event.WorldEventAsset;
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.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractAsyncCommand;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractAsyncWorldCommand;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractCommandCollection;
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.UUID;
class="kw">import java.util.concurrent.CompletableFuture;
class="kw">import javax.annotation.Nonnull;

class="kw">public class CancelCommand class="kw">extends AbstractCommandCollection {
   class="kw">public CancelCommand() {
      super("cancel", "server.commands.worldevent.cancel.desc");
      this.addSubCommand(new CancelCommand.CancelAssetCommand());
      this.addSubCommand(new CancelCommand.CancelUuidCommand());
      this.addSubCommand(new CancelCommand.CancelGlobalCommand());
   }

   class="kw">public class="kw">static class CancelAssetCommand class="kw">extends AbstractAsyncWorldCommand {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<WorldEventAsset> assetArg = this.withRequiredArg(
         "asset", "server.commands.worldevent.cancel.asset.arg.asset.desc", WorldEventCommand.ASSET_ARGUMENT_TYPE
      );

      class="kw">public CancelAssetCommand() {
         super("asset", "server.commands.worldevent.cancel.asset.desc");
      }

      @Nonnull
      @Override
      class="kw">protected CompletableFuture<Void> executeAsync(@Nonnull CommandContext var1, @Nonnull World var2) {
         WorldEventAsset var3 = this.assetArg.get(var1);
         if (var3 != null && var3 != WorldEventAsset.UNKNOWN) {
            var1.sendMessage(Message.translation("server.commands.worldevent.cancel.cancelled").param("id", var3.getId()));
            class="kw">return CompletableFuture.runAsync(() -> {
               Store var2 = var2.getEntityStore().getStore();
               EventStopAction.stopEvent(var2, var3.getId(), (var0x, var1x) -> var0x.asset.equals(var1x));
            }, var2);
         } else {
            var1.sendMessage(Message.translation("server.commands.worldevent.assetNotFound"));
            class="kw">return CompletableFuture.completedFuture(null);
         }
      }
   }

   class="kw">public class="kw">static class CancelGlobalCommand class="kw">extends AbstractAsyncCommand {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<UUID> eventIdArg = this.withRequiredArg(
         "event-id", "server.commands.worldevent.cancel.global.arg.eventId.desc", WorldEventCommand.GLOBAL_EVENT_UUID_ARGUMENT_TYPE
      );

      class="kw">public CancelGlobalCommand() {
         super("global", "server.commands.worldevent.cancel.global.desc");
      }

      @Nonnull
      @Override
      class="kw">protected CompletableFuture<Void> executeAsync(@Nonnull CommandContext var1) {
         UUID var2 = this.eventIdArg.get(var1);
         if (var2 == null) {
            var1.sendMessage(Message.translation("server.commands.worldevent.invalidId"));
            class="kw">return CompletableFuture.completedFuture(null);
         } else {
            boolean var3 = GlobalWorldEventManager.stopEvent(var2);
            var1.sendMessage(
               var3
                  ? Message.translation("server.commands.worldevent.cancel.global.deactivated").param("id", var2.toString())
                  : Message.translation("server.commands.worldevent.cancel.global.notActive").param("id", var2.toString())
            );
            class="kw">return CompletableFuture.completedFuture(null);
         }
      }
   }

   class="kw">public class="kw">static class CancelUuidCommand class="kw">extends AbstractAsyncWorldCommand {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg(
         "uuid", "server.commands.worldevent.cancel.uuid.arg.uuid.desc", WorldEventCommand.RUNNING_EVENT_UUID_ARGUMENT_TYPE
      );

      class="kw">public CancelUuidCommand() {
         super("uuid", "server.commands.worldevent.cancel.uuid.desc");
      }

      @Nonnull
      @Override
      class="kw">protected CompletableFuture<Void> executeAsync(@Nonnull CommandContext var1, @Nonnull World var2) {
         UUID var3 = this.uuidArg.get(var1);
         if (var3 == null) {
            var1.sendMessage(Message.translation("server.commands.worldevent.cancel.invalidUuid"));
            class="kw">return CompletableFuture.completedFuture(null);
         } else {
            var1.sendMessage(Message.translation("server.commands.worldevent.cancel.cancelledUuid").param("uuid", var3.toString()));
            class="kw">return CompletableFuture.runAsync(() -> {
               Store var2 = var2.getEntityStore().getStore();
               EventStopAction.stopEvent(var2, var3, (var0x, var1x) -> var0x.uuid.equals(var1x));
            }, var2);
         }
      }
   }
}