WhoCommand class

Пакет: com.hypixel.hytale.server.core.command.commands.server

Файл: com/hypixel/hytale/server/core/command/commands/server/WhoCommand.java

extends: AbstractAsyncCommand

Поля (10)

МодификаторыТипИмя
Message var10
Map var2
ObjectArrayList var3
Collection var3
List var4
World var6
CompletableFuture var7
Ref var7
Player var8
DisplayNameComponent var9

Методы (4)

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

Исходный код

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

class="kw">import com.hypixel.hytale.component.Ref;
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.basecommands.AbstractAsyncCommand;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.DisplayNameComponent;
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.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.core.util.message.MessageFormat;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.Collection;
class="kw">import java.util.List;
class="kw">import java.util.Map;
class="kw">import java.util.Map.Entry;
class="kw">import java.util.concurrent.CompletableFuture;
class="kw">import javax.annotation.Nonnull;

class="kw">public class WhoCommand class="kw">extends AbstractAsyncCommand {
   class="kw">public WhoCommand() {
      super("who", "server.commands.who.desc");
      this.setPermissionGroups("hytale:Adventurer");
   }

   @Nonnull
   @Override
   class="kw">protected CompletableFuture<Void> executeAsync(@Nonnull CommandContext var1) {
      Map var2 = Universe.get().getWorlds();
      ObjectArrayList var3 = new ObjectArrayList();

      for (Entry var5 : var2.entrySet()) {
         World var6 = var5.getValue();
         CompletableFuture var7 = this.runAsync(
            var1,
            () -> {
               Store var2 = var6.getEntityStore().getStore();
               Collection var3 = var6.getPlayerRefs();
               List var4 = new ObjectArrayList();

               for (PlayerRef var6 : var3) {
                  Ref var7 = var6.getReference();
                  if (var7 != null && var7.isValid()) {
                     Player var8 = var2.getComponent(var7, Player.getComponentType());
                     if (var8 != null) {
                        DisplayNameComponent var9 = var2.getComponent(var7, DisplayNameComponent.getComponentType());
                        assert var9 != null;
                        Message var10 = var9.getDisplayName();
                        if (var10 != null) {
                           var4.add(
                              Message.translation("server.commands.who.playerWithDisplayName")
                                 .param("displayName", var10)
                                 .param("username", var6.getUsername())
                           );
                        } else {
                           var4.add(Message.raw(var6.getUsername()));
                        }
                     }
                  }
               }

               var1.sendMessage(MessageFormat.list(Message.raw(var6.getName()), var4));
            },
            var6
         );
         var3.add(var7);
      }

      class="kw">return CompletableFuture.allOf((CompletableFuture<?>[])var3.toArray(new CompletableFuture[0]));
   }
}