ItemDropList class

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

Файл: com/hypixel/hytale/server/core/asset/type/item/config/ItemDropList.java

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

Поля (3)

МодификаторыТипИмя
ASSET_STORE
final AssetBuilderCodec<String, ItemDropList> CODEC
List var3

Методы (6)

МодификаторыВозвратСигнатура
static DefaultAssetMap<String, ItemDropList> getAssetMapDefaultAssetMap<String, ItemDropList> getAssetMap()
static AssetStore<String, ItemDropList, DefaultAssetMap<String, ItemDropList>> getAssetStoreAssetStore<String, ItemDropList, DefaultAssetMap<String, ItemDropList>> getAssetStore()
public ItemDropContainer getContainerItemDropContainer getContainer()
public String getIdString getId()
if if(var2 != null)
if if(ASSET_STORE == null)

Исходный код

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

class="kw">import com.hypixel.hytale.assetstore.AssetExtraInfo;
class="kw">import com.hypixel.hytale.assetstore.AssetKeyValidator;
class="kw">import com.hypixel.hytale.assetstore.AssetRegistry;
class="kw">import com.hypixel.hytale.assetstore.AssetStore;
class="kw">import com.hypixel.hytale.assetstore.codec.AssetBuilderCodec;
class="kw">import com.hypixel.hytale.assetstore.codec.ContainedAssetCodec;
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.validation.Validator;
class="kw">import com.hypixel.hytale.codec.validation.ValidatorCache;
class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.container.ItemDropContainer;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;

class="kw">public class ItemDropList class="kw">implements JsonAssetWithMap<String, DefaultAssetMap<String, ItemDropList>> {
   class="kw">public class="kw">static class="kw">final AssetBuilderCodec<String, ItemDropList> CODEC = AssetBuilderCodec.builder(
         ItemDropList.class,
         ItemDropList::new,
         Codec.STRING,
         (var0, var1) -> var0.id = var1,
         var0 -> var0.id,
         (var0, var1) -> var0.data = var1,
         var0 -> var0.data
      )
      .appendInherited(
         new KeyedCodec<>("Container", ItemDropContainer.CODEC),
         (var0, var1) -> var0.container = var1,
         var0 -> var0.container,
         (var0, var1) -> var0.container = var1.container
      )
      .add()
      .validator((var0, var1) -> {
         ItemDropContainer var2 = var0.getContainer();
         if (var2 != null) {
            List var3 = var2.getAllDrops(new ObjectArrayList());
            if (var3.isEmpty()) {
               var1.fail("Container must have something to drop!");
            }
         }
      })
      .build();
   class="kw">public class="kw">static class="kw">final Codec<String> CHILD_ASSET_CODEC = new ContainedAssetCodec<>(ItemDropList.class, CODEC);
   class="kw">public class="kw">static class="kw">final ValidatorCache<String> VALIDATOR_CACHE = new ValidatorCache<>(new AssetKeyValidator<>(ItemDropList::getAssetStore));
   class="kw">public class="kw">static class="kw">final Validator<String> LENIENT_REFERENCE_VALIDATOR = new AssetKeyValidator<>(ItemDropList::getAssetStore, true);
   class="kw">private class="kw">static AssetStore<String, ItemDropList, DefaultAssetMap<String, ItemDropList>> ASSET_STORE;
   class="kw">protected AssetExtraInfo.Data data;
   class="kw">protected String id;
   class="kw">protected ItemDropContainer container;

   class="kw">public class="kw">static AssetStore<String, ItemDropList, DefaultAssetMap<String, ItemDropList>> getAssetStore() {
      if (ASSET_STORE == null) {
         ASSET_STORE = AssetRegistry.getAssetStore(ItemDropList.class);
      }

      class="kw">return ASSET_STORE;
   }

   class="kw">public class="kw">static DefaultAssetMap<String, ItemDropList> getAssetMap() {
      class="kw">return (DefaultAssetMap<String, ItemDropList>)getAssetStore().getAssetMap();
   }

   class="kw">public ItemDropList(String var1, ItemDropContainer var2) {
      this.id = var1;
      this.container = var2;
   }

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

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

   class="kw">public ItemDropContainer getContainer() {
      class="kw">return this.container;
   }

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