remove World#getGenerator

This commit is contained in:
dfsek
2021-07-22 14:28:11 -07:00
parent 2517b74951
commit ec14666c6d
6 changed files with 9 additions and 27 deletions

View File

@@ -7,9 +7,7 @@ import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.ChunkGenerator;
import com.dfsek.terra.bukkit.BukkitEntity;
import com.dfsek.terra.bukkit.generator.BukkitChunkGenerator;
import com.dfsek.terra.bukkit.world.block.state.BukkitBlockEntity;
import com.dfsek.terra.bukkit.world.entity.BukkitEntityType;
@@ -33,11 +31,6 @@ public class BukkitWorld implements World {
return delegate.getMaxHeight();
}
@Override
public ChunkGenerator getGenerator() {
return new BukkitChunkGenerator(delegate.getGenerator());
}
public String getName() {
return delegate.getName();
}

View File

@@ -9,7 +9,9 @@ import com.dfsek.terra.api.world.World;
import com.dfsek.terra.fabric.TerraFabricPlugin;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.registry.BuiltinRegistries;
import net.minecraft.world.ServerWorldAccess;
import net.minecraft.world.StructureWorldAccess;
import net.minecraft.world.WorldAccess;
import net.minecraft.world.gen.chunk.ChunkGenerator;
import net.minecraft.world.gen.feature.ConfiguredFeature;
import org.spongepowered.asm.mixin.Implements;
@@ -32,7 +34,7 @@ public abstract class ConfiguredFeatureMixin {
String id = BuiltinRegistries.CONFIGURED_FEATURE.getId((ConfiguredFeature<?, ?>) (Object) this).toString();
try(ProfileFrame ignore = TerraFabricPlugin.getInstance().getProfiler().profile("fabric_tree:" + id.toLowerCase(Locale.ROOT))) {
StructureWorldAccess fabricWorldAccess = ((StructureWorldAccess) world);
ChunkGenerator generatorWrapper = (ChunkGenerator) world.getGenerator();
ChunkGenerator generatorWrapper = ((ServerWorldAccess) world).toServerWorld().getChunkManager().getChunkGenerator();
return generate(fabricWorldAccess, generatorWrapper, r, new BlockPos(l.getBlockX(), l.getBlockY(), l.getBlockZ()));
}
}

View File

@@ -24,6 +24,7 @@ import net.minecraft.world.ChunkRegion;
import net.minecraft.world.ServerWorldAccess;
import net.minecraft.world.TickScheduler;
import net.minecraft.world.WorldAccess;
import net.minecraft.world.chunk.ChunkManager;
import net.minecraft.world.chunk.ChunkStatus;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Implements;
@@ -56,6 +57,9 @@ public abstract class ChunkRegionMixin {
@Shadow
public abstract TickScheduler<Fluid> getFluidTickScheduler();
@Shadow
public abstract ChunkManager getChunkManager();
public int terraWorld$getMaxHeight() {
return (((ChunkRegion) (Object) this).getBottomY()) + ((ChunkRegion) (Object) this).getHeight();
}
@@ -116,7 +120,7 @@ public abstract class ChunkRegionMixin {
}
public TerraChunkGenerator terraWorld$getTerraGenerator() {
return ((FabricChunkGeneratorWrapper) terraWorld$getGenerator()).getHandle();
return ((FabricChunkGeneratorWrapper) world.getChunkManager().getChunkGenerator()).getHandle();
}
@SuppressWarnings("deprecation")

View File

@@ -8,7 +8,6 @@ import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.ChunkGenerator;
import net.jafama.FastMath;
import net.querz.mca.MCAFile;
import net.querz.mca.MCAUtil;
@@ -40,11 +39,6 @@ public class DirectWorld implements World {
return 255;
}
@Override
public ChunkGenerator getGenerator() {
return generator;
}
@Override
public Chunk getChunkAt(int x, int z) {
MCAFile file = compute(x, z);