CursedItems class

Пакет: com.hypixel.hytale.builtin.portals.utils

Файл: com/hypixel/hytale/builtin/portals/utils/CursedItems.java

Поля (4)

МодификаторыТипИмя
AtomicBoolean var1
AdventureMetadata var2
AdventureMetadata var3
boolean var3

Методы (3)

МодификаторыВозвратСигнатура
static void deleteAllvoid deleteAll(@Nonnull ItemContainer var0)
if if(var3 == null)
static boolean uncurseAllboolean uncurseAll(@Nonnull ItemContainer var0)

Исходный код

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

class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.metadata.AdventureMetadata;
class="kw">import com.hypixel.hytale.server.core.inventory.ItemStack;
class="kw">import com.hypixel.hytale.server.core.inventory.container.ItemContainer;
class="kw">import java.util.concurrent.atomic.AtomicBoolean;
class="kw">import javax.annotation.Nonnull;

class="kw">public class="kw">final class CursedItems {
   class="kw">private CursedItems() {
   }

   class="kw">public class="kw">static boolean uncurseAll(@Nonnull ItemContainer var0) {
      AtomicBoolean var1 = new AtomicBoolean(false);
      var0.replaceAll((var1x, var2) -> {
         AdventureMetadata var3 = var2.getFromMetadataOrNull("Adventure", AdventureMetadata.CODEC);
         if (var3 == null) {
            class="kw">return var2;
         }

         if (!var3.isCursed()) {
            class="kw">return var2;
         }

         var3.setCursed(false);
         var1.setPlain(true);
         class="kw">return var2.withMetadata("Adventure", AdventureMetadata.CODEC, var3);
      });
      class="kw">return var1.get();
   }

   class="kw">public class="kw">static void deleteAll(@Nonnull ItemContainer var0) {
      var0.replaceAll((var0x, var1) -> {
         AdventureMetadata var2 = var1.getFromMetadataOrNull(AdventureMetadata.KEYED_CODEC);
         boolean var3 = var2 != null && var2.isCursed();
         class="kw">return var3 ? ItemStack.EMPTY : var1;
      });
   }
}