Code/net/minecraft/world/level/dimension/LevelStem.java

23 lines
1.3 KiB
Java

package net.minecraft.world.level.dimension;
import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder;
import com.mojang.serialization.codecs.RecordCodecBuilder.Instance;
import net.minecraft.core.Holder;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.chunk.ChunkGenerator;
public record LevelStem(Holder<DimensionType> type, ChunkGenerator generator) {
public static final Codec<LevelStem> CODEC = RecordCodecBuilder.create(
p_63986_ -> p_63986_.group(
DimensionType.CODEC.fieldOf("type").forGetter(LevelStem::type),
ChunkGenerator.CODEC.fieldOf("generator").forGetter(LevelStem::generator)
)
.apply(p_63986_, p_63986_.stable(LevelStem::new))
);
public static final ResourceKey<LevelStem> OVERWORLD = ResourceKey.create(Registries.LEVEL_STEM, ResourceLocation.withDefaultNamespace("overworld"));
public static final ResourceKey<LevelStem> NETHER = ResourceKey.create(Registries.LEVEL_STEM, ResourceLocation.withDefaultNamespace("the_nether"));
public static final ResourceKey<LevelStem> END = ResourceKey.create(Registries.LEVEL_STEM, ResourceLocation.withDefaultNamespace("the_end"));
}