ItemStackContainerWindow class

Пакет: com.hypixel.hytale.server.core.entity.entities.player.windows

Файл: com/hypixel/hytale/server/core/entity/entities/player/windows/ItemStackContainerWindow.java

extends: Window

implements: ItemContainerWindow

Методы (1)

МодификаторыВозвратСигнатура
abstract super super(WindowType.Container)

Исходный код

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

class="kw">import com.google.gson.JsonObject;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.event.EventRegistration;
class="kw">import com.hypixel.hytale.protocol.packets.window.WindowType;
class="kw">import com.hypixel.hytale.server.core.inventory.container.ItemContainer;
class="kw">import com.hypixel.hytale.server.core.inventory.container.ItemStackItemContainer;
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 ItemStackContainerWindow class="kw">extends Window class="kw">implements ItemContainerWindow {
   @Nonnull
   class="kw">private class="kw">final JsonObject windowData = new JsonObject();
   @Nonnull
   class="kw">private class="kw">final ItemStackItemContainer itemStackItemContainer;
   @Nullable
   class="kw">private EventRegistration eventRegistration;

   class="kw">public ItemStackContainerWindow(@Nonnull ItemStackItemContainer var1) {
      super(WindowType.Container);
      this.itemStackItemContainer = var1;
   }

   @Nonnull
   @Override
   class="kw">public JsonObject getData() {
      class="kw">return this.windowData;
   }

   @Override
   class="kw">public boolean onOpen0(@Nonnull Ref<EntityStore> var1, @Nonnull Store<EntityStore> var2) {
      this.eventRegistration = this.itemStackItemContainer.getParentContainer().registerChangeEvent(var3 -> {
         if (!this.itemStackItemContainer.isItemStackValid()) {
            this.close(var1, var2);
         }
      });
      class="kw">return true;
   }

   @Override
   class="kw">public void onClose0(@Nonnull Ref<EntityStore> var1, @Nonnull ComponentAccessor<EntityStore> var2) {
      this.eventRegistration.unregister();
      this.eventRegistration = null;
   }

   @Nonnull
   @Override
   class="kw">public ItemContainer getItemContainer() {
      class="kw">return this.itemStackItemContainer;
   }
}