Stripe class

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

Файл: com/hypixel/hytale/builtin/hytalegenerator/materialproviders/StripedMaterialProvider.java

Поля (2)

МодификаторыТипИмя
private final int bottomY
private final int topY

Методы (1)

МодификаторыВозвратСигнатура
public boolean containspublic boolean contains(int var1)

Исходный код

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

class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class StripedMaterialProvider<V> class="kw">extends MaterialProvider<V> {
   @Nonnull
   class="kw">private class="kw">final MaterialProvider<V> materialProvider;
   @Nonnull
   class="kw">private class="kw">final StripedMaterialProvider.Stripe[] stripes;

   class="kw">public StripedMaterialProvider(@Nonnull MaterialProvider<V> var1, @Nonnull List<StripedMaterialProvider.Stripe> var2) {
      this.materialProvider = var1;
      this.stripes = new StripedMaterialProvider.Stripe[var2.size()];

      for (int var3 = 0; var3 < var2.size(); var3++) {
         StripedMaterialProvider.Stripe var4 = var2.get(var3);
         this.stripes[var3] = var4;
      }
   }

   @Nullable
   @Override
   class="kw">public V getVoxelTypeAt(@Nonnull MaterialProvider.Context var1) {
      for (StripedMaterialProvider.Stripe var5 : this.stripes) {
         if (var5.contains(var1.position.y)) {
            class="kw">return this.materialProvider.getVoxelTypeAt(var1);
         }
      }

      class="kw">return null;
   }

   class="kw">public class="kw">static class Stripe {
      class="kw">private class="kw">final int topY;
      class="kw">private class="kw">final int bottomY;

      class="kw">public Stripe(int var1, int var2) {
         this.topY = var1;
         this.bottomY = var2;
      }

      class="kw">public boolean contains(int var1) {
         class="kw">return var1 >= this.bottomY && var1 <= this.topY;
      }
   }
}