ItemExistsValidator class

Пакет: com.hypixel.hytale.server.npc.asset.builder.validators.asset

Файл: com/hypixel/hytale/server/npc/asset/builder/validators/asset/ItemExistsValidator.java

extends: AssetValidator

Поля (1)

МодификаторыТипИмя
final ItemExistsValidator DEFAULT_INSTANCE

Методы (2)

МодификаторыВозвратСигнатура
static ItemExistsValidator requiredItemExistsValidator required()
abstract super super(var1)

Исходный код

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

class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.Item;
class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.ItemDropList;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.validators.AssetValidator;
class="kw">import com.hypixel.hytale.server.npc.util.InventoryHelper;
class="kw">import java.util.EnumSet;
class="kw">import javax.annotation.Nonnull;

class="kw">public class ItemExistsValidator class="kw">extends AssetValidator {
   class="kw">private class="kw">static class="kw">final ItemExistsValidator DEFAULT_INSTANCE = new ItemExistsValidator();
   class="kw">public class="kw">static class="kw">final String DROPLIST_PREFIX = "Droplist:";
   class="kw">private boolean requireBlock;
   class="kw">private boolean allowDroplist;

   class="kw">private ItemExistsValidator() {
   }

   class="kw">private ItemExistsValidator(boolean var1, boolean var2) {
      this.requireBlock = var1;
      this.allowDroplist = var2;
   }

   class="kw">private ItemExistsValidator(EnumSet<AssetValidator.Config> var1, boolean var2, boolean var3) {
      super(var1);
      this.requireBlock = var2;
      this.allowDroplist = var3;
   }

   @Nonnull
   @Override
   class="kw">public String getDomain() {
      class="kw">return "Item";
   }

   @Override
   class="kw">public boolean test(String var1) {
      if (var1 == null || var1.isEmpty()) {
         class="kw">return false;
      } else if (var1.startsWith("Droplist:")) {
         class="kw">return ItemDropList.getAssetMap().getAsset(var1.substring("Droplist:".length())) != null;
      } else {
         class="kw">return this.requireBlock ? InventoryHelper.itemKeyIsBlockType(var1) : InventoryHelper.itemKeyExists(var1);
      }
   }

   @Nonnull
   @Override
   class="kw">public String errorMessage(String var1, String var2) {
      class="kw">return "The item "
         + (this.allowDroplist ? "or droplist " : "")
         + "with the name \""
         + var1
         + "\" does not exist"
         + (this.requireBlock ? " or is not a block" : "")
         + " for attribute \""
         + var2
         + "\"";
   }

   @Nonnull
   @Override
   class="kw">public String getAssetName() {
      class="kw">return Item.class.getSimpleName();
   }

   class="kw">public class="kw">static ItemExistsValidator required() {
      class="kw">return DEFAULT_INSTANCE;
   }

   @Nonnull
   class="kw">public class="kw">static ItemExistsValidator requireBlock() {
      class="kw">return new ItemExistsValidator(true, false);
   }

   @Nonnull
   class="kw">public class="kw">static ItemExistsValidator orDroplist() {
      class="kw">return new ItemExistsValidator(false, true);
   }

   @Nonnull
   class="kw">public class="kw">static ItemExistsValidator withConfig(EnumSet<AssetValidator.Config> var0) {
      class="kw">return new ItemExistsValidator(var0, false, false);
   }

   @Nonnull
   class="kw">public class="kw">static ItemExistsValidator orDroplistWithConfig(EnumSet<AssetValidator.Config> var0) {
      class="kw">return new ItemExistsValidator(var0, false, true);
   }
}