cleanup & add entity support

This commit is contained in:
dfsek
2021-01-01 01:50:01 -07:00
parent 8da2b63f31
commit 044aa738a3
36 changed files with 135 additions and 92 deletions
@@ -7,7 +7,6 @@ import com.dfsek.terra.api.lang.Language;
import com.dfsek.terra.api.platform.TerraPlugin;
import com.dfsek.terra.api.platform.block.BlockData;
import com.dfsek.terra.api.platform.block.MaterialData;
import com.dfsek.terra.api.platform.handle.EntityHandle;
import com.dfsek.terra.api.platform.handle.ItemHandle;
import com.dfsek.terra.api.platform.handle.WorldHandle;
import com.dfsek.terra.api.platform.world.World;
@@ -178,11 +177,6 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer {
}
}
@Override
public EntityHandle getEntityHandle() {
return null;
}
Transformer<String, Biome> biomeFixer = new Transformer.Builder<String, Biome>()
.addTransform(id -> BuiltinRegistries.BIOME.get(Identifier.tryParse(id)), new NotNullValidator<>())
.addTransform(id -> BuiltinRegistries.BIOME.get(Identifier.tryParse("minecraft:" + id.toLowerCase())), new NotNullValidator<>()).build();
@@ -5,6 +5,7 @@ import com.dfsek.terra.api.platform.block.BlockData;
import com.dfsek.terra.api.platform.block.MaterialData;
import com.dfsek.terra.api.platform.handle.WorldHandle;
import com.dfsek.terra.api.platform.world.Tree;
import com.dfsek.terra.api.platform.world.entity.EntityType;
import com.dfsek.terra.api.transform.Transformer;
import com.dfsek.terra.fabric.world.block.FabricBlockData;
import com.dfsek.terra.fabric.world.block.FabricMaterialData;
@@ -75,4 +76,9 @@ public class FabricWorldHandle implements WorldHandle {
public Tree getTree(String id) {
return new FabricTree(treeTransformer.translate(id));
}
@Override
public EntityType getEntity(String id) {
return null;
}
}
@@ -1,12 +1,13 @@
package com.dfsek.terra.fabric.world.handles;
import com.dfsek.terra.api.math.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.block.Block;
import com.dfsek.terra.api.platform.generator.ChunkGenerator;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.Tree;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.entity.Entity;
import com.dfsek.terra.api.platform.world.entity.EntityType;
import com.dfsek.terra.fabric.world.block.FabricBlock;
import com.dfsek.terra.fabric.world.handles.chunk.FabricChunk;
import net.minecraft.server.world.ServerWorld;
@@ -14,7 +15,6 @@ import net.minecraft.util.math.BlockPos;
import java.io.File;
import java.util.UUID;
import java.util.function.Consumer;
public class FabricWorld implements World {
@@ -92,8 +92,8 @@ public class FabricWorld implements World {
}
@Override
public void spawn(Location location, Class<Entity> entity, Consumer<Entity> consumer) {
public Entity spawnEntity(Location location, EntityType entityType) {
return null;
}
@Override
@@ -101,7 +101,7 @@ public class FabricWorld implements World {
return null;
}
private final class Handle {
private static final class Handle {
private final ServerWorld world;
private final ChunkGenerator generator;
@@ -1,12 +1,13 @@
package com.dfsek.terra.fabric.world.handles.world;
import com.dfsek.terra.api.math.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.block.Block;
import com.dfsek.terra.api.platform.generator.ChunkGenerator;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.Tree;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.entity.Entity;
import com.dfsek.terra.api.platform.world.entity.EntityType;
import com.dfsek.terra.fabric.world.block.FabricBlock;
import com.dfsek.terra.fabric.world.generator.FabricChunkGenerator;
import net.minecraft.util.math.BlockPos;
@@ -14,7 +15,6 @@ import net.minecraft.world.WorldAccess;
import java.io.File;
import java.util.UUID;
import java.util.function.Consumer;
public class FabricSeededWorldAccess implements World {
@@ -81,8 +81,8 @@ public class FabricSeededWorldAccess implements World {
}
@Override
public void spawn(Location location, Class<Entity> entity, Consumer<Entity> consumer) {
public Entity spawnEntity(Location location, EntityType entityType) {
return null;
}
@Override
@@ -1,12 +1,13 @@
package com.dfsek.terra.fabric.world.handles.world;
import com.dfsek.terra.api.math.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.block.Block;
import com.dfsek.terra.api.platform.generator.ChunkGenerator;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.Tree;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.entity.Entity;
import com.dfsek.terra.api.platform.world.entity.EntityType;
import com.dfsek.terra.fabric.world.block.FabricBlock;
import com.dfsek.terra.fabric.world.generator.FabricChunkGenerator;
import net.minecraft.util.math.BlockPos;
@@ -16,7 +17,6 @@ import net.minecraft.world.WorldAccess;
import java.io.File;
import java.util.UUID;
import java.util.function.Consumer;
public class FabricWorldAccess implements World {
private final WorldAccess delegate;
@@ -82,8 +82,8 @@ public class FabricWorldAccess implements World {
}
@Override
public void spawn(Location location, Class<Entity> entity, Consumer<Entity> consumer) {
public Entity spawnEntity(Location location, EntityType entityType) {
return null;
}
@Override
@@ -1,12 +1,13 @@
package com.dfsek.terra.fabric.world.handles.world;
import com.dfsek.terra.api.math.vector.Location;
import com.dfsek.terra.api.platform.Entity;
import com.dfsek.terra.api.platform.block.Block;
import com.dfsek.terra.api.platform.generator.ChunkGenerator;
import com.dfsek.terra.api.platform.world.Chunk;
import com.dfsek.terra.api.platform.world.Tree;
import com.dfsek.terra.api.platform.world.World;
import com.dfsek.terra.api.platform.world.entity.Entity;
import com.dfsek.terra.api.platform.world.entity.EntityType;
import com.dfsek.terra.fabric.world.block.FabricBlock;
import com.dfsek.terra.fabric.world.generator.FabricChunkGenerator;
import net.minecraft.util.math.BlockPos;
@@ -14,7 +15,6 @@ import net.minecraft.world.ChunkRegion;
import java.io.File;
import java.util.UUID;
import java.util.function.Consumer;
public class FabricWorldChunkRegion implements World {
private final Handle delegate;
@@ -91,8 +91,8 @@ public class FabricWorldChunkRegion implements World {
}
@Override
public void spawn(Location location, Class<Entity> entity, Consumer<Entity> consumer) {
public Entity spawnEntity(Location location, EntityType entityType) {
return null;
}
@Override