HubCommand class

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

Файл: com/hypixel/hytale/builtin/creativehub/command/HubCommand.java

extends: AbstractPlayerCommand

Поля (9)

МодификаторыТипИмя
Transform var10
World var11
CreativeHubEntityConfig var2
World var3
CreativeHubWorldConfig var4
World var6
CreativeHubWorldConfig var7
World var8
ISpawnProvider var9

Методы (3)

МодификаторыВозвратСигнатура
if if(var6 == null)
if if(var3 != null)
abstract super super("hub", "server.commands.hub.desc")

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.creativehub.CreativeHubPlugin;
class="kw">import com.hypixel.hytale.builtin.creativehub.config.CreativeHubEntityConfig;
class="kw">import com.hypixel.hytale.builtin.creativehub.config.CreativeHubWorldConfig;
class="kw">import com.hypixel.hytale.builtin.instances.InstancesPlugin;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.math.vector.Transform;
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.basecommands.AbstractPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.Universe;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.spawn.ISpawnProvider;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class HubCommand class="kw">extends AbstractPlayerCommand {
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_NOT_IN_HUB_WORLD = Message.translation("server.commands.hub.notInHubWorld");
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_ALREADY_IN_HUB = Message.translation("server.commands.hub.alreadyInHub");

   class="kw">public HubCommand() {
      super("hub", "server.commands.hub.desc");
      this.addAliases("cosmos", "crossroads");
      this.setPermissionGroups("hytale:Builder");
   }

   @Override
   class="kw">protected void execute(
      @Nonnull CommandContext var1, @Nonnull Store<EntityStore> var2, @Nonnull Ref<EntityStore> var3, @Nonnull PlayerRef var4, @Nonnull World var5
   ) {
      World var6 = findParentHubWorld(var2, var3);
      if (var6 == null) {
         var4.sendMessage(MESSAGE_NOT_IN_HUB_WORLD);
      } else {
         CreativeHubWorldConfig var7 = CreativeHubWorldConfig.get(var6.getWorldConfig());
         if (var7 != null && var7.getStartupInstance() != null) {
            World var8 = CreativeHubPlugin.get().getActiveHubInstance(var6);
            if (var5.equals(var8)) {
               var4.sendMessage(MESSAGE_ALREADY_IN_HUB);
            } else {
               ISpawnProvider var9 = var6.getWorldConfig().getSpawnProvider();
               Transform var10 = var9 != null ? var9.getSpawnPoint(var6, var4.getUuid()) : new Transform();
               World var11 = CreativeHubPlugin.get().getOrSpawnHubInstance(var6, var7, var10);
               InstancesPlugin.teleportPlayerToInstance(var3, var2, var11, null);
            }
         } else {
            var4.sendMessage(MESSAGE_NOT_IN_HUB_WORLD);
         }
      }
   }

   @Nullable
   class="kw">private class="kw">static World findParentHubWorld(@Nonnull Store<EntityStore> var0, @Nonnull Ref<EntityStore> var1) {
      CreativeHubEntityConfig var2 = var0.getComponent(var1, CreativeHubEntityConfig.getComponentType());
      if (var2 != null && var2.getParentHubWorldUuid() != null) {
         World var3 = Universe.get().getWorld(var2.getParentHubWorldUuid());
         if (var3 != null) {
            CreativeHubWorldConfig var4 = CreativeHubWorldConfig.get(var3.getWorldConfig());
            if (var4 != null && var4.getStartupInstance() != null) {
               class="kw">return var3;
            }
         }
      }

      class="kw">return null;
   }
}