ClimateGridJsonLoader class
Пакет: com.hypixel.hytale.server.worldgen.loader.climate
Файл: com/hypixel/hytale/server/worldgen/loader/climate/ClimateGridJsonLoader.java
extends: JsonLoader<K, ClimateNoise.Grid>
Поля (12)
| Модификаторы | Тип | Имя |
|---|---|---|
|
ClimateNoise.Grid |
DEFAULT_GRID |
|
Double |
DEFAULT_JITTER |
|
Double |
DEFAULT_SCALE |
|
String |
KEY_JITTER |
|
String |
KEY_SCALE |
|
String |
KEY_SEED |
|
int |
var1 |
|
|
var1 |
|
PointEvaluator |
var1 |
|
SeedString |
var2 |
|
double |
var2 |
|
ConstantCellJitter |
var4 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
return new |
JitterPointEvaluatorreturn new JitterPointEvaluator(var1, var4) |
protected |
PointEvaluator |
loadEvaluatorPointEvaluator loadEvaluator() |
protected |
double |
loadScaledouble loadScale() |
protected |
int |
loadSeedint loadSeed() |
abstract |
|
super super(var1, var2, var3) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.loader.climate;
class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.procedurallib.json.JsonLoader;
class="kw">import com.hypixel.hytale.procedurallib.json.SeedResource;
class="kw">import com.hypixel.hytale.procedurallib.json.SeedString;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.GridCellDistanceFunction;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.evaluator.JitterPointEvaluator;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.evaluator.NormalPointEvaluator;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.evaluator.PointEvaluator;
class="kw">import com.hypixel.hytale.procedurallib.logic.cell.jitter.ConstantCellJitter;
class="kw">import com.hypixel.hytale.server.worldgen.climate.ClimateNoise;
class="kw">import com.hypixel.hytale.server.worldgen.climate.DirectGrid;
class="kw">import java.nio.file.Path;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ClimateGridJsonLoader<K class="kw">extends SeedResource> class="kw">extends JsonLoader<K, ClimateNoise.Grid> {
class="kw">public ClimateGridJsonLoader(SeedString<K> var1, Path var2, @Nullable JsonElement var3) {
super(var1, var2, var3);
}
@Nonnull
class="kw">public ClimateNoise.Grid load() {
class="kw">return this.json == null
? ClimateGridJsonLoader.Constants.DEFAULT_GRID
: new ClimateNoise.Grid(this.loadSeed(), this.loadScale(), GridCellDistanceFunction.DISTANCE_FUNCTION, this.loadEvaluator());
}
class="kw">protected int loadSeed() {
int var1 = this.seed.hashCode();
if (this.has("Seed")) {
SeedString var2 = this.seed.appendToOriginal(this.get("Seed").getAsString());
var1 = var2.hashCode();
}
class="kw">return var1;
}
class="kw">protected double loadScale() {
class="kw">return this.mustGetNumber("Scale", ClimateGridJsonLoader.Constants.DEFAULT_SCALE).doubleValue();
}
class="kw">protected PointEvaluator loadEvaluator() {
PointEvaluator var1 = NormalPointEvaluator.EUCLIDEAN;
double var2 = this.mustGetNumber("Jitter", ClimateGridJsonLoader.Constants.DEFAULT_JITTER).doubleValue();
ConstantCellJitter var4 = new ConstantCellJitter(var2, var2, var2);
class="kw">return new JitterPointEvaluator(var1, var4);
}
class="kw">public class="kw">interface Constants {
String KEY_SEED = "Seed";
String KEY_SCALE = "Scale";
String KEY_JITTER = "Jitter";
Double DEFAULT_SCALE = 1.0;
Double DEFAULT_JITTER = 0.8;
ClimateNoise.Grid DEFAULT_GRID = new ClimateNoise.Grid(0, 1.0, DirectGrid.INSTANCE, NormalPointEvaluator.EUCLIDEAN);
}
}