SeedStringResource class
Пакет: com.hypixel.hytale.server.worldgen
Файл: com/hypixel/hytale/server/worldgen/SeedStringResource.java
implements: SeedResource
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
void |
setPrefabConfigvoid setPrefabConfig(@Nonnull WorldGenConfig var1, @Nonnull PrefabStoreRoot var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen;
class="kw">import com.hypixel.hytale.procedurallib.condition.IIntCondition;
class="kw">import com.hypixel.hytale.procedurallib.json.SeedResource;
class="kw">import com.hypixel.hytale.procedurallib.logic.ResultBuffer;
class="kw">import com.hypixel.hytale.server.worldgen.chunk.ChunkGenerator;
class="kw">import com.hypixel.hytale.server.worldgen.loader.WorldGenPrefabLoader;
class="kw">import com.hypixel.hytale.server.worldgen.loader.prefab.BlockPlacementMaskRegistry;
class="kw">import com.hypixel.hytale.server.worldgen.loader.util.FileMaskCache;
class="kw">import com.hypixel.hytale.server.worldgen.prefab.PrefabStoreRoot;
class="kw">import com.hypixel.hytale.server.worldgen.util.LogUtil;
class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
class="kw">import java.util.Map;
class="kw">import java.util.concurrent.atomic.AtomicInteger;
class="kw">import java.util.logging.Level;
class="kw">import javax.annotation.Nonnull;
class="kw">public class SeedStringResource class="kw">implements SeedResource {
@Nonnull
class="kw">protected class="kw">final FileMaskCache<IIntCondition> biomeMaskRegistry;
@Nonnull
class="kw">protected class="kw">final BlockPlacementMaskRegistry blockMaskRegistry;
@Nonnull
class="kw">protected WorldGenConfig config;
@Nonnull
class="kw">protected WorldGenPrefabLoader loader;
@Nonnull
class="kw">protected class="kw">final Map<String, AtomicInteger> uniqueIds;
class="kw">public SeedStringResource(@Nonnull PrefabStoreRoot var1, @Nonnull WorldGenConfig var2) {
this.config = var2;
this.loader = new WorldGenPrefabLoader(var1, var2);
this.biomeMaskRegistry = new FileMaskCache<>();
this.blockMaskRegistry = new BlockPlacementMaskRegistry();
this.uniqueIds = new Object2ObjectOpenHashMap();
}
@Nonnull
class="kw">public String getUniqueName(@Nonnull String var1) {
class="kw">return var1 + this.uniqueIds.computeIfAbsent(var1, var0 -> new AtomicInteger(0)).getAndIncrement();
}
@Nonnull
class="kw">public WorldGenPrefabLoader getLoader() {
class="kw">return this.loader;
}
class="kw">public void setPrefabConfig(@Nonnull WorldGenConfig var1, @Nonnull PrefabStoreRoot var2) {
if (!var1.equals(this.config) || var2 != this.loader.getStore()) {
LogUtil.getLogger().at(Level.INFO).log("Set prefab-loader config: path=%s, store=%s", var1.path(), var2.name());
this.config = var1;
this.loader = new WorldGenPrefabLoader(var2, var1);
}
}
@Nonnull
@Override
class="kw">public ResultBuffer.Bounds2d localBounds2d() {
class="kw">return ChunkGenerator.getResource().bounds2d;
}
@Nonnull
@Override
class="kw">public ResultBuffer.ResultBuffer2d localBuffer2d() {
class="kw">return ChunkGenerator.getResource().resultBuffer2d;
}
@Nonnull
@Override
class="kw">public ResultBuffer.ResultBuffer3d localBuffer3d() {
class="kw">return ChunkGenerator.getResource().resultBuffer3d;
}
@Override
class="kw">public void writeSeedReport(String var1) {
LogUtil.getLogger().at(Level.FINE).log("%s", var1);
}
@Nonnull
class="kw">public FileMaskCache<IIntCondition> getBiomeMaskRegistry() {
class="kw">return this.biomeMaskRegistry;
}
@Nonnull
class="kw">public BlockPlacementMaskRegistry getBlockMaskRegistry() {
class="kw">return this.blockMaskRegistry;
}
}