BlockSetPacketGenerator class

Пакет: com.hypixel.hytale.server.core.asset.type.blockset

Файл: com/hypixel/hytale/server/core/asset/type/blockset/BlockSetPacketGenerator.java

extends: AssetPacketGenerator<String, BlockSet, IndexedLookupTableAssetMap<String, BlockSet>>

Поля (3)

МодификаторыТипИмя
UpdateBlockSets var3
UpdateBlockSets var4
UpdateBlockSets var4

Методы (1)

МодификаторыВозвратСигнатура
for for(String var6 : var2)

Исходный код

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

class="kw">import com.hypixel.hytale.assetstore.AssetUpdateQuery;
class="kw">import com.hypixel.hytale.assetstore.map.IndexedLookupTableAssetMap;
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.UpdateBlockSets;
class="kw">import com.hypixel.hytale.server.core.asset.packet.AssetPacketGenerator;
class="kw">import com.hypixel.hytale.server.core.asset.type.blockset.config.BlockSet;
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 java.util.stream.Collectors;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class BlockSetPacketGenerator class="kw">extends AssetPacketGenerator<String, BlockSet, IndexedLookupTableAssetMap<String, BlockSet>> {
   class="kw">public BlockSetPacketGenerator() {
   }

   @Nonnull
   class="kw">public ToClientPacket generateInitPacket(@Nonnull IndexedLookupTableAssetMap<String, BlockSet> var1, Map<String, BlockSet> var2) {
      UpdateBlockSets var3 = new UpdateBlockSets();
      var3.type = UpdateType.Init;
      var3.blockSets = var1.getAssetMap().entrySet().stream().collect(Collectors.toMap(Entry::getKey, var0 -> var0.getValue().toPacket()));
      class="kw">return var3;
   }

   @Nonnull
   class="kw">public ToClientPacket generateUpdatePacket(
      IndexedLookupTableAssetMap<String, BlockSet> var1, @Nonnull Map<String, BlockSet> var2, @Nonnull AssetUpdateQuery var3
   ) {
      UpdateBlockSets var4 = new UpdateBlockSets();
      var4.type = UpdateType.AddOrUpdate;
      var4.blockSets = var2.entrySet().stream().collect(Collectors.toMap(Entry::getKey, var0 -> var0.getValue().toPacket()));
      class="kw">return var4;
   }

   @Nullable
   class="kw">public ToClientPacket generateRemovePacket(IndexedLookupTableAssetMap<String, BlockSet> var1, @Nonnull Set<String> var2, @Nonnull AssetUpdateQuery var3) {
      UpdateBlockSets var4 = new UpdateBlockSets();
      var4.type = UpdateType.Remove;
      var4.blockSets = new Object2ObjectOpenHashMap();

      for (String var6 : var2) {
         var4.blockSets.put(var6, null);
      }

      class="kw">return var4;
   }
}