ItemPacketGenerator class

Пакет: com.hypixel.hytale.server.core.modules.item

Файл: com/hypixel/hytale/server/core/modules/item/ItemPacketGenerator.java

extends: AssetPacketGenerator<String, Item, DefaultAssetMap<String, Item>>

Поля (5)

МодификаторыТипИмя
UpdateItems var3
UpdateItems var4
UpdateItems var4
AssetUpdateQuery.RebuildCache var5
AssetUpdateQuery.RebuildCache var7

Исходный код

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

class="kw">import com.hypixel.hytale.assetstore.AssetUpdateQuery;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.protocol.ToClientPacket;
class="kw">import com.hypixel.hytale.protocol.UpdateType;
class="kw">import com.hypixel.hytale.protocol.packets.assets.UpdateItems;
class="kw">import com.hypixel.hytale.server.core.asset.packet.AssetPacketGenerator;
class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.Item;
class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
class="kw">import java.util.Map;
class="kw">import java.util.Set;
class="kw">import java.util.Map.Entry;
class="kw">import javax.annotation.Nonnull;

class="kw">public class ItemPacketGenerator class="kw">extends AssetPacketGenerator<String, Item, DefaultAssetMap<String, Item>> {
   class="kw">public ItemPacketGenerator() {
   }

   @Nonnull
   class="kw">public ToClientPacket generateInitPacket(DefaultAssetMap<String, Item> var1, @Nonnull Map<String, Item> var2) {
      UpdateItems var3 = new UpdateItems();
      var3.type = UpdateType.Init;
      var3.items = new Object2ObjectOpenHashMap();

      for (Entry var5 : var2.entrySet()) {
         var3.items.put(var5.getKey(), var5.getValue().toPacket());
      }

      var3.updateModels = true;
      var3.updateIcons = true;
      class="kw">return var3;
   }

   @Nonnull
   class="kw">public ToClientPacket generateUpdatePacket(DefaultAssetMap<String, Item> var1, @Nonnull Map<String, Item> var2, @Nonnull AssetUpdateQuery var3) {
      UpdateItems var4 = new UpdateItems();
      var4.type = UpdateType.AddOrUpdate;
      var4.items = new Object2ObjectOpenHashMap();

      for (Entry var6 : var2.entrySet()) {
         var4.items.put(var6.getKey(), var6.getValue().toPacket());
      }

      AssetUpdateQuery.RebuildCache var7 = var3.getRebuildCache();
      var4.updateModels = var7.isBlockTextures() || var7.isModels();
      var4.updateIcons = var7.isItemIcons();
      class="kw">return var4;
   }

   @Nonnull
   class="kw">public ToClientPacket generateRemovePacket(DefaultAssetMap<String, Item> var1, @Nonnull Set<String> var2, @Nonnull AssetUpdateQuery var3) {
      UpdateItems var4 = new UpdateItems();
      var4.type = UpdateType.Remove;
      var4.removedItems = var2.toArray(String[]::new);
      AssetUpdateQuery.RebuildCache var5 = var3.getRebuildCache();
      var4.updateModels = var5.isBlockTextures() || var5.isModels();
      var4.updateIcons = var5.isItemIcons();
      class="kw">return var4;
   }
}