Entry class

Пакет: com.hypixel.hytale.server.worldgen.container

Файл: com/hypixel/hytale/server/worldgen/container/WaterContainer.java

Поля (6)

МодификаторыТипИмя
public static final WaterContainer.Entry[] EMPTY_ARRAY
private final int block
private final int fluid
private final ICoordinateCondition mask
private final IDoubleCoordinateSupplier max
private final IDoubleCoordinateSupplier min

Методы (8)

МодификаторыВозвратСигнатура
public int getBlockpublic int getBlock()
public int getFluidpublic int getFluid()
public int getMaxpublic int getMax(int var1, int var2, int var3)
public IDoubleCoordinateSupplier getMaxpublic IDoubleCoordinateSupplier getMax()
public int getMinpublic int getMin(int var1, int var2, int var3)
public IDoubleCoordinateSupplier getMinpublic IDoubleCoordinateSupplier getMin()
public boolean shouldPopulatepublic boolean shouldPopulate(int var1, int var2, int var3)
public String toStringpublic String toString()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.container;

class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import com.hypixel.hytale.procedurallib.condition.ICoordinateCondition;
class="kw">import com.hypixel.hytale.procedurallib.supplier.IDoubleCoordinateSupplier;
class="kw">import com.hypixel.hytale.server.worldgen.util.ListPool;
class="kw">import javax.annotation.Nonnull;

class="kw">public class WaterContainer {
   class="kw">public class="kw">static class="kw">final ListPool<WaterContainer.Entry> ENTRY_POOL = new ListPool<>(10, new WaterContainer.Entry[0]);
   class="kw">public class="kw">static class="kw">final int NO_WATER_AT_COORDINATED = Integer.MIN_VALUE;
   class="kw">private class="kw">final WaterContainer.Entry[] entries;

   class="kw">public class="kw">static boolean isValidWaterHeight(int var0) {
      class="kw">return var0 > 0;
   }

   class="kw">public WaterContainer(WaterContainer.Entry[] var1) {
      this.entries = var1;
   }

   class="kw">public boolean hasEntries() {
      class="kw">return this.entries.length != 0;
   }

   class="kw">public WaterContainer.Entry[] getEntries() {
      class="kw">return this.entries;
   }

   class="kw">public int getMaxHeight(int var1, int var2, int var3) {
      int var4 = Integer.MIN_VALUE;

      for (WaterContainer.Entry var8 : this.entries) {
         int var9 = var8.getMin(var1, var2, var3);
         int var10 = var8.getMax(var1, var2, var3);
         if (var9 <= var10 && var10 > var4) {
            var4 = var10;
         }
      }

      class="kw">return var4 < 0 ? Integer.MIN_VALUE : var4;
   }

   class="kw">public class="kw">static class Entry {
      class="kw">public class="kw">static class="kw">final WaterContainer.Entry[] EMPTY_ARRAY = new WaterContainer.Entry[0];
      class="kw">private class="kw">final int block;
      class="kw">private class="kw">final int fluid;
      class="kw">private class="kw">final IDoubleCoordinateSupplier min;
      class="kw">private class="kw">final IDoubleCoordinateSupplier max;
      class="kw">private class="kw">final ICoordinateCondition mask;

      class="kw">public Entry(int var1, int var2, IDoubleCoordinateSupplier var3, IDoubleCoordinateSupplier var4, ICoordinateCondition var5) {
         this.block = var1;
         this.fluid = var2;
         this.min = var3;
         this.max = var4;
         this.mask = var5;
      }

      class="kw">public int getBlock() {
         class="kw">return this.block;
      }

      class="kw">public int getFluid() {
         class="kw">return this.fluid;
      }

      class="kw">public int getMax(int var1, int var2, int var3) {
         class="kw">return MathUtil.floor(this.max.get(var1, var2, var3));
      }

      class="kw">public int getMin(int var1, int var2, int var3) {
         class="kw">return MathUtil.floor(this.min.get(var1, var2, var3));
      }

      class="kw">public boolean shouldPopulate(int var1, int var2, int var3) {
         class="kw">return this.mask.eval(var1, var2, var3);
      }

      class="kw">public IDoubleCoordinateSupplier getMax() {
         class="kw">return this.max;
      }

      class="kw">public IDoubleCoordinateSupplier getMin() {
         class="kw">return this.min;
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "Entry{fluid=" + this.fluid + ", min=" + this.min + ", max=" + this.max + ", mask=" + this.mask + "}";
      }
   }
}