TintContainer class

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

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

Поля (4)

МодификаторыТипИмя
final ListPool<TintContainer.TintContainerEntry> ENTRY_POOL
private final IWeightedMap<Integer> colorMapping
private final ICoordinateCondition mapCondition
private final NoiseProperty valueNoise

Методы (9)

МодификаторыВозвратСигнатура
public DefaultTintContainerEntrypublic DefaultTintContainerEntry(IWeightedMap<Integer> var1, NoiseProperty var2)
public TintContainerEntrypublic TintContainerEntry(IWeightedMap<Integer> var1, NoiseProperty var2, ICoordinateCondition var3)
abstract for for(int var4 = 0; var4 < this.entries.size()
public int getTintColorAtint getTintColorAt(int var1, int var2, int var3)
public int getTintColorAtpublic int getTintColorAt(int var1, int var2, int var3)
public boolean shouldGeneratepublic boolean shouldGenerate(int var1, int var2, int var3)
abstract super super(var1, var2, DefaultCoordinateCondition.DEFAULT_TRUE)
public String toStringpublic String toString()
public String toStringpublic String toString()

Исходный код

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

class="kw">import com.hypixel.hytale.common.map.IWeightedMap;
class="kw">import com.hypixel.hytale.procedurallib.condition.DefaultCoordinateCondition;
class="kw">import com.hypixel.hytale.procedurallib.condition.ICoordinateCondition;
class="kw">import com.hypixel.hytale.procedurallib.property.NoiseProperty;
class="kw">import com.hypixel.hytale.server.worldgen.util.ListPool;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;

class="kw">public class TintContainer {
   class="kw">public class="kw">static class="kw">final ListPool<TintContainer.TintContainerEntry> ENTRY_POOL = new ListPool<>(10, new TintContainer.TintContainerEntry[0]);
   class="kw">private class="kw">final TintContainer.DefaultTintContainerEntry defaultEntry;
   class="kw">private class="kw">final List<TintContainer.TintContainerEntry> entries;

   class="kw">public TintContainer(TintContainer.DefaultTintContainerEntry var1, List<TintContainer.TintContainerEntry> var2) {
      this.defaultEntry = var1;
      this.entries = var2;
   }

   class="kw">public int getTintColorAt(int var1, int var2, int var3) {
      for (int var4 = 0; var4 < this.entries.size(); var4++) {
         if (this.entries.get(var4).shouldGenerate(var1, var2, var3)) {
            class="kw">return this.entries.get(var4).getTintColorAt(var1, var2, var3);
         }
      }

      class="kw">return this.defaultEntry.getTintColorAt(var1, var2, var3);
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "TintContainer{defaultEntry=" + this.defaultEntry + ", entries=" + this.entries + "}";
   }

   class="kw">public class="kw">static class DefaultTintContainerEntry class="kw">extends TintContainer.TintContainerEntry {
      class="kw">public DefaultTintContainerEntry(IWeightedMap<Integer> var1, NoiseProperty var2) {
         super(var1, var2, DefaultCoordinateCondition.DEFAULT_TRUE);
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "DefaultTintContainerEntry{}";
      }
   }

   class="kw">public class="kw">static class TintContainerEntry {
      class="kw">private class="kw">final IWeightedMap<Integer> colorMapping;
      class="kw">private class="kw">final NoiseProperty valueNoise;
      class="kw">private class="kw">final ICoordinateCondition mapCondition;

      class="kw">public TintContainerEntry(IWeightedMap<Integer> var1, NoiseProperty var2, ICoordinateCondition var3) {
         this.colorMapping = var1;
         this.valueNoise = var2;
         this.mapCondition = var3;
      }

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

      class="kw">public int getTintColorAt(int var1, int var2, int var3) {
         class="kw">return this.colorMapping.get(var1, var2, var3, (var0, var1x, var2x, var3x) -> var3x.valueNoise.get(var0, var1x, var2x), this);
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "TintContainerEntry{colorMapping=" + this.colorMapping + ", valueNoise=" + this.valueNoise + ", mapCondition=" + this.mapCondition + "}";
      }
   }
}