SpiralSearchUtil class

Пакет: com.hypixel.hytale.builtin.locate

Файл: com/hypixel/hytale/builtin/locate/SpiralSearchUtil.java

Поля (8)

МодификаторыТипИмя
long var10
int var12
int var13
ZoneBiomeResult var14
int var6
int var7
int var8
SpiralIterator var9

Методы (1)

МодификаторыВозвратСигнатура
abstract return new Vector3ireturn new Vector3i(var12, 0, var13)

Исходный код

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

class="kw">import com.hypixel.hytale.math.iterator.SpiralIterator;
class="kw">import com.hypixel.hytale.math.util.ChunkUtil;
class="kw">import com.hypixel.hytale.server.worldgen.chunk.ChunkGenerator;
class="kw">import com.hypixel.hytale.server.worldgen.chunk.ZoneBiomeResult;
class="kw">import java.util.function.Predicate;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.joml.Vector3i;

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

   @Nullable
   class="kw">public class="kw">static Vector3i search(@Nonnull ChunkGenerator var0, int var1, int var2, int var3, int var4, @Nonnull Predicate<ZoneBiomeResult> var5) {
      int var6 = Math.floorDiv(var2, 32);
      int var7 = Math.floorDiv(var3, 32);
      int var8 = var4 / 32;
      SpiralIterator var9 = new SpiralIterator(var6, var7, var8);

      while (var9.hasNext()) {
         long var10 = var9.next();
         int var12 = ChunkUtil.xOfChunkIndex(var10) * 32;
         int var13 = ChunkUtil.zOfChunkIndex(var10) * 32;
         ZoneBiomeResult var14 = var0.getZoneBiomeResultAt(var1, var12, var13);
         if (var5.test(var14)) {
            class="kw">return new Vector3i(var12, 0, var13);
         }
      }

      class="kw">return null;
   }
}