diff --git a/src/main/java/com/minelittlepony/unicopia/block/GrowableBlock.java b/src/main/java/com/minelittlepony/unicopia/block/GrowableBlock.java new file mode 100644 index 00000000..06357dfb --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/GrowableBlock.java @@ -0,0 +1,68 @@ +package com.minelittlepony.unicopia.block; + +import java.util.function.Supplier; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.SnowBlock; +import net.minecraft.block.SpreadableBlock; +import net.minecraft.registry.tag.FluidTags; +import net.minecraft.server.world.ServerWorld; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.util.math.random.Random; +import net.minecraft.world.WorldView; +import net.minecraft.world.chunk.light.ChunkLightProvider; + +public class GrowableBlock extends SpreadableBlock { + + private final Supplier dead; + + protected GrowableBlock(Settings settings, Supplier converted) { + super(settings); + this.dead = converted; + } + + @Override + public void randomTick(BlockState state, ServerWorld world, BlockPos pos, Random random) { + if (!canSurvive(state, world, pos)) { + world.setBlockState(pos, dead.get().getDefaultState()); + return; + } + + if (world.getLightLevel(pos.up()) >= 9) { + BlockState blockState = getDefaultState(); + for (int i = 0; i < 4; i++) { + BlockPos blockPos = pos.add( + random.nextInt(3) - 1, + random.nextInt(5) - 3, + random.nextInt(3) - 1 + ); + + if (canSpread(blockState, world, blockPos)) { + world.setBlockState(blockPos, blockState.with(SNOWY, world.getBlockState(blockPos.up()).isOf(Blocks.SNOW))); + } + } + } + } + + private boolean canSpread(BlockState state, WorldView world, BlockPos pos) { + return world.getBlockState(pos).isOf(dead.get()) + && !world.getFluidState(pos.up()).isIn(FluidTags.WATER) + && canSurvive(state, world, pos); + } + + private boolean canSurvive(BlockState state, WorldView world, BlockPos pos) { + BlockPos above = pos.up(); + BlockState stateAbove = world.getBlockState(above); + if (stateAbove.isOf(Blocks.SNOW) && stateAbove.get(SnowBlock.LAYERS) == 1) { + return true; + } + if (stateAbove.getFluidState().getLevel() == 8) { + return false; + } + + return ChunkLightProvider.getRealisticOpacity(world, state, pos, stateAbove, above, Direction.UP, stateAbove.getOpacity(world, above)) < world.getMaxLightLevel(); + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/OrientedBlock.java b/src/main/java/com/minelittlepony/unicopia/block/OrientedBlock.java new file mode 100644 index 00000000..270b4992 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/OrientedBlock.java @@ -0,0 +1,35 @@ +package com.minelittlepony.unicopia.block; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.FacingBlock; +import net.minecraft.item.ItemPlacementContext; +import net.minecraft.state.StateManager; +import net.minecraft.util.BlockMirror; +import net.minecraft.util.BlockRotation; + +public class OrientedBlock extends FacingBlock { + protected OrientedBlock(Settings settings) { + super(settings); + } + + @Override + protected void appendProperties(StateManager.Builder builder) { + builder.add(FACING); + } + + @Override + public BlockState rotate(BlockState state, BlockRotation rotation) { + return state.with(FACING, rotation.rotate(state.get(FACING))); + } + + @Override + public BlockState mirror(BlockState state, BlockMirror mirror) { + return state.rotate(mirror.getRotation(state.get(FACING))); + } + + @Override + public BlockState getPlacementState(ItemPlacementContext ctx) { + return getDefaultState().with(FACING, ctx.getPlayerLookDirection().getOpposite()); + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java index 8420c3df..a63171f0 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java @@ -113,6 +113,13 @@ public interface UBlocks { () -> UItems.APPLE_PIE_HOOF )); + Block CHITIN = register("chitin", new SnowyBlock(Settings.create().mapColor(MapColor.PALE_PURPLE).hardness(5).requiresTool().ticksRandomly()), ItemGroups.NATURAL); + Block SURFACE_CHITIN = register("surface_chitin", new GrowableBlock(Settings.copy(CHITIN), () -> CHITIN), ItemGroups.NATURAL); + Block CHISELLED_CHITIN = register("chiselled_chitin", new Block(Settings.create().mapColor(MapColor.PALE_PURPLE).hardness(5).requiresTool()), ItemGroups.BUILDING_BLOCKS); + Block CHISELLED_CHITIN_SLAB = register("chiselled_chitin_slab", new SlabBlock(Settings.copy(CHISELLED_CHITIN)), ItemGroups.BUILDING_BLOCKS); + Block CHISELLED_CHITIN_STAIRS = register("chiselled_chitin_stairs", new StairsBlock(CHISELLED_CHITIN.getDefaultState(), Settings.copy(CHISELLED_CHITIN)), ItemGroups.BUILDING_BLOCKS); + Block CHISELLED_CHITIN_HULL = register("chiselled_chitin_hull", new OrientedBlock(Settings.copy(CHISELLED_CHITIN)), ItemGroups.BUILDING_BLOCKS); + SegmentedCropBlock OATS = register("oats", SegmentedCropBlock.create(11, 5, AbstractBlock.Settings.copy(Blocks.WHEAT), () -> UItems.OAT_SEEDS, null, null)); SegmentedCropBlock OATS_STEM = register("oats_stem", OATS.createNext(5)); SegmentedCropBlock OATS_CROWN = register("oats_crown", OATS_STEM.createNext(5)); diff --git a/src/main/java/com/minelittlepony/unicopia/item/UItems.java b/src/main/java/com/minelittlepony/unicopia/item/UItems.java index 12d0137e..041811ca 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/UItems.java +++ b/src/main/java/com/minelittlepony/unicopia/item/UItems.java @@ -160,12 +160,16 @@ public interface UItems { GlassesItem SUNGLASSES = register("sunglasses", new GlassesItem(new FabricItemSettings().maxCount(1)), ItemGroups.COMBAT); GlassesItem BROKEN_SUNGLASSES = register("broken_sunglasses", new GlassesItem(new FabricItemSettings().maxCount(1)), ItemGroups.COMBAT); + + Item CARAPACE = register("carapace", new Item(new Item.Settings()), ItemGroups.INGREDIENTS); + Item ALICORN_BADGE = register(Race.ALICORN); Item PEGASUS_BADGE = register(Race.PEGASUS); Item UNICORN_BADGE = register(Race.UNICORN); Item EARTH_BADGE = register(Race.EARTH); Item BAT_BADGE = register(Race.BAT); Item CHANGELING_BADGE = register(Race.CHANGELING); + Item KIRIN_BADGE = register(Race.KIRIN); private static T register(String name, T item, RegistryKey group) { return ItemGroupRegistry.register(Unicopia.id(name), item, group); diff --git a/src/main/resources/assets/unicopia/blockstates/chiselled_chitin.json b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin.json new file mode 100644 index 00000000..43572cd5 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "unicopia:block/chiselled_chitin" } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_hull.json b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_hull.json new file mode 100644 index 00000000..029574bf --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_hull.json @@ -0,0 +1,10 @@ +{ + "variants": { + "facing=up": { "model": "unicopia:block/chiselled_chitin_hull" }, + "facing=down": { "model": "unicopia:block/chiselled_chitin_hull", "x": 180 }, + "facing=north": { "model": "unicopia:block/chiselled_chitin_hull", "x": 90 }, + "facing=south": { "model": "unicopia:block/chiselled_chitin_hull", "x": -90 }, + "facing=east": { "model": "unicopia:block/chiselled_chitin_hull", "x": 90, "y": 90 }, + "facing=west": { "model": "unicopia:block/chiselled_chitin_hull", "x": 90, "y": -90 } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_slab.json b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_slab.json new file mode 100644 index 00000000..7a14a2e3 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_slab.json @@ -0,0 +1,7 @@ +{ + "variants": { + "type=double": { "model": "unicopia:block/chiselled_chitin" }, + "type=bottom": { "model": "unicopia:block/chiselled_chitin_slab" }, + "type=top": { "model": "unicopia:block/chiselled_chitin_slab_top" } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_stairs.json b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_stairs.json new file mode 100644 index 00000000..745db71e --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/chiselled_chitin_stairs.json @@ -0,0 +1,209 @@ +{ + "variants": { + "facing=east,half=bottom,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner" + }, + "facing=east,half=bottom,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer" + }, + "facing=east,half=bottom,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs" + }, + "facing=east,half=top,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "x": 180 + }, + "facing=north,half=bottom,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "y": 270 + }, + "facing=north,half=top,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=south,half=bottom,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner" + }, + "facing=south,half=bottom,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer" + }, + "facing=south,half=bottom,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "y": 90 + }, + "facing=south,half=top,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "y": 180 + }, + "facing=west,half=top,shape=inner_left": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=inner_right": { + "model": "unicopia:block/chiselled_chitin_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=outer_left": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=outer_right": { + "model": "unicopia:block/chiselled_chitin_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=straight": { + "model": "unicopia:block/chiselled_chitin_stairs", + "uvlock": true, + "x": 180, + "y": 180 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/chitin.json b/src/main/resources/assets/unicopia/blockstates/chitin.json new file mode 100644 index 00000000..8fac9db2 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/chitin.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "unicopia:block/chitin" } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/surface_chitin.json b/src/main/resources/assets/unicopia/blockstates/surface_chitin.json new file mode 100644 index 00000000..4e5765a5 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/surface_chitin.json @@ -0,0 +1,6 @@ +{ + "variants": { + "snowy=false": { "model": "unicopia:block/surface_chitin" }, + "snowy=true": { "model": "unicopia:block/surface_chitin_snowy" } + } +} diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index 65be0c75..4561147d 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -99,6 +99,8 @@ "item.unicopia.pineapple_crown": "Pineapple Crown", "item.unicopia.sunglasses": "Sunglasses", "item.unicopia.broken_sunglasses": "Broken Sunglasses", + + "item.unicopia.carapace": "Carapace", "item.unicopia.pebbles": "Pebbles", "item.unicopia.rock": "Rock", @@ -203,6 +205,13 @@ "block.unicopia.sour_apple_leaves": "Sour Apple Leaves", "block.unicopia.sour_apple_sapling": "Sour Apple Sapling", "block.unicopia.sour_apple_sprout": "Sour Apple Sprout", + + "block.unicopia.surface_chitin": "Surface Chitin", + "block.unicopia.chitin": "Chitin", + "block.unicopia.chiselled_chitin": "Chiselled Chitin", + "block.unicopia.chiselled_chitin_hull": "Chiselled Chitin Hull", + "block.unicopia.chiselled_chitin_slab": "Chiselled Chitin Slab", + "block.unicopia.chiselled_chitin_stairs": "Chiselled Chitin Stairs", "block.unicopia.oats": "Oats", "block.unicopia.oats_stem": "Oats", diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin.json new file mode 100644 index 00000000..273816c3 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "unicopia:block/chiselled_chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin_hull.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_hull.json new file mode 100644 index 00000000..1cd1744f --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_hull.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "unicopia:block/chitin", + "top": "unicopia:block/chiselled_chitin", + "side": "unicopia:block/chiselled_chitin_half" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab.json new file mode 100644 index 00000000..dd575f47 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab", + "textures": { + "bottom": "unicopia:block/chiselled_chitin", + "side": "unicopia:block/chiselled_chitin", + "top": "unicopia:block/chiselled_chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab_top.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab_top.json new file mode 100644 index 00000000..98b9981a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab_top.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab_top", + "textures": { + "bottom": "unicopia:block/chiselled_chitin", + "side": "unicopia:block/chiselled_chitin", + "top": "unicopia:block/chiselled_chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs.json new file mode 100644 index 00000000..cee4a924 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/stairs", + "textures": { + "bottom": "unicopia:block/chiselled_chitin", + "side": "unicopia:block/chiselled_chitin", + "top": "unicopia:block/chiselled_chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_inner.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_inner.json new file mode 100644 index 00000000..da6801d3 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_inner.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/inner_stairs", + "textures": { + "bottom": "unicopia:block/chiselled_chitin", + "side": "unicopia:block/chiselled_chitin", + "top": "unicopia:block/chiselled_chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_outer.json b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_outer.json new file mode 100644 index 00000000..4a74f8c5 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_outer.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/outer_stairs", + "textures": { + "bottom": "unicopia:block/chiselled_chitin", + "side": "unicopia:block/chiselled_chitin", + "top": "unicopia:block/chiselled_chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/chitin.json b/src/main/resources/assets/unicopia/models/block/chitin.json new file mode 100644 index 00000000..7771bdc7 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/chitin.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "unicopia:block/chitin_bottom", + "top": "unicopia:block/chitin", + "side": "unicopia:block/chitin" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/surface_chitin.json b/src/main/resources/assets/unicopia/models/block/surface_chitin.json new file mode 100644 index 00000000..ea258e39 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/surface_chitin.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "unicopia:block/chitin_bottom", + "top": "unicopia:block/chitin_top", + "side": "unicopia:block/chitin_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/surface_chitin_snowy.json b/src/main/resources/assets/unicopia/models/block/surface_chitin_snowy.json new file mode 100644 index 00000000..e7e877d6 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/surface_chitin_snowy.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "unicopia:block/chitin", + "top": "unicopia:block/chitin_top", + "side": "unicopia:block/chitin_side_snow_covered" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/carapace.json b/src/main/resources/assets/unicopia/models/item/carapace.json new file mode 100644 index 00000000..80305a4a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/carapace.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/carapace" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/chiselled_chitin.json b/src/main/resources/assets/unicopia/models/item/chiselled_chitin.json new file mode 100644 index 00000000..bfa56e41 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/chiselled_chitin.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/chiselled_chitin" +} diff --git a/src/main/resources/assets/unicopia/models/item/chiselled_chitin_hull.json b/src/main/resources/assets/unicopia/models/item/chiselled_chitin_hull.json new file mode 100644 index 00000000..a99a7ffc --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/chiselled_chitin_hull.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/chiselled_chitin_hull" +} diff --git a/src/main/resources/assets/unicopia/models/item/chiselled_chitin_slab.json b/src/main/resources/assets/unicopia/models/item/chiselled_chitin_slab.json new file mode 100644 index 00000000..ab11af9e --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/chiselled_chitin_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/chiselled_chitin_slab" +} diff --git a/src/main/resources/assets/unicopia/models/item/chiselled_chitin_stairs.json b/src/main/resources/assets/unicopia/models/item/chiselled_chitin_stairs.json new file mode 100644 index 00000000..cb467c88 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/chiselled_chitin_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/chiselled_chitin_stairs" +} diff --git a/src/main/resources/assets/unicopia/models/item/chitin.json b/src/main/resources/assets/unicopia/models/item/chitin.json new file mode 100644 index 00000000..ad7a596a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/chitin.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/chitin" +} diff --git a/src/main/resources/assets/unicopia/models/item/surface_chitin.json b/src/main/resources/assets/unicopia/models/item/surface_chitin.json new file mode 100644 index 00000000..aa4ca0bf --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/surface_chitin.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/surface_chitin" +} diff --git a/src/main/resources/assets/unicopia/textures/block/chiselled_chitin.png b/src/main/resources/assets/unicopia/textures/block/chiselled_chitin.png new file mode 100644 index 00000000..737bdd46 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chiselled_chitin.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chiselled_chitin_half.png b/src/main/resources/assets/unicopia/textures/block/chiselled_chitin_half.png new file mode 100644 index 00000000..d76f25f8 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chiselled_chitin_half.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chitin.png b/src/main/resources/assets/unicopia/textures/block/chitin.png new file mode 100644 index 00000000..52d21de3 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chitin.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chitin_bottom.png b/src/main/resources/assets/unicopia/textures/block/chitin_bottom.png new file mode 100644 index 00000000..93b2bbf6 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chitin_bottom.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chitin_side.png b/src/main/resources/assets/unicopia/textures/block/chitin_side.png new file mode 100644 index 00000000..03d7023f Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chitin_side.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chitin_side_snow_covered.png b/src/main/resources/assets/unicopia/textures/block/chitin_side_snow_covered.png new file mode 100644 index 00000000..d6c9aabc Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chitin_side_snow_covered.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chitin_spikes.png b/src/main/resources/assets/unicopia/textures/block/chitin_spikes.png new file mode 100644 index 00000000..4ce1b60a Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chitin_spikes.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/chitin_top.png b/src/main/resources/assets/unicopia/textures/block/chitin_top.png new file mode 100644 index 00000000..7a4382b2 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/chitin_top.png differ diff --git a/src/main/resources/assets/unicopia/textures/block/weathered_chitin.png b/src/main/resources/assets/unicopia/textures/block/weathered_chitin.png new file mode 100644 index 00000000..6f1e1a72 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/block/weathered_chitin.png differ diff --git a/src/main/resources/assets/unicopia/textures/item/carapace.png b/src/main/resources/assets/unicopia/textures/item/carapace.png new file mode 100644 index 00000000..a30eccd7 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/item/carapace.png differ diff --git a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json index 33b2825f..a53b9f67 100644 --- a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json +++ b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -3,6 +3,10 @@ "values": [ "unicopia:rocks", "unicopia:frosted_obsidian", - "unicopia:weather_vane" + "unicopia:weather_vane", + "unicopia:chiselled_chitin", + "unicopia:chiselled_chitin_slab", + "unicopia:chiselled_chitin_stairs", + "unicopia:chiselled_chitin_hull" ] } diff --git a/src/main/resources/data/minecraft/tags/blocks/mineable/shovel.json b/src/main/resources/data/minecraft/tags/blocks/mineable/shovel.json new file mode 100644 index 00000000..07ee6166 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/mineable/shovel.json @@ -0,0 +1,7 @@ +{ + "replace": false, + "values": [ + "unicopia:chitin", + "unicopia:surface_chitin" + ] +} diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin.json b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin.json new file mode 100644 index 00000000..bfeaa8b1 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:chiselled_chitin" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_hull.json b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_hull.json new file mode 100644 index 00000000..5af0f74d --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_hull.json @@ -0,0 +1,49 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:chitin", + "functions": [ + { + "add": false, + "count": 2, + "function": "minecraft:set_count" + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + }, + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:chiselled_chitin", + "functions": [ + { + "add": false, + "count": 2, + "function": "minecraft:set_count" + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_slab.json b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_slab.json new file mode 100644 index 00000000..0e262fa8 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_slab.json @@ -0,0 +1,36 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:chiselled_chitin_slab", + "functions": [ + { + "add": false, + "count": 2, + "function": "minecraft:set_count", + "conditions": [ + { + "block": "unicopia:chiselled_chitin_slab", + "condition": "minecraft:block_state_property", + "properties": { + "type": "double" + } + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_stairs.json b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_stairs.json new file mode 100644 index 00000000..a3afe157 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_stairs.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:chiselled_chitin_stairs" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/chitin.json b/src/main/resources/data/unicopia/loot_tables/blocks/chitin.json new file mode 100644 index 00000000..3d92ed3d --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/chitin.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:carapace", + "functions": [ + { + "add": false, + "count": 9, + "function": "minecraft:set_count" + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/surface_chitin.json b/src/main/resources/data/unicopia/loot_tables/blocks/surface_chitin.json new file mode 100644 index 00000000..3d92ed3d --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/surface_chitin.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:carapace", + "functions": [ + { + "add": false, + "count": 9, + "function": "minecraft:set_count" + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/recipes/chiselled_chitin.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin.json new file mode 100644 index 00000000..66888165 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/chiselled_chitin.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "##" + ], + "key": { + "#": [ + { "item": "unicopia:chitin" } + ] + }, + "result": { "item": "unicopia:chiselled_chitin", "count": 4 } +} diff --git a/src/main/resources/data/unicopia/recipes/chiselled_chitin_hull.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin_hull.json new file mode 100644 index 00000000..30b4a65e --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/chiselled_chitin_hull.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "%%" + ], + "key": { + "#": [ + { "item": "unicopia:chiselled_chitin" } + ], + "%": [ + { "item": "unicopia:chitin" } + ] + }, + "result": { "item": "unicopia:chiselled_chitin_hull", "count": 4 } +} diff --git a/src/main/resources/data/unicopia/recipes/chiselled_chitin_slab.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin_slab.json new file mode 100644 index 00000000..b5a25d9d --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/chiselled_chitin_slab.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###" + ], + "key": { + "#": [ + { "item": "unicopia:chiselled_chitin" } + ] + }, + "result": { "item": "unicopia:chiselled_chitin_slab", "count": 6 } +} diff --git a/src/main/resources/data/unicopia/recipes/chiselled_chitin_stairs.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin_stairs.json new file mode 100644 index 00000000..e74fdbd8 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/chiselled_chitin_stairs.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "# ", + "## ", + "###" + ], + "key": { + "#": [ + { "item": "unicopia:chiselled_chitin" } + ] + }, + "result": { "item": "unicopia:chiselled_chitin_stairs", "count": 4 } +} diff --git a/src/main/resources/data/unicopia/recipes/chitin.json b/src/main/resources/data/unicopia/recipes/chitin.json new file mode 100644 index 00000000..c3509060 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/chitin.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "###", + "###", + "###" + ], + "key": { + "#": [ + { "item": "unicopia:carapace" } + ] + }, + "result": { "item": "unicopia:chitin", "count": 1 } +} diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive.nbt new file mode 100644 index 00000000..d55e34ba Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber1.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber1.nbt new file mode 100644 index 00000000..2e88ffa8 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber1.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber2.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber2.nbt new file mode 100644 index 00000000..edf37505 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber2.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber3.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber3.nbt new file mode 100644 index 00000000..20dce2b3 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber3.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_descent1.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_descent1.nbt new file mode 100644 index 00000000..3ce85b23 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_descent1.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot1.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot1.nbt new file mode 100644 index 00000000..93253c64 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot1.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow.nbt new file mode 100644 index 00000000..c0923fc7 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow2.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow2.nbt new file mode 100644 index 00000000..76158a45 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow2.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_transition.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_transition.nbt new file mode 100644 index 00000000..ab2b57e4 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_transition.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft1.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft1.nbt new file mode 100644 index 00000000..78ae2761 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft1.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft2.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft2.nbt new file mode 100644 index 00000000..ccfc0ff2 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft2.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft_bottom.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft_bottom.nbt new file mode 100644 index 00000000..4a52f5ba Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft_bottom.nbt differ diff --git a/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_tunnel_termination1.nbt b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_tunnel_termination1.nbt new file mode 100644 index 00000000..0cab43f9 Binary files /dev/null and b/src/main/resources/data/unicopia/structures/abandoned_changeling_hive_tunnel_termination1.nbt differ diff --git a/src/main/resources/data/unicopia/tags/items/groups/changeling.json b/src/main/resources/data/unicopia/tags/items/groups/changeling.json index 2b69ef00..9728ca5c 100644 --- a/src/main/resources/data/unicopia/tags/items/groups/changeling.json +++ b/src/main/resources/data/unicopia/tags/items/groups/changeling.json @@ -1,6 +1,13 @@ { "replace": false, "values": [ + "unicopia:carapace", + "unicopia:surface_chitin", + "unicopia:chitin", + "unicopia:chiselled_chitin", + "unicopia:chiselled_chitin_slab", + "unicopia:chiselled_chitin_stairs", + "unicopia:chiselled_chitin_hull", "#unicopia:food_types/cooked_meat", "#unicopia:food_types/raw_meat", "#unicopia:food_types/raw_insect", diff --git a/src/main/resources/data/unicopia/worldgen/structure/abandoned_changeling_hive.json b/src/main/resources/data/unicopia/worldgen/structure/abandoned_changeling_hive.json new file mode 100644 index 00000000..a392f5a0 --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/structure/abandoned_changeling_hive.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:jigsaw", + "biomes": "#minecraft:is_forest", + "max_distance_from_center": 112, + "project_start_to_heightmap": "WORLD_SURFACE_WG", + "size": 7, + "spawn_overrides": {}, + "start_height": { + "absolute": -6 + }, + "start_pool": "unicopia:changeling_hive/start", + "step": "underground_decoration", + "terrain_adaptation": "beard_box", + "use_expansion_hack": false +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/worldgen/structure_set/changeling_hives.json b/src/main/resources/data/unicopia/worldgen/structure_set/changeling_hives.json new file mode 100644 index 00000000..ded298d2 --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/structure_set/changeling_hives.json @@ -0,0 +1,14 @@ +{ + "placement": { + "type": "minecraft:random_spread", + "salt": 54138171, + "separation": 62, + "spacing": 84 + }, + "structures": [ + { + "structure": "unicopia:abandoned_changeling_hive", + "weight": 1 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/hidden_entrances.json b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/hidden_entrances.json new file mode 100644 index 00000000..9dd6d8a0 --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/hidden_entrances.json @@ -0,0 +1,38 @@ +{ + "elements": [ + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_chamber1", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_chamber2", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_chamber3", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + } + ], + "fallback": "minecraft:empty" +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/shafts.json b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/shafts.json new file mode 100644 index 00000000..d4582b51 --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/shafts.json @@ -0,0 +1,38 @@ +{ + "elements": [ + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_shaft1", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_shaft2", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_shaft_bottom", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 9 + } + ], + "fallback": "minecraft:empty" +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/side_passages.json b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/side_passages.json new file mode 100644 index 00000000..198596ea --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/side_passages.json @@ -0,0 +1,71 @@ +{ + "elements": [ + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_offshoot1", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 9 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_offshoot_elbow", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 2 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_offshoot_elbow2", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 2 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_chamber1", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_chamber2", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_chamber3", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + } + ], + "fallback": "minecraft:empty" +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/start.json b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/start.json new file mode 100644 index 00000000..8331789b --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/start.json @@ -0,0 +1,16 @@ +{ + "elements": [ + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + } + ], + "fallback": "minecraft:empty" +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/tunnels.json b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/tunnels.json new file mode 100644 index 00000000..5132ce72 --- /dev/null +++ b/src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/tunnels.json @@ -0,0 +1,38 @@ +{ + "elements": [ + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_tunnel_termination1", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_offshoot_transition", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 2 + }, + { + "element": { + "element_type": "minecraft:single_pool_element", + "location": "unicopia:abandoned_changeling_hive_descent1", + "processors": { + "processors": [] + }, + "projection": "rigid" + }, + "weight": 1 + } + ], + "fallback": "minecraft:empty" +} \ No newline at end of file