Begin absorbing Gaea into Terra

This commit is contained in:
dfsek
2020-12-18 19:36:27 -07:00
parent 9ac098f1ca
commit d1af8c1224
241 changed files with 779 additions and 774 deletions

View File

@@ -3,7 +3,7 @@ package com.dfsek.terra;
import com.dfsek.terra.api.gaea.profiler.DataType;
import com.dfsek.terra.api.gaea.profiler.Measurement;
import com.dfsek.terra.api.gaea.profiler.WorldProfiler;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.world.World;
public class TerraProfiler extends WorldProfiler {
public TerraProfiler(World w) {

View File

@@ -1,11 +1,11 @@
package com.dfsek.terra;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.biome.BiomeZone;
import com.dfsek.terra.biome.grid.master.TerraBiomeGrid;
import com.dfsek.terra.config.base.ConfigPack;
import com.dfsek.terra.generation.TerraChunkGenerator;
import com.dfsek.terra.generation.MasterChunkGenerator;
public class TerraWorld {
private final TerraBiomeGrid grid;
@@ -24,7 +24,7 @@ public class TerraWorld {
}
public static boolean isTerraWorld(World w) {
return w.getGenerator() instanceof TerraChunkGenerator;
return w.getGenerator() instanceof MasterChunkGenerator;
}
public TerraBiomeGrid getGrid() {

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.world.vector.Location;
public interface Entity extends Handle {
Location getLocation();

View File

@@ -3,7 +3,7 @@ package com.dfsek.terra.api;
import com.dfsek.tectonic.loading.TypeRegistry;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.gaea.math.Range;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.biome.grid.master.TerraBiomeGrid;
import com.dfsek.terra.biome.palette.PaletteHolder;
import com.dfsek.terra.biome.palette.PaletteLayer;

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.gaea;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.platform.TerraPlugin;
public class Debug {
public static TerraPlugin main;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.world.World;
import java.io.File;

View File

@@ -2,7 +2,7 @@ package com.dfsek.terra.api.gaea.lang;
import com.dfsek.tectonic.config.Configuration;
import com.dfsek.terra.api.generic.CommandSender;
import com.dfsek.terra.api.platform.CommandSender;
import java.io.File;
import java.io.FileInputStream;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.lang;
import com.dfsek.terra.api.generic.CommandSender;
import com.dfsek.terra.api.platform.CommandSender;
import java.util.logging.Level;
import java.util.logging.Logger;

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.gaea.lang;
import com.dfsek.terra.api.generic.CommandSender;
import com.dfsek.terra.api.platform.CommandSender;
import java.util.Arrays;
import java.util.List;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.lang;
import com.dfsek.terra.api.generic.CommandSender;
import com.dfsek.terra.api.platform.CommandSender;
import java.util.Arrays;
import java.util.logging.Level;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.math;
import com.dfsek.terra.api.gaea.biome.BiomeGrid;
import com.dfsek.terra.api.gaea.biome.Generator;
import com.dfsek.terra.api.gaea.generation.GenerationPhase;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.world.biome.BiomeGrid;
import com.dfsek.terra.api.world.biome.Generator;
import com.dfsek.terra.api.world.generation.GenerationPhase;
import net.jafama.FastMath;
/**

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.gaea.math;
import com.dfsek.terra.api.gaea.biome.NormalizationUtil;
import com.dfsek.terra.api.world.biome.NormalizationUtil;
import java.util.HashSet;
import java.util.Random;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.population;
import com.dfsek.terra.api.generic.world.Chunk;
import com.dfsek.terra.api.platform.world.Chunk;
import java.io.Serializable;
import java.util.UUID;

View File

@@ -6,10 +6,10 @@ import com.dfsek.terra.api.gaea.profiler.WorldProfiler;
import com.dfsek.terra.api.gaea.util.FastRandom;
import com.dfsek.terra.api.gaea.util.GlueList;
import com.dfsek.terra.api.gaea.util.SerializationUtil;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.generator.TerraBlockPopulator;
import com.dfsek.terra.api.generic.world.Chunk;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.world.generation.TerraBlockPopulator;
import org.jetbrains.annotations.NotNull;
import java.io.File;

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.gaea.profiler;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.world.World;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
import net.jafama.FastMath;

View File

@@ -4,9 +4,9 @@ import com.dfsek.terra.api.gaea.structures.loot.functions.AmountFunction;
import com.dfsek.terra.api.gaea.structures.loot.functions.DamageFunction;
import com.dfsek.terra.api.gaea.structures.loot.functions.Function;
import com.dfsek.terra.api.gaea.util.GlueList;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.inventory.ItemStack;
import com.dfsek.terra.api.generic.world.block.MaterialData;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.inventory.ItemStack;
import com.dfsek.terra.api.platform.world.block.MaterialData;
import net.jafama.FastMath;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.structures.loot;
import com.dfsek.terra.api.gaea.util.GlueList;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.inventory.Inventory;
import com.dfsek.terra.api.generic.inventory.ItemStack;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.inventory.Inventory;
import com.dfsek.terra.api.platform.inventory.ItemStack;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;

View File

@@ -2,8 +2,8 @@ package com.dfsek.terra.api.gaea.structures.loot;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.gaea.util.GlueList;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.inventory.ItemStack;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.inventory.ItemStack;
import net.jafama.FastMath;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.structures.loot.functions;
import com.dfsek.terra.api.generic.inventory.ItemStack;
import com.dfsek.terra.api.platform.inventory.ItemStack;
import java.util.Random;

View File

@@ -1,8 +1,8 @@
package com.dfsek.terra.api.gaea.structures.loot.functions;
import com.dfsek.terra.api.generic.inventory.ItemStack;
import com.dfsek.terra.api.generic.inventory.item.Damageable;
import com.dfsek.terra.api.generic.inventory.item.ItemMeta;
import com.dfsek.terra.api.platform.inventory.ItemStack;
import com.dfsek.terra.api.platform.inventory.item.Damageable;
import com.dfsek.terra.api.platform.inventory.item.ItemMeta;
import java.util.Random;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.structures.loot.functions;
import com.dfsek.terra.api.generic.inventory.ItemStack;
import com.dfsek.terra.api.platform.inventory.ItemStack;
import java.util.Random;

View File

@@ -1,14 +0,0 @@
package com.dfsek.terra.api.gaea.tree;
import com.dfsek.terra.api.generic.world.block.MaterialData;
import com.dfsek.terra.api.generic.world.vector.Location;
import java.util.Random;
import java.util.Set;
public interface Tree {
boolean plant(Location l, Random r);
Set<MaterialData> getSpawnable();
}

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.world;
import com.dfsek.terra.api.gaea.math.Range;
import com.dfsek.terra.api.generic.world.Chunk;
import com.dfsek.terra.api.generic.world.block.Block;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.block.Block;
import com.dfsek.terra.api.platform.world.vector.Location;
import java.util.List;

View File

@@ -1,4 +0,0 @@
package com.dfsek.terra.api.generic;
public interface Tree extends Handle, com.dfsek.terra.api.gaea.tree.Tree {
}

View File

@@ -1,11 +0,0 @@
package com.dfsek.terra.api.generic.generator;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.world.Chunk;
import com.dfsek.terra.api.generic.world.World;
import java.util.Random;
public interface BlockPopulator extends Handle {
void populate(World world, Random random, Chunk chunk);
}

View File

@@ -1,10 +0,0 @@
package com.dfsek.terra.api.generic.generator;
import com.dfsek.terra.api.generic.world.Chunk;
import com.dfsek.terra.api.generic.world.World;
import java.util.Random;
public interface TerraBlockPopulator {
void populate(World world, Random random, Chunk chunk);
}

View File

@@ -1,7 +0,0 @@
package com.dfsek.terra.api.generic.inventory;
import com.dfsek.terra.api.generic.world.block.MaterialData;
public interface ItemHandle {
ItemStack newItemStack(MaterialData material, int amount);
}

View File

@@ -1,6 +0,0 @@
package com.dfsek.terra.api.generic.inventory.item;
import com.dfsek.terra.api.generic.Handle;
public interface ItemMeta extends Handle {
}

View File

@@ -1,6 +0,0 @@
package com.dfsek.terra.api.generic.world;
import com.dfsek.terra.api.generic.Handle;
public interface Biome extends Handle {
}

View File

@@ -1,14 +0,0 @@
package com.dfsek.terra.api.generic.world;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.world.block.Block;
public interface Chunk extends Handle {
int getX();
int getZ();
World getWorld();
Block getBlock(int x, int y, int z);
}

View File

@@ -1,5 +0,0 @@
package com.dfsek.terra.api.generic.world.block;
public enum Axis {
X, Y, Z
}

View File

@@ -1,10 +0,0 @@
package com.dfsek.terra.api.generic.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.block.BlockFace;
public interface Directional extends BlockData {
BlockFace getFacing();
void setFacing(BlockFace facing);
}

View File

@@ -1,12 +0,0 @@
package com.dfsek.terra.api.generic.world.block.data;
import com.dfsek.terra.api.generic.world.block.Axis;
import com.dfsek.terra.api.generic.world.block.BlockData;
import java.util.Set;
public interface Orientable extends BlockData {
Set<Axis> getAxes();
void setAxis(Axis axis);
Axis getAxis();
}

View File

@@ -1,10 +0,0 @@
package com.dfsek.terra.api.generic.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.block.BlockFace;
public interface Rotatable extends BlockData {
BlockFace getRotation();
void setRotation(BlockFace face);
}

View File

@@ -1,4 +0,0 @@
package com.dfsek.terra.api.generic.world.block.state;
public interface BlockState {
}

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.generic;
package com.dfsek.terra.api.platform;
public interface CommandSender extends Handle {
void sendMessage(String message);

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.generic;
package com.dfsek.terra.api.platform;
public interface Entity extends Handle {
}

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.generic;
package com.dfsek.terra.api.platform;
/**
* An interface that contains a platform delegate.

View File

@@ -1,11 +1,11 @@
package com.dfsek.terra.api.generic;
package com.dfsek.terra.api.platform;
import com.dfsek.terra.TerraWorld;
import com.dfsek.terra.api.LoaderRegistrar;
import com.dfsek.terra.api.gaea.lang.Language;
import com.dfsek.terra.api.generic.inventory.ItemHandle;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.generic.world.WorldHandle;
import com.dfsek.terra.api.platform.inventory.ItemHandle;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.WorldHandle;
import com.dfsek.terra.config.base.PluginConfig;
import com.dfsek.terra.registry.ConfigRegistry;

View File

@@ -0,0 +1,4 @@
package com.dfsek.terra.api.platform;
public interface Tree extends Handle, com.dfsek.terra.api.world.tree.Tree {
}

View File

@@ -0,0 +1,11 @@
package com.dfsek.terra.api.platform.generator;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.World;
import java.util.Random;
public interface BlockPopulator extends Handle {
void populate(World world, Random random, Chunk chunk);
}

View File

@@ -1,9 +1,10 @@
package com.dfsek.terra.api.generic.generator;
package com.dfsek.terra.api.platform.generator;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.world.BiomeGrid;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.world.BiomeGrid;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.world.generation.TerraChunkGenerator;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.inventory;
package com.dfsek.terra.api.platform.inventory;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.platform.Handle;
public interface Inventory extends Handle {
int getSize();

View File

@@ -0,0 +1,7 @@
package com.dfsek.terra.api.platform.inventory;
import com.dfsek.terra.api.platform.world.block.MaterialData;
public interface ItemHandle {
ItemStack newItemStack(MaterialData material, int amount);
}

View File

@@ -1,8 +1,8 @@
package com.dfsek.terra.api.generic.inventory;
package com.dfsek.terra.api.platform.inventory;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.inventory.item.ItemMeta;
import com.dfsek.terra.api.generic.world.block.MaterialData;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.inventory.item.ItemMeta;
import com.dfsek.terra.api.platform.world.block.MaterialData;
public interface ItemStack extends Handle, Cloneable {
int getAmount();

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.inventory.item;
package com.dfsek.terra.api.platform.inventory.item;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.platform.Handle;
public interface Damageable extends Handle, Cloneable {
Damageable clone();

View File

@@ -0,0 +1,6 @@
package com.dfsek.terra.api.platform.inventory.item;
import com.dfsek.terra.api.platform.Handle;
public interface ItemMeta extends Handle {
}

View File

@@ -0,0 +1,6 @@
package com.dfsek.terra.api.platform.world;
import com.dfsek.terra.api.platform.Handle;
public interface Biome extends Handle {
}

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world;
package com.dfsek.terra.api.platform.world;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.platform.Handle;
import org.jetbrains.annotations.NotNull;
public interface BiomeGrid extends Handle {

View File

@@ -0,0 +1,14 @@
package com.dfsek.terra.api.platform.world;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.world.block.Block;
public interface Chunk extends Handle {
int getX();
int getZ();
World getWorld();
Block getBlock(int x, int y, int z);
}

View File

@@ -1,11 +1,11 @@
package com.dfsek.terra.api.generic.world;
package com.dfsek.terra.api.platform.world;
import com.dfsek.terra.api.generic.Entity;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.Tree;
import com.dfsek.terra.api.generic.generator.ChunkGenerator;
import com.dfsek.terra.api.generic.world.block.Block;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.Tree;
import com.dfsek.terra.api.platform.generator.ChunkGenerator;
import com.dfsek.terra.api.platform.world.block.Block;
import com.dfsek.terra.api.platform.world.vector.Location;
import java.io.File;
import java.util.UUID;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.generic.world;
package com.dfsek.terra.api.platform.world;
import com.dfsek.terra.api.generic.Tree;
import com.dfsek.terra.api.generic.world.block.Block;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.block.MaterialData;
import com.dfsek.terra.api.platform.Tree;
import com.dfsek.terra.api.platform.world.block.Block;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.MaterialData;
/**
* Interface to be implemented for world manipulation.

View File

@@ -0,0 +1,5 @@
package com.dfsek.terra.api.platform.world.block;
public enum Axis {
X, Y, Z
}

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.generic.world.block;
package com.dfsek.terra.api.platform.world.block;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.world.vector.Location;
public interface Block extends Handle {
void setBlockData(BlockData data, boolean physics);

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block;
package com.dfsek.terra.api.platform.world.block;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.platform.Handle;
public interface BlockData extends Cloneable, Handle {
MaterialData getMaterial();

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block;
package com.dfsek.terra.api.platform.world.block;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import org.jetbrains.annotations.NotNull;
public enum BlockFace {

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block;
package com.dfsek.terra.api.platform.world.block;
import com.dfsek.terra.api.generic.Handle;
import com.dfsek.terra.api.platform.Handle;
public interface MaterialData extends Handle {
boolean matches(MaterialData other);

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockData;
public interface AnaloguePowerable extends BlockData {
int getMaximumPower();

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockData;
public interface Bisected extends BlockData {
Half getHalf();

View File

@@ -0,0 +1,10 @@
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockFace;
public interface Directional extends BlockData {
BlockFace getFacing();
void setFacing(BlockFace facing);
}

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.block.BlockFace;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockFace;
import java.util.Set;

View File

@@ -0,0 +1,14 @@
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.platform.world.block.Axis;
import com.dfsek.terra.api.platform.world.block.BlockData;
import java.util.Set;
public interface Orientable extends BlockData {
Set<Axis> getAxes();
Axis getAxis();
void setAxis(Axis axis);
}

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockData;
public interface Rail extends BlockData {
Shape getShape();

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.block.BlockFace;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockFace;
import java.util.Set;

View File

@@ -0,0 +1,10 @@
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockFace;
public interface Rotatable extends BlockData {
BlockFace getRotation();
void setRotation(BlockFace face);
}

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
public interface Slab extends Waterlogged {
Type getType();

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
public interface Stairs extends Waterlogged, Directional, Bisected {
Shape getShape();

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.block.BlockFace;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockFace;
public interface Wall extends BlockData, Waterlogged {
boolean isUp();

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.block.data;
package com.dfsek.terra.api.platform.world.block.data;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.platform.world.block.BlockData;
public interface Waterlogged extends BlockData {
boolean isWaterlogged();

View File

@@ -0,0 +1,4 @@
package com.dfsek.terra.api.platform.world.block.state;
public interface BlockState {
}

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.generic.world.vector;
package com.dfsek.terra.api.platform.world.vector;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.generic.world.block.Block;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.block.Block;
public class Location implements Cloneable {
private World world;

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.generic.world.vector;
package com.dfsek.terra.api.platform.world.vector;
import net.jafama.FastMath;

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.generic.world.vector;
package com.dfsek.terra.api.platform.world.vector;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.world.World;
import net.jafama.FastMath;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.biome;
package com.dfsek.terra.api.world.biome;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.world.World;
/**
* Interface to be implemented by a custom generator's Biome enum.<br>
@@ -14,7 +14,7 @@ public interface Biome {
*
* @return Biome - The Vanilla biome.
*/
com.dfsek.terra.api.generic.world.Biome getVanillaBiome();
com.dfsek.terra.api.platform.world.Biome getVanillaBiome();
/**
* Gets the BiomeTerrain instance used to generate the biome.

View File

@@ -1,8 +1,8 @@
package com.dfsek.terra.api.gaea.biome;
package com.dfsek.terra.api.world.biome;
import com.dfsek.terra.api.gaea.generation.GenerationPhase;
import com.dfsek.terra.api.gaea.math.FastNoiseLite;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.world.generation.GenerationPhase;
public abstract class BiomeGrid {
private final FastNoiseLite noiseX;

View File

@@ -1,8 +1,8 @@
package com.dfsek.terra.api.gaea.biome;
package com.dfsek.terra.api.world.biome;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.gaea.tree.Tree;
import com.dfsek.terra.api.gaea.world.Flora;
import com.dfsek.terra.api.world.tree.Tree;
public abstract class Decorator {

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.biome;
package com.dfsek.terra.api.world.biome;
import com.dfsek.terra.api.gaea.math.Interpolator;
import com.dfsek.terra.api.gaea.world.palette.Palette;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.world.palette.Palette;
public abstract class Generator {
/**

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.gaea.biome;
package com.dfsek.terra.api.world.biome;
import net.jafama.FastMath;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.world.carving;
package com.dfsek.terra.api.world.carving;
import com.dfsek.terra.api.gaea.math.MathUtil;
import com.dfsek.terra.api.gaea.util.FastRandom;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import net.jafama.FastMath;
import java.util.Random;

View File

@@ -1,6 +1,6 @@
package com.dfsek.terra.api.gaea.world.carving;
package com.dfsek.terra.api.world.carving;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import net.jafama.FastMath;
import java.util.Random;

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.gaea.generation;
package com.dfsek.terra.api.world.generation;
/**
* The phase of terrain generation. Used for modifying values based on the phase of generation.

View File

@@ -0,0 +1,10 @@
package com.dfsek.terra.api.world.generation;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.World;
import java.util.Random;
public interface TerraBlockPopulator {
void populate(World world, Random random, Chunk chunk);
}

View File

@@ -1,8 +1,9 @@
package com.dfsek.terra.api.generic.generator;
package com.dfsek.terra.api.world.generation;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.BiomeGrid;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.generator.ChunkGenerator;
import com.dfsek.terra.api.platform.world.BiomeGrid;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.config.base.ConfigPack;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.gaea.world.palette;
package com.dfsek.terra.api.world.palette;
import com.dfsek.terra.api.gaea.math.FastNoiseLite;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
@@ -28,7 +28,7 @@ public abstract class Palette<E> {
* @param layers - The number of layers the material occupies.
* @return - BlockPalette instance for chaining.
*/
public com.dfsek.terra.api.gaea.world.palette.Palette<E> add(E m, int layers) {
public com.dfsek.terra.api.world.palette.Palette<E> add(E m, int layers) {
for(int i = 0; i < layers; i++) {
pallet.add(new PaletteLayer<>(m));
}
@@ -42,7 +42,7 @@ public abstract class Palette<E> {
* @param layers - The number of layers the material occupies.
* @return - BlockPalette instance for chaining.
*/
public com.dfsek.terra.api.gaea.world.palette.Palette<E> add(ProbabilityCollection<E> m, int layers) {
public com.dfsek.terra.api.world.palette.Palette<E> add(ProbabilityCollection<E> m, int layers) {
for(int i = 0; i < layers; i++) {
pallet.add(new PaletteLayer<>(m));
}

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.gaea.world.palette;
package com.dfsek.terra.api.world.palette;
import java.util.List;
import java.util.Random;

View File

@@ -1,4 +1,4 @@
package com.dfsek.terra.api.gaea.world.palette;
package com.dfsek.terra.api.world.palette;
import com.dfsek.terra.api.gaea.math.FastNoiseLite;

View File

@@ -0,0 +1,14 @@
package com.dfsek.terra.api.world.tree;
import com.dfsek.terra.api.platform.world.block.MaterialData;
import com.dfsek.terra.api.platform.world.vector.Location;
import java.util.Random;
import java.util.Set;
public interface Tree {
boolean plant(Location l, Random r);
Set<MaterialData> getSpawnable();
}

View File

@@ -1,7 +1,7 @@
package com.dfsek.terra.api.gaea.tree.fractal;
package com.dfsek.terra.api.world.tree.fractal;
import com.dfsek.terra.api.generic.Entity;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.world.vector.Location;
import java.util.function.Consumer;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.tree.fractal;
package com.dfsek.terra.api.world.tree.fractal;
import com.dfsek.terra.api.generic.Entity;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.util.MaterialSet;
import java.util.Random;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.tree.fractal;
package com.dfsek.terra.api.world.tree.fractal;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import java.util.Random;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.util.MaterialSet;
import java.util.Random;

View File

@@ -1,13 +1,13 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.gaea.tree.fractal.TreeGeometry;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.WorldHandle;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.WorldHandle;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.api.world.tree.fractal.TreeGeometry;
import com.dfsek.terra.util.MaterialSet;
import java.util.Random;

View File

@@ -1,11 +1,11 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.gaea.tree.fractal.TreeGeometry;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.api.world.tree.fractal.TreeGeometry;
import com.dfsek.terra.util.MaterialSet;
import net.jafama.FastMath;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.util.MaterialSet;
import java.util.Random;

View File

@@ -1,13 +1,13 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.gaea.tree.fractal.TreeGeometry;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.WorldHandle;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.WorldHandle;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.api.world.tree.fractal.TreeGeometry;
import com.dfsek.terra.util.MaterialSet;
import net.jafama.FastMath;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.util.MaterialSet;
import java.util.Random;

View File

@@ -1,13 +1,13 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.math.ProbabilityCollection;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.gaea.tree.fractal.TreeGeometry;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.WorldHandle;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.WorldHandle;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.api.world.tree.fractal.TreeGeometry;
import com.dfsek.terra.util.MaterialSet;
import net.jafama.FastMath;

View File

@@ -1,11 +1,11 @@
package com.dfsek.terra.api.gaea.tree.fractal.trees;
package com.dfsek.terra.api.world.tree.fractal.trees;
import com.dfsek.terra.api.gaea.tree.fractal.FractalTree;
import com.dfsek.terra.api.gaea.tree.fractal.TreeGeometry;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.block.BlockData;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.block.BlockData;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.api.world.tree.fractal.FractalTree;
import com.dfsek.terra.api.world.tree.fractal.TreeGeometry;
import com.dfsek.terra.util.MaterialSet;
import net.jafama.FastMath;

View File

@@ -1,10 +1,10 @@
package com.dfsek.terra.async;
import com.dfsek.terra.api.gaea.biome.Biome;
import com.dfsek.terra.api.gaea.generation.GenerationPhase;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.api.world.biome.Biome;
import com.dfsek.terra.api.world.generation.GenerationPhase;
import com.dfsek.terra.biome.grid.master.TerraBiomeGrid;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,9 +1,9 @@
package com.dfsek.terra.async;
import com.dfsek.terra.api.generic.TerraPlugin;
import com.dfsek.terra.api.generic.world.World;
import com.dfsek.terra.api.generic.world.vector.Location;
import com.dfsek.terra.api.generic.world.vector.Vector3;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.vector.Location;
import com.dfsek.terra.api.platform.world.vector.Vector3;
import com.dfsek.terra.biome.grid.master.TerraBiomeGrid;
import org.jetbrains.annotations.NotNull;

Some files were not shown because too many files have changed in this diff Show More