ClimateType class

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

Файл: com/hypixel/hytale/server/worldgen/climate/ClimateType.java

Поля (3)

МодификаторыТипИмя
final ClimateType[] EMPTY_ARRAY
int var2
ClimateType var3

Методы (12)

МодификаторыВозвратСигнатура
static int colorint color(int var0, @Nonnull ClimateGraph var1)
for for(ClimateType var5 : var0)
for for(ClimateType var6 : var0.children)
if if(var2 < 10)
static String nameString name(@Nullable ClimateType var0, @Nonnull ClimateType var1)
return switchreturn switch(var2)
static void walkvoid walk(ClimateType var0, Consumer<ClimateType> var1)
static void walkvoid walk(ClimateType[] var0, Consumer<ClimateType> var1)
static void walkRecursivevoid walkRecursive(ClimateType var0, Consumer<ClimateType> var1, int var2)
abstract walkRecursive walkRecursive(var0, var1, 0)
abstract walkRecursive walkRecursive(var5, var1, 0)
abstract walkRecursive walkRecursive(var6, var1, var2 + 1)

Исходный код

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

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

class="kw">public class ClimateType {
   class="kw">public class="kw">static class="kw">final ClimateType[] EMPTY_ARRAY = new ClimateType[0];
   class="kw">private class="kw">static class="kw">final int MAX_DEPTH = 10;
   class="kw">public class="kw">static class="kw">final int IS_ISLAND = 536870912;
   class="kw">public class="kw">static class="kw">final int IS_SHORE = 1073741824;
   class="kw">public class="kw">static class="kw">final int IS_OCEAN = Integer.MIN_VALUE;
   class="kw">public class="kw">static class="kw">final int IS_MAINLAND = 0;
   class="kw">public class="kw">static class="kw">final int IS_MAINLAND_SHORE = 1073741824;
   class="kw">public class="kw">static class="kw">final int IS_MAINLAND_SHALLOW_OCEAN = -1073741824;
   class="kw">public class="kw">static class="kw">final int IS_ISLAND_SHORE = 1610612736;
   class="kw">public class="kw">static class="kw">final int IS_ISLAND_SHALLOW_OCEAN = -536870912;
   class="kw">public class="kw">static class="kw">final int MASK = 536870911;
   @Nonnull
   class="kw">public class="kw">final String name;
   @Nonnull
   class="kw">public class="kw">final ClimateColor color;
   @Nonnull
   class="kw">public class="kw">final ClimateColor island;
   @Nonnull
   class="kw">public class="kw">final ClimatePoint[] points;
   @Nonnull
   class="kw">public class="kw">final ClimateType[] children;

   class="kw">public ClimateType(@Nonnull String var1, @Nonnull ClimateColor var2, @Nonnull ClimateColor var3, @Nonnull ClimatePoint[] var4, @Nonnull ClimateType[] var5) {
      this.name = var1;
      this.color = var2;
      this.island = var3;
      this.points = var4;
      this.children = var5;
   }

   @Override
   class="kw">public String toString() {
      class="kw">return this.name;
   }

   class="kw">public class="kw">static String name(@Nullable ClimateType var0, @Nonnull ClimateType var1) {
      class="kw">return var0 != null && var0 != var1 ? var0.name + " / " + var1.name : var1.name;
   }

   class="kw">public class="kw">static void walk(ClimateType var0, Consumer<ClimateType> var1) {
      walkRecursive(var0, var1, 0);
   }

   class="kw">public class="kw">static void walk(ClimateType[] var0, Consumer<ClimateType> var1) {
      for (ClimateType var5 : var0) {
         walkRecursive(var5, var1, 0);
      }
   }

   class="kw">public class="kw">static int color(int var0, @Nonnull ClimateGraph var1) {
      int var2 = var0 & -536870912;
      ClimateType var3 = var1.getType(var0 & 536870911);

      class="kw">return class="kw">switch (var2) {
         case Integer.MIN_VALUE -> var3.color.ocean;
         case -1073741824 -> var3.color.shallowOcean;
         case -536870912 -> var3.island.shallowOcean;
         case 536870912 -> var3.island.land;
         case 1073741824 -> var3.color.shore;
         case 1610612736 -> var3.island.shore;
         class="kw">default -> var3.color.land;
      };
   }

   class="kw">private class="kw">static void walkRecursive(ClimateType var0, Consumer<ClimateType> var1, int var2) {
      if (var2 < 10) {
         var1.accept(var0);

         for (ClimateType var6 : var0.children) {
            walkRecursive(var6, var1, var2 + 1);
         }
      }
   }
}