refactor generation stuff

This commit is contained in:
dfsek 2021-11-27 09:52:41 -07:00
parent 7aaa94dedc
commit e616d21bea
45 changed files with 85 additions and 63 deletions

View File

@ -26,9 +26,9 @@ import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.GenerationSettings; import com.dfsek.terra.api.world.biome.GenerationSettings;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.ProtoChunk; import com.dfsek.terra.api.world.chunk.generation.ProtoChunk;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.api.world.generator.GenerationStage; import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
import com.dfsek.terra.api.world.generator.Palette; import com.dfsek.terra.api.world.generator.Palette;

View File

@ -7,6 +7,8 @@
package com.dfsek.terra.addons.carver; package com.dfsek.terra.addons.carver;
import com.dfsek.terra.api.world.chunk.Chunk;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.HashMap; import java.util.HashMap;
@ -20,10 +22,9 @@ import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.profiler.ProfileFrame; import com.dfsek.terra.api.profiler.ProfileFrame;
import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.Chunkified; import com.dfsek.terra.api.world.chunk.generation.stage.Chunkified;
import com.dfsek.terra.api.world.generator.GenerationStage; import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
public class CavePopulator implements GenerationStage, Chunkified { public class CavePopulator implements GenerationStage, Chunkified {

View File

@ -24,7 +24,7 @@ import com.dfsek.terra.api.util.Rotation;
import com.dfsek.terra.api.util.collection.MaterialSet; import com.dfsek.terra.api.util.collection.MaterialSet;
import com.dfsek.terra.api.util.collection.ProbabilityCollection; import com.dfsek.terra.api.util.collection.ProbabilityCollection;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -7,6 +7,8 @@
package com.dfsek.terra.addons.ore; package com.dfsek.terra.addons.ore;
import com.dfsek.terra.api.world.chunk.Chunk;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.Random; import java.util.Random;
@ -14,10 +16,9 @@ import java.util.Random;
import com.dfsek.terra.api.Platform; import com.dfsek.terra.api.Platform;
import com.dfsek.terra.api.profiler.ProfileFrame; import com.dfsek.terra.api.profiler.ProfileFrame;
import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.generator.GenerationStage; import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
public class OrePopulator implements GenerationStage { public class OrePopulator implements GenerationStage {

View File

@ -15,7 +15,7 @@ import com.dfsek.terra.api.block.BlockType;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.util.collection.MaterialSet; import com.dfsek.terra.api.util.collection.MaterialSet;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
public abstract class Ore { public abstract class Ore {

View File

@ -7,6 +7,8 @@
package com.dfsek.terra.addons.ore.ores; package com.dfsek.terra.addons.ore.ores;
import com.dfsek.terra.api.world.chunk.Chunk;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;
@ -18,7 +20,6 @@ import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.util.Range; import com.dfsek.terra.api.util.Range;
import com.dfsek.terra.api.util.collection.MaterialSet; import com.dfsek.terra.api.util.collection.MaterialSet;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
public class VanillaOre extends Ore { public class VanillaOre extends Ore {

View File

@ -7,6 +7,8 @@
package com.dfsek.terra.addons.structure; package com.dfsek.terra.addons.structure;
import com.dfsek.terra.api.world.chunk.Chunk;
import net.jafama.FastMath; import net.jafama.FastMath;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
@ -19,11 +21,10 @@ import com.dfsek.terra.api.structure.configured.ConfiguredStructure;
import com.dfsek.terra.api.util.Rotation; import com.dfsek.terra.api.util.Rotation;
import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.Chunkified; import com.dfsek.terra.api.world.chunk.generation.stage.Chunkified;
import com.dfsek.terra.api.world.generator.GenerationStage; import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
public class StructurePopulator implements GenerationStage, Chunkified { public class StructurePopulator implements GenerationStage, Chunkified {

View File

@ -13,9 +13,9 @@ import com.dfsek.terra.api.profiler.ProfileFrame;
import com.dfsek.terra.api.util.Rotation; import com.dfsek.terra.api.util.Rotation;
import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.GenerationStage; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
public class FeatureGenerationStage implements GenerationStage { public class FeatureGenerationStage implements GenerationStage {

View File

@ -1,9 +1,9 @@
package com.dfsek.terra.addons.generation.structure; package com.dfsek.terra.addons.generation.structure;
import com.dfsek.terra.api.Platform; import com.dfsek.terra.api.Platform;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.GenerationStage; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
public class StructureGenerationStage implements GenerationStage { public class StructureGenerationStage implements GenerationStage {

View File

@ -19,7 +19,7 @@ import com.dfsek.terra.api.structure.buffer.items.BufferedBlock;
import com.dfsek.terra.api.util.Rotation; import com.dfsek.terra.api.util.Rotation;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.util.vector.integer.Vector2Int; import com.dfsek.terra.api.util.vector.integer.Vector2Int;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -10,7 +10,7 @@ package com.dfsek.terra.addons.terrascript.buffer;
import com.dfsek.terra.api.structure.buffer.Buffer; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -50,7 +50,7 @@ import com.dfsek.terra.api.structure.buffer.buffers.DirectBuffer;
import com.dfsek.terra.api.structure.buffer.buffers.StructureBuffer; import com.dfsek.terra.api.structure.buffer.buffers.StructureBuffer;
import com.dfsek.terra.api.util.Rotation; import com.dfsek.terra.api.util.Rotation;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import org.slf4j.Logger; import org.slf4j.Logger;

View File

@ -13,7 +13,7 @@ import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.util.Rotation; import com.dfsek.terra.api.util.Rotation;
import com.dfsek.terra.api.util.StringIdentifiable; import com.dfsek.terra.api.util.StringIdentifiable;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -8,7 +8,7 @@
package com.dfsek.terra.api.structure.buffer; package com.dfsek.terra.api.structure.buffer;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import org.jetbrains.annotations.ApiStatus.Experimental; import org.jetbrains.annotations.ApiStatus.Experimental;

View File

@ -13,7 +13,7 @@ import java.util.Map;
import com.dfsek.terra.api.structure.buffer.Buffer; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import org.jetbrains.annotations.ApiStatus.Experimental; import org.jetbrains.annotations.ApiStatus.Experimental;

View File

@ -16,7 +16,7 @@ import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.structure.buffer.items.Cell; import com.dfsek.terra.api.structure.buffer.items.Cell;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import org.jetbrains.annotations.ApiStatus.Experimental; import org.jetbrains.annotations.ApiStatus.Experimental;

View File

@ -9,7 +9,7 @@ package com.dfsek.terra.api.util;
import java.util.Random; import java.util.Random;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
public final class PopulationUtil { public final class PopulationUtil {

View File

@ -7,6 +7,10 @@
package com.dfsek.terra.api.world; package com.dfsek.terra.api.world;
import com.dfsek.terra.api.world.chunk.ChunkAccess;
public interface Carver { public interface Carver {
void carve(World world, int chunkX, int chunkZ, ChunkAccess chunk); void carve(World world, int chunkX, int chunkZ, ChunkAccess chunk);
} }

View File

@ -11,6 +11,7 @@ import java.util.List;
import com.dfsek.terra.api.util.Range; import com.dfsek.terra.api.util.Range;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.chunk.Chunk;
public interface Flora { public interface Flora {

View File

@ -15,7 +15,8 @@ import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
public interface World extends Handle { public interface World extends Handle {

View File

@ -5,10 +5,12 @@
* reference the LICENSE file in the common/api directory. * reference the LICENSE file in the common/api directory.
*/ */
package com.dfsek.terra.api.world; package com.dfsek.terra.api.world.chunk;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.world.World;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;

View File

@ -5,7 +5,7 @@
* reference the LICENSE file in the common/api directory. * reference the LICENSE file in the common/api directory.
*/ */
package com.dfsek.terra.api.world; package com.dfsek.terra.api.world.chunk;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;

View File

@ -5,10 +5,12 @@
* reference the LICENSE file in the common/api directory. * reference the LICENSE file in the common/api directory.
*/ */
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.chunk.generation;
import com.dfsek.terra.api.util.vector.integer.Vector3Int; import com.dfsek.terra.api.util.vector.integer.Vector3Int;
import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.List; import java.util.List;

View File

@ -5,9 +5,10 @@
* reference the LICENSE file in the common/api directory. * reference the LICENSE file in the common/api directory.
*/ */
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.chunk.generation;
import com.dfsek.terra.api.world.ChunkAccess;
import com.dfsek.terra.api.world.chunk.ChunkAccess;
public interface ProtoChunk extends ChunkAccess { public interface ProtoChunk extends ChunkAccess {

View File

@ -5,7 +5,7 @@
* reference the LICENSE file in the common/api directory. * reference the LICENSE file in the common/api directory.
*/ */
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.chunk.generation.stage;
/** /**
* Marker interface that marks a feature as "chunkified" (only modifying one chunk at a time) * Marker interface that marks a feature as "chunkified" (only modifying one chunk at a time)

View File

@ -5,9 +5,9 @@
* reference the LICENSE file in the common/api directory. * reference the LICENSE file in the common/api directory.
*/ */
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.chunk.generation.stage;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -8,6 +8,7 @@
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.generator;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
public interface ChunkGeneratorProvider { public interface ChunkGeneratorProvider {

View File

@ -8,6 +8,7 @@
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.generator;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.world.chunk.generation.stage.GenerationStage;
public interface GenerationStageProvider { public interface GenerationStageProvider {

View File

@ -8,6 +8,7 @@
package com.dfsek.terra.api.world.generator; package com.dfsek.terra.api.world.generator;
import com.dfsek.terra.api.Handle; import com.dfsek.terra.api.Handle;
import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
public interface GeneratorWrapper extends Handle { public interface GeneratorWrapper extends Handle {

View File

@ -23,10 +23,10 @@ import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.entity.Entity; import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
public class DummyWorld implements World { public class DummyWorld implements World {

View File

@ -50,7 +50,7 @@ public class TerraBukkitPlugin extends JavaPlugin {
private static final Logger logger = LoggerFactory.getLogger(TerraBukkitPlugin.class); private static final Logger logger = LoggerFactory.getLogger(TerraBukkitPlugin.class);
private final PlatformImpl terraPlugin = new PlatformImpl(this); private final PlatformImpl terraPlugin = new PlatformImpl(this);
private final Map<String, com.dfsek.terra.api.world.generator.ChunkGenerator> generatorMap = new HashMap<>(); private final Map<String, com.dfsek.terra.api.world.chunk.generation.ChunkGenerator> generatorMap = new HashMap<>();
@Override @Override
public void onEnable() { public void onEnable() {

View File

@ -32,7 +32,7 @@ import java.util.List;
import java.util.Random; import java.util.Random;
import com.dfsek.terra.api.config.WorldConfig; import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.api.world.generator.GeneratorWrapper; import com.dfsek.terra.api.world.generator.GeneratorWrapper;
import com.dfsek.terra.bukkit.world.BukkitAdapter; import com.dfsek.terra.bukkit.world.BukkitAdapter;

View File

@ -24,8 +24,8 @@ import org.jetbrains.annotations.NotNull;
import java.util.Random; import java.util.Random;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.api.world.generator.Chunkified; import com.dfsek.terra.api.world.chunk.generation.stage.Chunkified;
import com.dfsek.terra.bukkit.world.BukkitAdapter; import com.dfsek.terra.bukkit.world.BukkitAdapter;

View File

@ -21,7 +21,7 @@ import org.bukkit.generator.ChunkGenerator;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.world.generator.ProtoChunk; import com.dfsek.terra.api.world.chunk.generation.ProtoChunk;
import com.dfsek.terra.bukkit.world.block.data.BukkitBlockState; import com.dfsek.terra.bukkit.world.block.data.BukkitBlockState;

View File

@ -21,7 +21,7 @@ package com.dfsek.terra.bukkit.population;
import java.io.Serializable; import java.io.Serializable;
import java.util.UUID; import java.util.UUID;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.bukkit.world.BukkitWorld; import com.dfsek.terra.bukkit.world.BukkitWorld;

View File

@ -17,6 +17,8 @@
package com.dfsek.terra.bukkit.population; package com.dfsek.terra.bukkit.population;
import com.dfsek.terra.api.world.chunk.Chunk;
import org.bukkit.generator.BlockPopulator; import org.bukkit.generator.BlockPopulator;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
@ -27,10 +29,9 @@ import java.util.Random;
import com.dfsek.terra.api.Platform; import com.dfsek.terra.api.Platform;
import com.dfsek.terra.api.profiler.ProfileFrame; import com.dfsek.terra.api.profiler.ProfileFrame;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.api.world.generator.Chunkified; import com.dfsek.terra.api.world.chunk.generation.stage.Chunkified;
import com.dfsek.terra.bukkit.PlatformImpl; import com.dfsek.terra.bukkit.PlatformImpl;
import com.dfsek.terra.bukkit.world.BukkitAdapter; import com.dfsek.terra.bukkit.world.BukkitAdapter;
import com.dfsek.terra.bukkit.world.BukkitWorld; import com.dfsek.terra.bukkit.world.BukkitWorld;

View File

@ -35,7 +35,7 @@ import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.inventory.ItemStack; import com.dfsek.terra.api.inventory.ItemStack;
import com.dfsek.terra.api.inventory.item.Enchantment; import com.dfsek.terra.api.inventory.item.Enchantment;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.bukkit.BukkitCommandSender; import com.dfsek.terra.bukkit.BukkitCommandSender;
import com.dfsek.terra.bukkit.BukkitEntity; import com.dfsek.terra.bukkit.BukkitEntity;

View File

@ -17,10 +17,11 @@
package com.dfsek.terra.bukkit.world; package com.dfsek.terra.bukkit.world;
import com.dfsek.terra.api.world.chunk.Chunk;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -26,10 +26,10 @@ import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.entity.Entity; import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.bukkit.BukkitEntity; import com.dfsek.terra.bukkit.BukkitEntity;
import com.dfsek.terra.bukkit.generator.BukkitChunkGeneratorWrapper; import com.dfsek.terra.bukkit.generator.BukkitChunkGeneratorWrapper;
import com.dfsek.terra.bukkit.world.block.state.BukkitBlockEntity; import com.dfsek.terra.bukkit.world.block.state.BukkitBlockEntity;

View File

@ -55,9 +55,9 @@ import java.util.concurrent.Executor;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.ProtoChunk; import com.dfsek.terra.api.world.chunk.generation.ProtoChunk;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.api.world.generator.Chunkified; import com.dfsek.terra.api.world.chunk.generation.stage.Chunkified;
import com.dfsek.terra.api.world.generator.GeneratorWrapper; import com.dfsek.terra.api.world.generator.GeneratorWrapper;
import com.dfsek.terra.fabric.FabricEntryPoint; import com.dfsek.terra.fabric.FabricEntryPoint;
import com.dfsek.terra.fabric.block.FabricBlockState; import com.dfsek.terra.fabric.block.FabricBlockState;
@ -196,7 +196,7 @@ public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.C
delegate.generateChunkData(world, new FastRandom(), chunk.getPos().x, chunk.getPos().z, (ProtoChunk) chunk); delegate.generateChunkData(world, new FastRandom(), chunk.getPos().x, chunk.getPos().z, (ProtoChunk) chunk);
delegate.getGenerationStages().forEach(populator -> { delegate.getGenerationStages().forEach(populator -> {
if(populator instanceof Chunkified) { if(populator instanceof Chunkified) {
populator.populate(world, (com.dfsek.terra.api.world.Chunk) world); populator.populate(world, (com.dfsek.terra.api.world.chunk.Chunk) world);
} }
}); });
return chunk; return chunk;
@ -207,7 +207,7 @@ public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.C
public void generateFeatures(StructureWorldAccess world, Chunk chunk, StructureAccessor structureAccessor) { public void generateFeatures(StructureWorldAccess world, Chunk chunk, StructureAccessor structureAccessor) {
delegate.getGenerationStages().forEach(populator -> { delegate.getGenerationStages().forEach(populator -> {
if(!(populator instanceof Chunkified)) { if(!(populator instanceof Chunkified)) {
populator.populate((World) world, (com.dfsek.terra.api.world.Chunk) world); populator.populate((World) world, (com.dfsek.terra.api.world.chunk.Chunk) world);
} }
}); });
if(pack.vanillaFlora()) { if(pack.vanillaFlora()) {

View File

@ -17,8 +17,9 @@
package com.dfsek.terra.fabric.mixin.implementations.chunk; package com.dfsek.terra.fabric.mixin.implementations.chunk;
import com.dfsek.terra.api.world.chunk.Chunk;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.ChunkPos;
import net.minecraft.world.ChunkRegion; import net.minecraft.world.ChunkRegion;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
@ -28,7 +29,6 @@ import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.fabric.block.FabricBlockState; import com.dfsek.terra.fabric.block.FabricBlockState;

View File

@ -17,6 +17,8 @@
package com.dfsek.terra.fabric.mixin.implementations.chunk; package com.dfsek.terra.fabric.mixin.implementations.chunk;
import com.dfsek.terra.api.world.chunk.Chunk;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.chunk.WorldChunk; import net.minecraft.world.chunk.WorldChunk;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
@ -29,7 +31,6 @@ import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.fabric.block.FabricBlockState; import com.dfsek.terra.fabric.block.FabricBlockState;

View File

@ -26,7 +26,7 @@ import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.world.generator.ProtoChunk; import com.dfsek.terra.api.world.chunk.generation.ProtoChunk;
import com.dfsek.terra.fabric.block.FabricBlockState; import com.dfsek.terra.fabric.block.FabricBlockState;

View File

@ -17,6 +17,8 @@
package com.dfsek.terra.fabric.mixin.implementations.world; package com.dfsek.terra.fabric.mixin.implementations.world;
import com.dfsek.terra.api.world.chunk.Chunk;
import net.minecraft.block.FluidBlock; import net.minecraft.block.FluidBlock;
import net.minecraft.fluid.Fluid; import net.minecraft.fluid.Fluid;
import net.minecraft.server.world.ServerWorld; import net.minecraft.server.world.ServerWorld;
@ -45,10 +47,9 @@ import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.entity.Entity; import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.fabric.block.FabricBlockState; import com.dfsek.terra.fabric.block.FabricBlockState;
import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper; import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper;
import com.dfsek.terra.fabric.generation.TerraBiomeSource; import com.dfsek.terra.fabric.generation.TerraBiomeSource;

View File

@ -48,10 +48,10 @@ import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.entity.Entity; import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.util.vector.Vector3; import com.dfsek.terra.api.util.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.chunk.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.chunk.generation.ChunkGenerator;
import com.dfsek.terra.fabric.block.FabricBlockState; import com.dfsek.terra.fabric.block.FabricBlockState;
import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper; import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper;
import com.dfsek.terra.fabric.generation.TerraBiomeSource; import com.dfsek.terra.fabric.generation.TerraBiomeSource;