BlockSpawnerTable class

Пакет: com.hypixel.hytale.builtin.blockspawner

Файл: com/hypixel/hytale/builtin/blockspawner/BlockSpawnerTable.java

implements: JsonAssetWithMap<String, DefaultAssetMap<String, BlockSpawnerTable>>

Поля (3)

МодификаторыТипИмя
ASSET_MAP
int var1
BlockSpawnerTable var2

Методы (5)

МодификаторыВозвратСигнатура
static DefaultAssetMap<String, BlockSpawnerTable> getAssetMapDefaultAssetMap<String, BlockSpawnerTable> getAssetMap()
public IWeightedMap<BlockSpawnerEntry> getEntriesIWeightedMap<BlockSpawnerEntry> getEntries()
public String getIdString getId()
if if(ASSET_MAP == null)
if if(this == var1)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.blockspawner;

class="kw">import com.hypixel.hytale.assetstore.AssetExtraInfo;
class="kw">import com.hypixel.hytale.assetstore.AssetRegistry;
class="kw">import com.hypixel.hytale.assetstore.codec.AssetBuilderCodec;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.assetstore.map.JsonAssetWithMap;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.schema.metadata.ui.UIDefaultCollapsedState;
class="kw">import com.hypixel.hytale.common.map.IWeightedMap;
class="kw">import com.hypixel.hytale.common.map.WeightedMap;
class="kw">import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
class="kw">import com.hypixel.hytale.server.core.codec.WeightedMapCodec;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class BlockSpawnerTable class="kw">implements JsonAssetWithMap<String, DefaultAssetMap<String, BlockSpawnerTable>> {
   @Nonnull
   class="kw">public class="kw">static class="kw">final AssetBuilderCodec<String, BlockSpawnerTable> CODEC = AssetBuilderCodec.builder(
         BlockSpawnerTable.class,
         BlockSpawnerTable::new,
         Codec.STRING,
         (var0, var1) -> var0.id = var1,
         var0 -> var0.id,
         (var0, var1) -> var0.data = var1,
         var0 -> var0.data
      )
      .appendInherited(
         new KeyedCodec<>("Entries", new WeightedMapCodec<>(BlockSpawnerEntry.CODEC, BlockSpawnerEntry.EMPTY_ARRAY)),
         (var0, var1) -> var0.entries = var1,
         var0 -> var0.entries,
         (var0, var1) -> var0.entries = WeightedMap.builder(BlockSpawnerEntry.EMPTY_ARRAY).putAll(var1.entries).build()
      )
      .metadata(UIDefaultCollapsedState.UNCOLLAPSED)
      .add()
      .validator((var0, var1) -> {
         for (BlockSpawnerEntry var5 : var0.getEntries().internalKeys()) {
            if (BlockType.getAssetMap().getIndex(var5.getBlockName()) == Integer.MIN_VALUE) {
               var1.fail("BlockName \"" + var5.getBlockName() + "\" does not exist in BlockSpawnerEntry");
            }
         }
      })
      .build();
   class="kw">private class="kw">static DefaultAssetMap<String, BlockSpawnerTable> ASSET_MAP;
   class="kw">protected AssetExtraInfo.Data data;
   class="kw">protected String id;
   class="kw">protected IWeightedMap<BlockSpawnerEntry> entries;

   class="kw">public class="kw">static DefaultAssetMap<String, BlockSpawnerTable> getAssetMap() {
      if (ASSET_MAP == null) {
         ASSET_MAP = (DefaultAssetMap<String, BlockSpawnerTable>)AssetRegistry.getAssetStore(BlockSpawnerTable.class).getAssetMap();
      }

      class="kw">return ASSET_MAP;
   }

   class="kw">public BlockSpawnerTable(String var1, @Nullable IWeightedMap<BlockSpawnerEntry> var2) {
      this.id = var1;
      this.entries = var2 == null ? WeightedMap.builder(BlockSpawnerEntry.EMPTY_ARRAY).build() : var2;
   }

   class="kw">protected BlockSpawnerTable() {
   }

   class="kw">public String getId() {
      class="kw">return this.id;
   }

   class="kw">public IWeightedMap<BlockSpawnerEntry> getEntries() {
      class="kw">return this.entries;
   }

   @Override
   class="kw">public boolean equals(@Nullable Object var1) {
      if (this == var1) {
         class="kw">return true;
      }

      if (var1 != null && this.getClass() == var1.getClass()) {
         BlockSpawnerTable var2 = (BlockSpawnerTable)var1;
         if (this.id != null ? this.id.equals(var2.id) : var2.id == null) {
            class="kw">return this.entries != null ? this.entries.equals(var2.entries) : var2.entries == null;
         } else {
            class="kw">return false;
         }
      } else {
         class="kw">return false;
      }
   }

   @Override
   class="kw">public int hashCode() {
      int var1 = this.id != null ? this.id.hashCode() : 0;
      class="kw">return 31 * var1 + (this.entries != null ? this.entries.hashCode() : 0);
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "BlockSpawnerTable{id='" + this.id + "'}";
   }
}