ProjectileConfigPacketGenerator class

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

Файл: com/hypixel/hytale/server/core/modules/projectile/config/ProjectileConfigPacketGenerator.java

extends: DefaultAssetPacketGenerator<String, ProjectileConfig>

Поля (5)

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

Методы (1)

МодификаторыВозвратСигнатура
abstract throw new IllegalStateExceptionthrow new IllegalStateException("Duplicate key")

Исходный код

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

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.UpdateProjectileConfigs;
class="kw">import com.hypixel.hytale.server.core.asset.packet.DefaultAssetPacketGenerator;
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">import javax.annotation.Nullable;

class="kw">public class ProjectileConfigPacketGenerator class="kw">extends DefaultAssetPacketGenerator<String, ProjectileConfig> {
   class="kw">public ProjectileConfigPacketGenerator() {
   }

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

      for (Entry var6 : var1.getAssetMap().entrySet()) {
         if (var4.put(var6.getKey(), var6.getValue().toPacket()) != null) {
            throw new IllegalStateException("Duplicate key");
         }
      }

      var3.configs = var4;
      class="kw">return var3;
   }

   @Nonnull
   @Override
   class="kw">public ToClientPacket generateUpdatePacket(@Nonnull Map<String, ProjectileConfig> var1) {
      UpdateProjectileConfigs var2 = new UpdateProjectileConfigs();
      var2.type = UpdateType.AddOrUpdate;
      Map var3 = new Object2ObjectOpenHashMap();

      for (Entry var5 : var1.entrySet()) {
         if (var3.put(var5.getKey(), var5.getValue().toPacket()) != null) {
            throw new IllegalStateException("Duplicate key");
         }
      }

      var2.configs = var3;
      class="kw">return var2;
   }

   @Nullable
   @Override
   class="kw">public ToClientPacket generateRemovePacket(@Nonnull Set<String> var1) {
      UpdateProjectileConfigs var2 = new UpdateProjectileConfigs();
      var2.type = UpdateType.Remove;
      var2.removedConfigs = var1.toArray(String[]::new);
      class="kw">return var2;
   }
}