MapMarkersListCommand class

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

Файл: com/hypixel/hytale/server/core/command/commands/utility/worldmap/marker/MapMarkersListCommand.java

extends: AbstractTargetPlayerCommand

Поля (10)

МодификаторыТипИмя
final int MAX_LISTED
List var10
BlockMapMarkersResource.BlockMapMarkerData var13
Message var14
var14
var14
var14
Player var7
List var8
PlayerWorldData var9

Методы (2)

МодификаторыВозвратСигнатура
for for(BlockMarkerLookup.Match var12 : var10)
abstract super super("list", "server.commands.worldmap.markers.list.desc")

Исходный код

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

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.AbstractTargetPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.entity.entities.player.data.PlayerWorldData;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.meta.state.BlockMapMarkersResource;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class MapMarkersListCommand class="kw">extends AbstractTargetPlayerCommand {
   class="kw">private class="kw">static class="kw">final int MAX_LISTED = 50;
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_NONE = Message.translation("server.commands.worldmap.markers.list.none");
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message STATE_ALWAYS_VISIBLE = Message.translation("server.commands.worldmap.markers.list.state.alwaysVisible");
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message STATE_REVEALED = Message.translation("server.commands.worldmap.markers.list.state.revealed");
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message STATE_HIDDEN = Message.translation("server.commands.worldmap.markers.list.state.hidden");

   class="kw">public MapMarkersListCommand() {
      super("list", "server.commands.worldmap.markers.list.desc");
   }

   @Override
   class="kw">protected void execute(
      @Nonnull CommandContext var1,
      @Nullable Ref<EntityStore> var2,
      @Nonnull Ref<EntityStore> var3,
      @Nonnull PlayerRef var4,
      @Nonnull World var5,
      @Nonnull Store<EntityStore> var6
   ) {
      Player var7 = var6.getComponent(var3, Player.getComponentType());
      assert var7 != null;
      List var8 = BlockMarkerLookup.findAll(var5);
      if (var8.isEmpty()) {
         var1.sendMessage(MESSAGE_NONE);
      } else {
         PlayerWorldData var9 = var7.getPlayerConfigData().getPerWorldData(var5.getName());
         var1.sendMessage(Message.translation("server.commands.worldmap.markers.list.header").param("player", var4.getUsername()).param("count", var8.size()));
         List var10 = var8.size() > 50 ? var8.subList(0, 50) : var8;

         for (BlockMarkerLookup.Match var12 : var10) {
            BlockMapMarkersResource.BlockMapMarkerData var13 = var12.data();
            Message var14;
            if (!var13.isDiscoverable()) {
               var14 = STATE_ALWAYS_VISIBLE;
            } else if (var9.isMarkerRevealed(var13.getMarkerId())) {
               var14 = STATE_REVEALED;
            } else {
               var14 = STATE_HIDDEN;
            }

            var1.sendMessage(
               Message.translation("server.commands.worldmap.markers.list.entry")
                  .param("id", var13.getMarkerId())
                  .param("name", var13.getName() == null ? "" : var13.getName())
                  .param("x", var12.x())
                  .param("y", var12.y())
                  .param("z", var12.z())
                  .param("state", var14)
            );
         }

         if (var10.size() < var8.size()) {
            var1.sendMessage(Message.translation("server.commands.worldmap.markers.list.truncated").param("shown", var10.size()).param("count", var8.size()));
         }
      }
   }
}