VoidWorldGenProvider class
Пакет: com.hypixel.hytale.server.core.universe.world.worldgen.provider
Файл: com/hypixel/hytale/server/core/universe/world/worldgen/provider/VoidWorldGenProvider.java
implements: IWorldGenProvider
Поля (10)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
String |
ID |
|
private final int |
environmentId |
|
private final int |
tintId |
|
int |
var1 |
|
String |
var2 |
|
int |
var3 |
|
int |
var3 |
|
String |
var4 |
|
int |
var5 |
|
GeneratedBlockChunk |
var8 |
Методы (13)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public |
VoidWorldGenpublic VoidWorldGen() |
|
public |
VoidWorldGenpublic VoidWorldGen(@Nullable Color var1, @Nullable String var2) |
|
public |
VoidWorldGenpublic VoidWorldGen(int var1, int var2) |
abstract |
throw new |
WorldGenLoadExceptionthrow new WorldGenLoadException("Unknown key! " + var2) |
abstract |
throw new |
WorldGenLoadExceptionthrow new WorldGenLoadException("Unknown key! " + var4) |
|
|
for for(int var9 = 0; var9 < 32; var9++) |
|
|
for for(int var10 = 0; var10 < 32; var10++) |
|
public CompletableFuture<GeneratedChunk> |
generatepublic CompletableFuture<GeneratedChunk> generate(int var1, long var2, int var4, int var5, LongPredicate var6, Long2FloatFunction var7) |
|
public Transform[] |
getSpawnPointspublic Transform[] getSpawnPoints(int var1) |
|
public WorldGenTimingsCollector |
getTimingspublic WorldGenTimingsCollector getTimings() |
|
|
if if(var3 == Integer.MIN_VALUE) |
|
|
if if(var5 == Integer.MIN_VALUE) |
|
|
if if(this.environmentId != 0) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.universe.world.worldgen.provider;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.math.vector.Transform;
class="kw">import com.hypixel.hytale.protocol.Color;
class="kw">import com.hypixel.hytale.server.core.asset.type.environment.config.Environment;
class="kw">import com.hypixel.hytale.server.core.asset.util.ColorParseUtil;
class="kw">import com.hypixel.hytale.server.core.codec.ProtocolCodecs;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.GeneratedBlockChunk;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.GeneratedChunk;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.GeneratedEntityChunk;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.IWorldGen;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.WorldGenLoadException;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldgen.WorldGenTimingsCollector;
class="kw">import it.unimi.dsi.fastutil.longs.Long2FloatFunction;
class="kw">import java.util.concurrent.CompletableFuture;
class="kw">import java.util.function.LongPredicate;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class VoidWorldGenProvider class="kw">implements IWorldGenProvider {
class="kw">public class="kw">static class="kw">final String ID = "Void";
class="kw">public class="kw">static class="kw">final BuilderCodec<VoidWorldGenProvider> CODEC = BuilderCodec.<VoidWorldGenProvider>builder(
VoidWorldGenProvider.class, VoidWorldGenProvider::new
)
.documentation("A world generation provider that does not generate any blocks.")
.<Color>append(new KeyedCodec<>("Tint", ProtocolCodecs.COLOR), (var0, var1) -> var0.tint = var1, var0 -> var0.tint)
.documentation("The tint to set for all chunks that are generated.")
.add()
.<String>append(new KeyedCodec<>("Environment", Codec.STRING), (var0, var1) -> var0.environment = var1, var0 -> var0.environment)
.documentation("The environment to set for every column in generated chunks.")
.addValidator(Environment.VALIDATOR_CACHE.getValidator())
.add()
.build();
class="kw">private Color tint;
class="kw">private String environment;
class="kw">public VoidWorldGenProvider() {
}
class="kw">public VoidWorldGenProvider(Color var1, String var2) {
this.tint = var1;
this.environment = var2;
}
@Nonnull
@Override
class="kw">public IWorldGen getGenerator() class="kw">throws WorldGenLoadException {
int var1 = this.tint == null ? 0 : ColorParseUtil.colorToARGBInt(this.tint);
String var2 = this.environment != null ? this.environment : "Default";
int var3 = Environment.getAssetMap().getIndex(var2);
if (var3 == Integer.MIN_VALUE) {
throw new WorldGenLoadException("Unknown key! " + var2);
} else {
class="kw">return new VoidWorldGenProvider.VoidWorldGen(var1, var3);
}
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "VoidWorldGenProvider{environment='" + this.environment + "'}";
}
class="kw">public class="kw">static class VoidWorldGen class="kw">implements IWorldGen {
class="kw">private class="kw">final int tintId;
class="kw">private class="kw">final int environmentId;
class="kw">public VoidWorldGen() {
this.tintId = 0;
this.environmentId = 0;
}
class="kw">public VoidWorldGen(@Nullable Color var1, @Nullable String var2) class="kw">throws WorldGenLoadException {
int var3 = var1 == null ? 0 : ColorParseUtil.colorToARGBInt(var1);
this.tintId = var3;
String var4 = var2 != null ? var2 : "Default";
int var5 = Environment.getAssetMap().getIndex(var4);
if (var5 == Integer.MIN_VALUE) {
throw new WorldGenLoadException("Unknown key! " + var4);
}
this.environmentId = var5;
}
class="kw">public VoidWorldGen(int var1, int var2) {
this.tintId = var1;
this.environmentId = var2;
}
@Nullable
@Override
class="kw">public WorldGenTimingsCollector getTimings() {
class="kw">return null;
}
@Nonnull
@Override
class="kw">public Transform[] getSpawnPoints(int var1) {
class="kw">return new Transform[]{new Transform(0.0, 1.0, 0.0)};
}
@Nonnull
@Override
class="kw">public CompletableFuture<GeneratedChunk> generate(int var1, long var2, int var4, int var5, LongPredicate var6, Long2FloatFunction var7) {
GeneratedBlockChunk var8 = new GeneratedBlockChunk(var2, var4, var5);
for (int var9 = 0; var9 < 32; var9++) {
for (int var10 = 0; var10 < 32; var10++) {
if (this.environmentId != 0) {
var8.setEnvironmentColumn(var9, var10, this.environmentId);
}
var8.setTint(var9, var10, this.tintId);
}
}
class="kw">return CompletableFuture.completedFuture(new GeneratedChunk(var8, new GeneratedEntityChunk(), GeneratedChunk.makeSections()));
}
}
}