CellBorderDistanceFunctionJsonLoader class

Пакет: com.hypixel.hytale.procedurallib.json

Файл: com/hypixel/hytale/procedurallib/json/CellBorderDistanceFunctionJsonLoader.java

extends: JsonLoader<K, BorderDistanceFunction>

Поля (1)

МодификаторыТипИмя
final CellDistanceFunction distanceFunction

Методы (1)

МодификаторыВозвратСигнатура
abstract super super(var1, var2, var3)

Исходный код

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

class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.procedurallib.condition.IDoubleCondition;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.BorderDistanceFunction;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.CellDistanceFunction;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.MeasurementMode;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.evaluator.PointEvaluator;
class="kw">import java.nio.file.Path;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class CellBorderDistanceFunctionJsonLoader<K class="kw">extends SeedResource> class="kw">extends JsonLoader<K, BorderDistanceFunction> {
   class="kw">protected class="kw">final CellDistanceFunction distanceFunction;

   class="kw">public CellBorderDistanceFunctionJsonLoader(SeedString<K> var1, Path var2, JsonElement var3, CellDistanceFunction var4) {
      super(var1, var2, var3);
      this.distanceFunction = var4;
   }

   @Nonnull
   class="kw">public BorderDistanceFunction load() {
      class="kw">return new BorderDistanceFunction(this.distanceFunction, this.loadPointEvaluator(), this.loadDensity());
   }

   @Nullable
   class="kw">protected PointEvaluator loadPointEvaluator() {
      class="kw">return new PointEvaluatorJsonLoader<>(this.seed, this.dataFolder, this.json, MeasurementMode.BORDER_DISTANCE, null).load();
   }

   @Nullable
   class="kw">protected IDoubleCondition loadDensity() {
      class="kw">return new PointEvaluatorJsonLoader<>(this.seed, this.dataFolder, this.json).loadDensity();
   }
}