AndPatternAsset class

Пакет: com.hypixel.hytale.builtin.hytalegenerator.assets.patterns

Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/patterns/AndPatternAsset.java

extends: PatternAsset

Поля (1)

МодификаторыТипИмя
ArrayList var2

Методы (3)

МодификаторыВозвратСигнатура
abstract return new AndPatternreturn new AndPattern(var2)
for for(PatternAsset var6 : this.patternAssets)
for for(PatternAsset var4 : this.patternAssets)

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.hytalegenerator.patterns.AndPattern;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.patterns.ConstantPattern;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.patterns.Pattern;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.codec.codecs.array.ArrayCodec;
class="kw">import java.util.ArrayList;
class="kw">import javax.annotation.Nonnull;

class="kw">public class AndPatternAsset class="kw">extends PatternAsset {
   @Nonnull
   class="kw">public class="kw">static class="kw">final BuilderCodec<AndPatternAsset> CODEC = BuilderCodec.builder(AndPatternAsset.class, AndPatternAsset::new, PatternAsset.ABSTRACT_CODEC)
      .append(
         new KeyedCodec<>("Patterns", new ArrayCodec<>(PatternAsset.CODEC, PatternAsset[]::new), true),
         (var0, var1) -> var0.patternAssets = var1,
         var0 -> var0.patternAssets
      )
      .add()
      .build();
   class="kw">private PatternAsset[] patternAssets = new PatternAsset[0];

   class="kw">public AndPatternAsset() {
   }

   @Nonnull
   @Override
   class="kw">public Pattern build(@Nonnull PatternAsset.Argument var1) {
      if (super.skip()) {
         class="kw">return ConstantPattern.INSTANCE_FALSE;
      }

      ArrayList var2 = new ArrayList<>(this.patternAssets.length);

      for (PatternAsset var6 : this.patternAssets) {
         if (!var6.skip()) {
            var2.add(var6.build(var1));
         }
      }

      class="kw">return new AndPattern(var2);
   }

   @Override
   class="kw">public void cleanUp() {
      for (PatternAsset var4 : this.patternAssets) {
         var4.cleanUp();
      }
   }
}