PrefabPatternGenerator class
Пакет: com.hypixel.hytale.server.worldgen.prefab
Файл: com/hypixel/hytale/server/worldgen/prefab/PrefabPatternGenerator.java
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
int |
seedOffset |
Методы (15)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
PrefabCategory |
getCategoryPrefabCategory getCategory() |
public |
int |
getDisplacementint getDisplacement(int var1, int var2, int var3) |
public |
int |
getExclusionRadiusint getExclusionRadius() |
public |
IPointGenerator |
getGridGeneratorIPointGenerator getGridGenerator() |
public |
ICoordinateRndCondition |
getHeightConditionICoordinateRndCondition getHeightCondition() |
public |
IHeightThresholdInterpreter |
getHeightThresholdInterpreterIHeightThresholdInterpreter getHeightThresholdInterpreter() |
public |
ICoordinateCondition |
getMapConditionICoordinateCondition getMapCondition() |
public |
int |
getMaxSizeint getMaxSize() |
public |
IBlockFluidCondition |
getParentConditionIBlockFluidCondition getParentCondition() |
public |
BlockMaskCondition |
getPrefabPlacementConfigurationBlockMaskCondition getPrefabPlacementConfiguration() |
public |
PrefabRotation[] |
getRotationsPrefabRotation[] getRotations() |
public |
boolean |
isDeepSearchboolean isDeepSearch() |
public |
boolean |
isFitHeightmapboolean isFitHeightmap() |
public |
boolean |
isOnWaterboolean isOnWater() |
public |
boolean |
isSubmergeboolean isSubmerge() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.prefab;
class="kw">import com.hypixel.hytale.math.util.MathUtil;
class="kw">import com.hypixel.hytale.procedurallib.condition.IBlockFluidCondition;
class="kw">import com.hypixel.hytale.procedurallib.condition.ICoordinateCondition;
class="kw">import com.hypixel.hytale.procedurallib.condition.ICoordinateRndCondition;
class="kw">import com.hypixel.hytale.procedurallib.condition.IHeightThresholdInterpreter;
class="kw">import com.hypixel.hytale.procedurallib.logic.point.IPointGenerator;
class="kw">import com.hypixel.hytale.server.core.prefab.PrefabRotation;
class="kw">import com.hypixel.hytale.server.worldgen.util.condition.BlockMaskCondition;
class="kw">import com.hypixel.hytale.server.worldgen.util.function.ICoordinateDoubleSupplier;
class="kw">import java.util.Arrays;
class="kw">import java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">public class PrefabPatternGenerator {
class="kw">protected class="kw">final int seedOffset;
class="kw">protected class="kw">final PrefabCategory category;
class="kw">protected class="kw">final IPointGenerator gridGenerator;
class="kw">protected class="kw">final ICoordinateRndCondition heightCondition;
class="kw">protected class="kw">final IHeightThresholdInterpreter heightThresholdInterpreter;
class="kw">protected class="kw">final BlockMaskCondition prefabPlacementConfiguration;
class="kw">protected class="kw">final ICoordinateCondition mapCondition;
class="kw">protected class="kw">final IBlockFluidCondition parentCondition;
class="kw">protected class="kw">final PrefabRotation[] rotations;
class="kw">protected class="kw">final ICoordinateDoubleSupplier displacement;
class="kw">protected class="kw">final boolean fitHeightmap;
class="kw">protected class="kw">final boolean onWater;
class="kw">protected class="kw">final boolean deepSearch;
class="kw">protected class="kw">final boolean submerge;
class="kw">protected class="kw">final int maxSize;
class="kw">protected class="kw">final int exclusionRadius;
@Nonnull
class="kw">protected class="kw">final PrefabBaseCheck[] baseChecks;
class="kw">public PrefabPatternGenerator(
int var1,
PrefabCategory var2,
IPointGenerator var3,
ICoordinateRndCondition var4,
IHeightThresholdInterpreter var5,
BlockMaskCondition var6,
ICoordinateCondition var7,
IBlockFluidCondition var8,
PrefabRotation[] var9,
ICoordinateDoubleSupplier var10,
boolean var11,
boolean var12,
boolean var13,
boolean var14,
int var15,
int var16,
PrefabBaseCheck[] var17
) {
this.seedOffset = var1;
this.category = var2;
this.gridGenerator = var3;
this.heightCondition = var4;
this.heightThresholdInterpreter = var5;
this.prefabPlacementConfiguration = var6;
this.mapCondition = var7;
this.parentCondition = var8;
this.rotations = var9;
this.displacement = var10;
this.fitHeightmap = var11;
this.onWater = var12;
this.deepSearch = var13;
this.submerge = var14;
this.maxSize = var15;
this.exclusionRadius = var16;
this.baseChecks = Objects.requireNonNullElse(var17, PrefabBaseCheck.EMPTY_ARRAY);
}
class="kw">public PrefabCategory getCategory() {
class="kw">return this.category;
}
class="kw">public IPointGenerator getGridGenerator() {
class="kw">return this.gridGenerator;
}
class="kw">public ICoordinateCondition getMapCondition() {
class="kw">return this.mapCondition;
}
class="kw">public BlockMaskCondition getPrefabPlacementConfiguration() {
class="kw">return this.prefabPlacementConfiguration;
}
class="kw">public boolean isFitHeightmap() {
class="kw">return this.fitHeightmap;
}
class="kw">public IBlockFluidCondition getParentCondition() {
class="kw">return this.parentCondition;
}
class="kw">public ICoordinateRndCondition getHeightCondition() {
class="kw">return this.heightCondition;
}
class="kw">public IHeightThresholdInterpreter getHeightThresholdInterpreter() {
class="kw">return this.heightThresholdInterpreter;
}
class="kw">public PrefabRotation[] getRotations() {
class="kw">return this.rotations;
}
class="kw">public int getDisplacement(int var1, int var2, int var3) {
class="kw">return MathUtil.floor(this.displacement.apply(var1 + this.seedOffset, var2, var3));
}
class="kw">public boolean isOnWater() {
class="kw">return this.onWater;
}
class="kw">public boolean isDeepSearch() {
class="kw">return this.deepSearch;
}
class="kw">public boolean isSubmerge() {
class="kw">return this.submerge;
}
class="kw">public int getMaxSize() {
class="kw">return this.maxSize;
}
class="kw">public int getExclusionRadius() {
class="kw">return this.exclusionRadius;
}
@Nonnull
class="kw">public PrefabBaseCheck[] getBaseChecks() {
class="kw">return this.baseChecks;
}
@Override
class="kw">public String toString() {
class="kw">return "PrefabPatternGenerator{seedOffset="
+ this.seedOffset
+ ", category="
+ this.category
+ ", gridGenerator="
+ this.gridGenerator
+ ", heightCondition="
+ this.heightCondition
+ ", heightThresholdInterpreter="
+ this.heightThresholdInterpreter
+ ", prefabPlacementConfiguration="
+ this.prefabPlacementConfiguration
+ ", mapCondition="
+ this.mapCondition
+ ", parentCondition="
+ this.parentCondition
+ ", rotations="
+ Arrays.toString(this.rotations)
+ ", displacement="
+ this.displacement
+ ", fitHeightmap="
+ this.fitHeightmap
+ ", onWater="
+ this.onWater
+ ", deepSearch="
+ this.deepSearch
+ ", submerge="
+ this.submerge
+ ", maxSize="
+ this.maxSize
+ ", exclusionRadius="
+ this.exclusionRadius
+ ", baseChecks="
+ Arrays.toString(this.baseChecks)
+ "}";
}
}