InventoryBackpackCommand class

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

Файл: com/hypixel/hytale/server/core/command/commands/player/inventory/InventoryBackpackCommand.java

extends: AbstractPlayerCommand

Поля (5)

МодификаторыТипИмя
ItemStack var10
InventoryComponent.Backpack var6
short var7
ObjectArrayList var8
ObjectListIterator var9

Методы (2)

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

Исходный код

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

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.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.AbstractPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.entity.ItemUtils;
class="kw">import com.hypixel.hytale.server.core.inventory.InventoryComponent;
class="kw">import com.hypixel.hytale.server.core.inventory.ItemStack;
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.storage.EntityStore;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectListIterator;
class="kw">import javax.annotation.Nonnull;

class="kw">public class InventoryBackpackCommand class="kw">extends AbstractPlayerCommand {
   @Nonnull
   class="kw">private class="kw">final OptionalArg<Integer> sizeArg = this.withOptionalArg("size", "server.commands.inventorybackpack.size.desc", ArgTypes.INTEGER);

   class="kw">public InventoryBackpackCommand() {
      super("backpack", "server.commands.inventorybackpack.desc");
      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
   ) {
      InventoryComponent.Backpack var6 = var2.getComponent(var3, InventoryComponent.Backpack.getComponentType());
      if (var6 != null) {
         if (!this.sizeArg.provided(var1)) {
            var1.sendMessage(Message.translation("server.commands.inventory.backpack.size").param("capacity", var6.getInventory().getCapacity()));
         } else {
            short var7 = this.sizeArg.get(var1).shortValue();
            ObjectArrayList var8 = new ObjectArrayList();
            var6.resize(var7, var8);
            ObjectListIterator var9 = var8.iterator();

            while (var9.hasNext()) {
               ItemStack var10 = (ItemStack)var9.next();
               ItemUtils.dropItem(var3, var10, var2);
            }

            var1.sendMessage(
               Message.translation("server.commands.inventory.backpack.resized")
                  .param("capacity", var6.getInventory().getCapacity())
                  .param("dropped", var8.size())
            );
         }
      }
   }
}