From ec2f6a4409f6ef827ecbf5bc65b35e7abd675a36 Mon Sep 17 00:00:00 2001 From: liach Date: Tue, 17 Mar 2020 00:02:20 -0500 Subject: [PATCH] Update to 20w11a Well, there is still some minor issues with new options object and compile fails for a mysterious nullable Signed-off-by: liach --- FeatureManager-fabric | 2 +- TerraForgedAPI-fabric/build.gradle | 6 +++--- .../terraforged/api/chunk/ChunkContext.java | 2 +- TerraForgedMod-fabric/build.gradle | 6 +++--- .../com/terraforged/mod/biome/ColdSteppe.java | 3 ++- .../com/terraforged/mod/biome/Marshland.java | 3 ++- .../terraforged/mod/biome/SavannaScrub.java | 6 ++++-- .../mod/biome/ShatteredSavannaScrub.java | 6 ++++-- .../mod/biome/SnowyTaigaScrub.java | 4 +++- .../com/terraforged/mod/biome/Steppe.java | 4 +++- .../com/terraforged/mod/biome/TaigaScrub.java | 4 +++- .../com/terraforged/mod/biome/WarmBeach.java | 4 +++- .../mod/biome/map/GridBiomeMap.java | 2 +- .../mod/chunk/ObfHelperChunkGenerator.java | 5 +++-- .../mod/chunk/TerraChunkGenerator.java | 6 +++--- .../mod/chunk/fix/RegionDelegate.java | 7 +------ .../terraforged/mod/command/TerraCommand.java | 10 +++++----- .../mod/feature/TerrainHelper.java | 2 +- .../terraforged/mod/gui/OverlayScreen.java | 4 ++-- .../com/terraforged/mod/gui/ScrollPane.java | 2 +- .../terraforged/mod/gui/SettingsScreen.java | 9 +++++++-- .../mod/settings/SettingsHelper.java | 20 ++++++++++++------- gradle.properties | 5 +++-- 23 files changed, 72 insertions(+), 50 deletions(-) diff --git a/FeatureManager-fabric b/FeatureManager-fabric index 6e69595..8c38ce3 160000 --- a/FeatureManager-fabric +++ b/FeatureManager-fabric @@ -1 +1 @@ -Subproject commit 6e6959528b41fe1704eb1d301dbee923de6e4742 +Subproject commit 8c38ce3e65e1c7af602bf42a4a5b52c2d1c5340e diff --git a/TerraForgedAPI-fabric/build.gradle b/TerraForgedAPI-fabric/build.gradle index 368f655..0779adb 100644 --- a/TerraForgedAPI-fabric/build.gradle +++ b/TerraForgedAPI-fabric/build.gradle @@ -12,7 +12,7 @@ apply plugin: "fabric-loom" apply plugin: "maven-publish" apply plugin: "eclipse" -version = "${mc_version}-${mod_version}" +version = "${fabric_mc_version}-${mod_version}" archivesBaseName = "TerraForgedAPI-fabric" repositories { @@ -21,8 +21,8 @@ repositories { } dependencies { - minecraft "com.mojang:minecraft:${mc_version}" - mappings "net.fabricmc:yarn:${mc_version}+build.${yarn_build}:v2" + minecraft "com.mojang:minecraft:${fabric_mc_version}" + mappings "net.fabricmc:yarn:${fabric_mc_version}+build.${yarn_build}:v2" modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}" modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_api_version}" compile project(":Noise2D") diff --git a/TerraForgedAPI-fabric/src/main/java/com/terraforged/api/chunk/ChunkContext.java b/TerraForgedAPI-fabric/src/main/java/com/terraforged/api/chunk/ChunkContext.java index a1817e0..aad537f 100644 --- a/TerraForgedAPI-fabric/src/main/java/com/terraforged/api/chunk/ChunkContext.java +++ b/TerraForgedAPI-fabric/src/main/java/com/terraforged/api/chunk/ChunkContext.java @@ -43,6 +43,6 @@ public class ChunkContext { this.chunkZ = chunk.getPos().z; this.blockX = chunkX << 4; this.blockZ = chunkZ << 4; - this.random.setSeed(chunkX, chunkZ); + this.random.setTerrainSeed(chunkX, chunkZ); } } diff --git a/TerraForgedMod-fabric/build.gradle b/TerraForgedMod-fabric/build.gradle index 9f8720b..93e2774 100644 --- a/TerraForgedMod-fabric/build.gradle +++ b/TerraForgedMod-fabric/build.gradle @@ -12,7 +12,7 @@ apply plugin: "fabric-loom" apply plugin: "maven-publish" apply plugin: "eclipse" -version = "${mc_version}-${mod_version}${getClassifier()}" +version = "${fabric_mc_version}-${mod_version}${getClassifier()}" archivesBaseName = "TerraForged" repositories { @@ -21,8 +21,8 @@ repositories { } dependencies { - minecraft "com.mojang:minecraft:${mc_version}" - mappings "net.fabricmc:yarn:${mc_version}+build.${yarn_build}:v2" + minecraft "com.mojang:minecraft:${fabric_mc_version}" + mappings "net.fabricmc:yarn:${fabric_mc_version}+build.${yarn_build}:v2" modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}" modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_api_version}" compile project(":Noise2D") diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ColdSteppe.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ColdSteppe.java index 7645ea9..642fb21 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ColdSteppe.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ColdSteppe.java @@ -31,6 +31,7 @@ import net.minecraft.entity.EntityType; import net.minecraft.util.math.BlockPos; import net.minecraft.world.WorldView; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.gen.surfacebuilder.SurfaceBuilder; @@ -40,7 +41,7 @@ public class ColdSteppe extends BiomeVariant { public ColdSteppe() { super((new Settings()).configureSurfaceBuilder(SurfaceBuilder.GIANT_TREE_TAIGA, SurfaceBuilder.GRASS_CONFIG) .precipitation(Precipitation.SNOW).category(Biome.Category.TAIGA).depth(0.2F).scale(0.25F).temperature(0.2F).downfall(0.1F) - .waterColor(4159204).waterFogColor(329011).parent(null)); + .effects(new BiomeEffects.Builder().waterColor(4159204).waterFogColor(329011).fogColor(12638463).build()).parent(null)); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); // DefaultBiomeFeatures.addLakes(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Marshland.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Marshland.java index f833842..c2ddacc 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Marshland.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Marshland.java @@ -29,6 +29,7 @@ import com.terraforged.api.biome.BiomeVariant; import net.minecraft.entity.EntityCategory; import net.minecraft.entity.EntityType; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.gen.GenerationStep; @@ -42,7 +43,7 @@ public class Marshland extends BiomeVariant { public Marshland() { super((new Settings()).configureSurfaceBuilder(SurfaceBuilder.SWAMP, SurfaceBuilder.GRASS_CONFIG).precipitation(Precipitation.RAIN) - .category(Category.SWAMP).depth(0.2F).scale(0.2F).temperature(0.8F).downfall(0.4F).waterColor(6388580).waterFogColor(2302743) + .category(Category.SWAMP).depth(0.2F).scale(0.2F).temperature(0.8F).downfall(0.4F).effects(new BiomeEffects.Builder().waterColor(6388580).waterFogColor(2302743).fogColor(12638463).build()) .parent(null)); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SavannaScrub.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SavannaScrub.java index 72cb96b..0196d8e 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SavannaScrub.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SavannaScrub.java @@ -33,6 +33,7 @@ import net.minecraft.entity.EntityType; import net.minecraft.util.math.BlockPos; import net.minecraft.world.Heightmap; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.chunk.Chunk; @@ -46,8 +47,9 @@ public class SavannaScrub extends BiomeVariant { public SavannaScrub() { super((new Settings()).configureSurfaceBuilder(new Builder(), SurfaceBuilder.GRASS_CONFIG).precipitation(Precipitation.NONE) - .category(Biome.Category.SAVANNA).depth(0.125F).scale(0.05F).temperature(1.2F).downfall(0.0F).waterColor(4159204) - .waterFogColor(329011).parent(null)); + .category(Biome.Category.SAVANNA).depth(0.125F).scale(0.05F).temperature(1.2F).downfall(0.0F) + .effects(new BiomeEffects.Builder().fogColor(12638463).waterColor(4159204).waterFogColor(329011).build()) + .parent(null)); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); // DefaultBiomeFeatures.addLakes(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ShatteredSavannaScrub.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ShatteredSavannaScrub.java index 915115c..6fc12b9 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ShatteredSavannaScrub.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/ShatteredSavannaScrub.java @@ -32,6 +32,7 @@ import net.minecraft.entity.EntityType; import net.minecraft.util.math.BlockPos; import net.minecraft.world.Heightmap; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.chunk.Chunk; @@ -45,8 +46,9 @@ public class ShatteredSavannaScrub extends BiomeVariant { public ShatteredSavannaScrub() { super((new Settings()).configureSurfaceBuilder(new Builder(), SurfaceBuilder.GRASS_CONFIG).precipitation(Precipitation.NONE) - .category(Biome.Category.SAVANNA).depth(0.3625F).scale(1.225F).temperature(1.1F).downfall(0.0F).waterColor(4159204) - .waterFogColor(329011).parent("terraforged:savanna_scrub")); + .category(Biome.Category.SAVANNA).depth(0.3625F).scale(1.225F).temperature(1.1F).downfall(0.0F) + .effects(new BiomeEffects.Builder().fogColor(12638463).waterColor(4159204).waterFogColor(329011).build()) + .parent("terraforged:savanna_scrub")); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); // DefaultBiomeFeatures.addLakes(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SnowyTaigaScrub.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SnowyTaigaScrub.java index de57b8b..534aa82 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SnowyTaigaScrub.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/SnowyTaigaScrub.java @@ -29,6 +29,7 @@ import com.terraforged.api.biome.BiomeVariant; import net.minecraft.entity.EntityCategory; import net.minecraft.entity.EntityType; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.gen.surfacebuilder.SurfaceBuilder; @@ -37,7 +38,8 @@ public class SnowyTaigaScrub extends BiomeVariant { public SnowyTaigaScrub() { super(new Settings().configureSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.GRASS_CONFIG).precipitation(Precipitation.SNOW) - .category(Category.TAIGA).depth(0.2F).scale(0.2F).temperature(-0.5F).downfall(0.4F).waterColor(4020182).waterFogColor(329011) + .category(Category.TAIGA).depth(0.2F).scale(0.2F).temperature(-0.5F).downfall(0.4F) + .effects(new BiomeEffects.Builder().fogColor(12638463).waterColor(4020182).waterFogColor(329011).build()) .parent(null)); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Steppe.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Steppe.java index 09fc59c..e5e1bb6 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Steppe.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/Steppe.java @@ -31,6 +31,7 @@ import net.minecraft.entity.EntityType; import net.minecraft.util.math.BlockPos; import net.minecraft.world.WorldView; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.gen.surfacebuilder.SurfaceBuilder; @@ -39,7 +40,8 @@ public class Steppe extends BiomeVariant { protected Steppe() { super((new Settings()).configureSurfaceBuilder(SurfaceBuilder.GIANT_TREE_TAIGA, SurfaceBuilder.GRASS_CONFIG).precipitation(Precipitation.SNOW) - .category(Category.SAVANNA).depth(0.2F).scale(0.2F).temperature(0.7F).downfall(0.1F).waterColor(4159204).waterFogColor(329011) + .category(Category.SAVANNA).depth(0.2F).scale(0.2F).temperature(0.7F).downfall(0.1F) + .effects(new BiomeEffects.Builder().fogColor(12638463).waterColor(4159204).waterFogColor(329011).build()) .parent(null)); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/TaigaScrub.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/TaigaScrub.java index cbcab24..57a5326 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/TaigaScrub.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/TaigaScrub.java @@ -29,6 +29,7 @@ import com.terraforged.api.biome.BiomeVariant; import net.minecraft.entity.EntityCategory; import net.minecraft.entity.EntityType; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.gen.surfacebuilder.SurfaceBuilder; @@ -37,7 +38,8 @@ public class TaigaScrub extends BiomeVariant { public TaigaScrub() { super((new Settings()).configureSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.GRASS_CONFIG).precipitation(Precipitation.RAIN) - .category(Category.TAIGA).depth(0.2F).scale(0.2F).temperature(0.25F).downfall(0.8F).waterColor(4159204).waterFogColor(329011) + .category(Category.TAIGA).depth(0.2F).scale(0.2F).temperature(0.25F).downfall(0.8F) + .effects(new BiomeEffects.Builder().fogColor(12638463).waterColor(4159204).waterFogColor(329011).build()) .parent(null)); DefaultBiomeFeatures.addLandCarvers(this); DefaultBiomeFeatures.addDefaultStructures(this); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/WarmBeach.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/WarmBeach.java index 46e5b00..232be72 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/WarmBeach.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/WarmBeach.java @@ -29,6 +29,7 @@ import com.terraforged.api.biome.BiomeVariant; import net.minecraft.entity.EntityCategory; import net.minecraft.entity.EntityType; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.BiomeEffects; import net.minecraft.world.biome.Biomes; import net.minecraft.world.biome.DefaultBiomeFeatures; import net.minecraft.world.gen.feature.BuriedTreasureFeatureConfig; @@ -41,7 +42,8 @@ public class WarmBeach extends BiomeVariant { public WarmBeach() { super((new Settings()).configureSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.SAND_CONFIG).precipitation(Precipitation.RAIN) - .category(Category.BEACH).depth(-0.5F).scale(0.1F).temperature(1.5F).downfall(0.5F).waterColor(4445678).waterFogColor(270131) + .category(Category.BEACH).depth(-0.5F).scale(0.1F).temperature(1.5F).downfall(0.5F) + .effects(new BiomeEffects.Builder().fogColor(12638463).waterColor(4445678).waterFogColor(270131).build()) .parent(null)); this.addStructureFeature(Feature.MINESHAFT.configure(new MineshaftFeatureConfig(0.004D, MineshaftFeature.Type.NORMAL))); this.addStructureFeature(Feature.BURIED_TREASURE.configure(new BuriedTreasureFeatureConfig(0.01F))); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/map/GridBiomeMap.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/map/GridBiomeMap.java index 7b245f2..218ddca 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/map/GridBiomeMap.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/biome/map/GridBiomeMap.java @@ -53,7 +53,7 @@ public class GridBiomeMap extends AbstractBiomeMap { public Biome getBiome(BiomeType type, float temperature, float moisture, float shape) { BiomeGroup group = biomeTypes[type.ordinal()]; if (group == null) { - return Biomes.NETHER; + return Biomes.NETHER_WASTES; } return group.biomes.get(moisture, temperature, shape); } diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/ObfHelperChunkGenerator.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/ObfHelperChunkGenerator.java index 2e30bcd..ba6b2fc 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/ObfHelperChunkGenerator.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/ObfHelperChunkGenerator.java @@ -47,6 +47,7 @@ import net.minecraft.world.gen.chunk.ChunkGeneratorConfig; import net.minecraft.world.gen.feature.Feature; import java.util.List; +import java.util.stream.IntStream; public abstract class ObfHelperChunkGenerator extends ChunkGenerator { @@ -59,7 +60,7 @@ public abstract class ObfHelperChunkGenerator ex public ObfHelperChunkGenerator(IWorld world, BiomeSource biomeSource, T settings) { super(world, biomeSource, settings); ChunkRandom random = new ChunkRandom(world.getSeed()); - this.surfaceNoise = new OctavePerlinNoiseSampler(random, 3, 0); + this.surfaceNoise = new OctavePerlinNoiseSampler(random, IntStream.rangeClosed(-3, 0)); } @Override @@ -98,7 +99,7 @@ public abstract class ObfHelperChunkGenerator ex int chunkZ = region.getCenterChunkZ(); Biome biome = region.getChunk(chunkX, chunkZ).getBiomeArray().getBiomeForNoiseGen(0, 0, 0); ChunkRandom random = new ChunkRandom(); - random.setSeed(region.getSeed(), chunkX << 4, chunkZ << 4); + random.setPopulationSeed(region.getSeed(), chunkX << 4, chunkZ << 4); SpawnHelper.populateEntities(region, biome, chunkX, chunkZ, random); } diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/TerraChunkGenerator.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/TerraChunkGenerator.java index f1ab0e0..f4018c0 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/TerraChunkGenerator.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/chunk/TerraChunkGenerator.java @@ -124,7 +124,7 @@ public class TerraChunkGenerator extends ObfHelperChunkGenerator cell = biomeProvider.lookupPos(pos.getX(), pos.getZ()); Biome biome = biomeProvider.getBiome(cell, pos.getX(), pos.getZ()); @@ -127,7 +127,7 @@ public class TerraCommand { private static int debugBiome(CommandContext context) throws CommandSyntaxException { ServerPlayerEntity player = context.getSource().getPlayer(); - BlockPos position = player.getBlockPos(); + BlockPos position = player.getSenseCenterPos(); int x = position.getX(); int y = position.getY(); int z = position.getZ(); @@ -155,7 +155,7 @@ public class TerraCommand { Terrain terrain = TerrainArgType.getTerrain(context, "terrain"); Terrain target = getTerrainInstance(terrain, terraContext.terrain); - BlockPos pos = context.getSource().getPlayer().getBlockPos(); + BlockPos pos = context.getSource().getPlayer().getSenseCenterPos(); UUID playerID = context.getSource().getPlayer().getUuid(); MinecraftServer server = context.getSource().getMinecraftServer(); WorldGenerator worldGenerator = terraContext.factory.get(); @@ -174,7 +174,7 @@ public class TerraCommand { )); Biome biome = BiomeArgType.getBiome(context, "biome"); - BlockPos pos = context.getSource().getPlayer().getBlockPos(); + BlockPos pos = context.getSource().getPlayer().getSenseCenterPos(); UUID playerID = context.getSource().getPlayer().getUuid(); MinecraftServer server = context.getSource().getMinecraftServer(); ServerWorld reader = context.getSource().getPlayer().getServerWorld(); @@ -195,7 +195,7 @@ public class TerraCommand { Terrain terrain = TerrainArgType.getTerrain(context, "terrain"); Terrain target = getTerrainInstance(terrain, terraContext.terrain); Biome biome = BiomeArgType.getBiome(context, "biome"); - BlockPos pos = context.getSource().getPlayer().getBlockPos(); + BlockPos pos = context.getSource().getPlayer().getSenseCenterPos(); ServerWorld world = context.getSource().getPlayer().getServerWorld(); UUID playerID = context.getSource().getPlayer().getUuid(); MinecraftServer server = context.getSource().getMinecraftServer(); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/feature/TerrainHelper.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/feature/TerrainHelper.java index 3b9c0fe..c0ce404 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/feature/TerrainHelper.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/feature/TerrainHelper.java @@ -76,7 +76,7 @@ public class TerrainHelper { StructureStart structurestart = neighbourChunk.getStructureStart(name); if (structurestart != null && structurestart.isInExistingChunk()) { for (StructurePiece structurepiece : structurestart.getChildren()) { - if (structurepiece.method_16654(pos, 12) && structurepiece instanceof PoolStructurePiece) { + if (structurepiece.intersectsChunk(pos, 12) && structurepiece instanceof PoolStructurePiece) { PoolStructurePiece piece = (PoolStructurePiece) structurepiece; StructurePool.Projection placement = piece.getPoolElement().getProjection(); if (placement == StructurePool.Projection.RIGID) { diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/OverlayScreen.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/OverlayScreen.java index 5e67b4d..8358d8e 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/OverlayScreen.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/OverlayScreen.java @@ -38,8 +38,8 @@ public class OverlayScreen extends Screen implements OverlayRenderer { public OverlayScreen() { super(new TranslatableText("")); - super.minecraft = MinecraftClient.getInstance(); - super.font = minecraft.textRenderer; + super.client = MinecraftClient.getInstance(); + super.textRenderer = client.textRenderer; } @Override diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/ScrollPane.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/ScrollPane.java index da2af5e..b1323db 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/ScrollPane.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/ScrollPane.java @@ -71,7 +71,7 @@ public class ScrollPane extends ElementListWidget implements O } @Override - protected int getScrollbarPosition() { + protected int getScrollbarPositionX() { return getMaxPosition(); // todo old getRight } diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/SettingsScreen.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/SettingsScreen.java index e68cd78..37b5467 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/SettingsScreen.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/gui/SettingsScreen.java @@ -27,6 +27,7 @@ package com.terraforged.mod.gui; import com.google.gson.GsonBuilder; import com.google.gson.JsonElement; +import com.mojang.datafixers.Dynamic; import com.terraforged.core.settings.Settings; import com.terraforged.mod.gui.element.TerraLabel; import com.terraforged.mod.gui.page.FeaturePage; @@ -44,8 +45,10 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.screen.world.CreateWorldScreen; import net.minecraft.client.gui.widget.ButtonWidget; +import net.minecraft.datafixer.NbtOps; import net.minecraft.nbt.CompoundTag; import net.minecraft.util.Util; +import net.minecraft.world.level.LevelGeneratorOptions; import java.io.BufferedWriter; import java.io.File; @@ -66,7 +69,8 @@ public class SettingsScreen extends OverlayScreen { private int pageIndex = 0; public SettingsScreen(CreateWorldScreen parent) { - NBTHelper.deserialize(parent.generatorOptionsTag, settings); + // todo enhance this! + NBTHelper.deserialize((CompoundTag) parent.generatorOptions.getDynamic().convert(NbtOps.INSTANCE).getValue(), settings); this.parent = parent; this.pages = new Page[]{ new GeneratorPage(settings, preview), @@ -114,7 +118,8 @@ public class SettingsScreen extends OverlayScreen { for (Page page : pages) { page.save(); } - parent.generatorOptionsTag = NBTHelper.serializeCompact(settings); + LevelGeneratorOptions oldOptions = parent.generatorOptions; + parent.generatorOptions = new LevelGeneratorOptions(oldOptions.getType(), new Dynamic<>(NbtOps.INSTANCE, NBTHelper.serializeCompact(settings)), oldOptions::createChunkGenerator); onClose(); })); diff --git a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/settings/SettingsHelper.java b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/settings/SettingsHelper.java index 6b4c453..6247941 100644 --- a/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/settings/SettingsHelper.java +++ b/TerraForgedMod-fabric/src/main/java/com/terraforged/mod/settings/SettingsHelper.java @@ -1,16 +1,21 @@ package com.terraforged.mod.settings; import com.google.gson.Gson; +import com.mojang.datafixers.OptionalDynamic; import com.terraforged.mod.Log; import com.terraforged.mod.util.nbt.NBTHelper; +import net.minecraft.datafixer.NbtOps; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.IWorld; +import net.minecraft.world.level.LevelGeneratorOptions; import net.minecraft.world.level.LevelProperties; +import org.spongepowered.asm.mixin.injection.struct.InjectorGroupInfo; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.Reader; +import java.util.Map; public class SettingsHelper { @@ -22,20 +27,20 @@ public class SettingsHelper { } public static int getVersion(LevelProperties info) { - if (info.getGeneratorOptions().isEmpty()) { + if (info.getGeneratorOptions().getDynamic().getMapValues().map(Map::isEmpty).orElse(true)) { // if options have not been set then the world has been created // during the current runtime .: is not legacy // return TerraWorld.VERSION; todo return 0; } - CompoundTag version = info.getGeneratorOptions().getCompound("version"); - if (version.isEmpty()) { + OptionalDynamic version = info.getGeneratorOptions().getDynamic().get("version"); + if (!version.get().isPresent()) { // version tag is absent in legacy worlds .: is legacy return 0; } - return version.getInt("value"); + return version.get().get().get("value").asInt(0); // blursed dfu } public static TerraSettings getSettings(IWorld world) { @@ -52,8 +57,8 @@ public class SettingsHelper { public static TerraSettings getSettings(LevelProperties info) { TerraSettings settings = new TerraSettings(); - if (!info.getGeneratorOptions().isEmpty()) { - NBTHelper.deserialize(info.getGeneratorOptions(), settings); + if (!info.getGeneratorOptions().getDynamic().getMapValues().map(Map::isEmpty).orElse(true)) { + NBTHelper.deserialize((CompoundTag) info.getGeneratorOptions().getDynamic().convert(NbtOps.INSTANCE).getValue(), settings); } return settings; } @@ -62,6 +67,7 @@ public class SettingsHelper { settings.version = version; settings.generator.seed = info.getSeed(); CompoundTag options = NBTHelper.serialize(settings); - info.setGeneratorOptions(options); + // todo find generator type and chunk generator factory + //info.setGeneratorOptions(new LevelGeneratorOptions()); } } diff --git a/gradle.properties b/gradle.properties index 1b61cdf..b498ff7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,8 +3,9 @@ mc_version=1.15.2 forge_version=31.1.1 mcp_channel=snapshot mcp_version=20200225-1.15.1 -yarn_build=14 +fabric_mc_version=20w11a +yarn_build=6 fabric_loader_version=0.7.8+build.187 -fabric_api_version=0.5.0+build.293-1.15 +fabric_api_version=0.5.3+build.308-1.16 org.gradle.jvmargs=-Xmx4G org.gradle.daemon=false \ No newline at end of file