From 2f6ef0d9cfbc10877a66e23b879adb1fee69d670 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 12 Oct 2023 23:57:31 +0100 Subject: [PATCH] Added changeling hive structures, carapace, and chitin --- .../unicopia/block/GrowableBlock.java | 68 ++++++ .../unicopia/block/OrientedBlock.java | 35 +++ .../unicopia/block/UBlocks.java | 7 + .../minelittlepony/unicopia/item/UItems.java | 4 + .../blockstates/chiselled_chitin.json | 5 + .../blockstates/chiselled_chitin_hull.json | 10 + .../blockstates/chiselled_chitin_slab.json | 7 + .../blockstates/chiselled_chitin_stairs.json | 209 ++++++++++++++++++ .../assets/unicopia/blockstates/chitin.json | 5 + .../unicopia/blockstates/surface_chitin.json | 6 + .../resources/assets/unicopia/lang/en_us.json | 9 + .../models/block/chiselled_chitin.json | 6 + .../models/block/chiselled_chitin_hull.json | 8 + .../models/block/chiselled_chitin_slab.json | 8 + .../block/chiselled_chitin_slab_top.json | 8 + .../models/block/chiselled_chitin_stairs.json | 8 + .../block/chiselled_chitin_stairs_inner.json | 8 + .../block/chiselled_chitin_stairs_outer.json | 8 + .../assets/unicopia/models/block/chitin.json | 8 + .../unicopia/models/block/surface_chitin.json | 8 + .../models/block/surface_chitin_snowy.json | 8 + .../assets/unicopia/models/item/carapace.json | 6 + .../models/item/chiselled_chitin.json | 3 + .../models/item/chiselled_chitin_hull.json | 3 + .../models/item/chiselled_chitin_slab.json | 3 + .../models/item/chiselled_chitin_stairs.json | 3 + .../assets/unicopia/models/item/chitin.json | 3 + .../unicopia/models/item/surface_chitin.json | 3 + .../textures/block/chiselled_chitin.png | Bin 0 -> 3365 bytes .../textures/block/chiselled_chitin_half.png | Bin 0 -> 3368 bytes .../assets/unicopia/textures/block/chitin.png | Bin 0 -> 3344 bytes .../unicopia/textures/block/chitin_bottom.png | Bin 0 -> 4775 bytes .../unicopia/textures/block/chitin_side.png | Bin 0 -> 7081 bytes .../block/chitin_side_snow_covered.png | Bin 0 -> 7087 bytes .../unicopia/textures/block/chitin_spikes.png | Bin 0 -> 3391 bytes .../unicopia/textures/block/chitin_top.png | Bin 0 -> 7064 bytes .../textures/block/weathered_chitin.png | Bin 0 -> 3488 bytes .../unicopia/textures/item/carapace.png | Bin 0 -> 3224 bytes .../tags/blocks/mineable/pickaxe.json | 6 +- .../tags/blocks/mineable/shovel.json | 7 + .../loot_tables/blocks/chiselled_chitin.json | 20 ++ .../blocks/chiselled_chitin_hull.json | 49 ++++ .../blocks/chiselled_chitin_slab.json | 36 +++ .../blocks/chiselled_chitin_stairs.json | 20 ++ .../unicopia/loot_tables/blocks/chitin.json | 27 +++ .../loot_tables/blocks/surface_chitin.json | 27 +++ .../unicopia/recipes/chiselled_chitin.json | 13 ++ .../recipes/chiselled_chitin_hull.json | 16 ++ .../recipes/chiselled_chitin_slab.json | 12 + .../recipes/chiselled_chitin_stairs.json | 14 ++ .../data/unicopia/recipes/chitin.json | 14 ++ .../structures/abandoned_changeling_hive.nbt | Bin 0 -> 4304 bytes .../abandoned_changeling_hive_chamber1.nbt | Bin 0 -> 2440 bytes .../abandoned_changeling_hive_chamber2.nbt | Bin 0 -> 2370 bytes .../abandoned_changeling_hive_chamber3.nbt | Bin 0 -> 2251 bytes .../abandoned_changeling_hive_descent1.nbt | Bin 0 -> 1459 bytes .../abandoned_changeling_hive_offshoot1.nbt | Bin 0 -> 650 bytes ...andoned_changeling_hive_offshoot_elbow.nbt | Bin 0 -> 692 bytes ...ndoned_changeling_hive_offshoot_elbow2.nbt | Bin 0 -> 873 bytes ...ed_changeling_hive_offshoot_transition.nbt | Bin 0 -> 686 bytes .../abandoned_changeling_hive_shaft1.nbt | Bin 0 -> 701 bytes .../abandoned_changeling_hive_shaft2.nbt | Bin 0 -> 703 bytes ...abandoned_changeling_hive_shaft_bottom.nbt | Bin 0 -> 562 bytes ...ed_changeling_hive_tunnel_termination1.nbt | Bin 0 -> 1217 bytes .../tags/items/groups/changeling.json | 7 + .../structure/abandoned_changeling_hive.json | 15 ++ .../structure_set/changeling_hives.json | 14 ++ .../changeling_hive/hidden_entrances.json | 38 ++++ .../template_pool/changeling_hive/shafts.json | 38 ++++ .../changeling_hive/side_passages.json | 71 ++++++ .../template_pool/changeling_hive/start.json | 16 ++ .../changeling_hive/tunnels.json | 38 ++++ 72 files changed, 964 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/minelittlepony/unicopia/block/GrowableBlock.java create mode 100644 src/main/java/com/minelittlepony/unicopia/block/OrientedBlock.java create mode 100644 src/main/resources/assets/unicopia/blockstates/chiselled_chitin.json create mode 100644 src/main/resources/assets/unicopia/blockstates/chiselled_chitin_hull.json create mode 100644 src/main/resources/assets/unicopia/blockstates/chiselled_chitin_slab.json create mode 100644 src/main/resources/assets/unicopia/blockstates/chiselled_chitin_stairs.json create mode 100644 src/main/resources/assets/unicopia/blockstates/chitin.json create mode 100644 src/main/resources/assets/unicopia/blockstates/surface_chitin.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin_hull.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin_slab_top.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_inner.json create mode 100644 src/main/resources/assets/unicopia/models/block/chiselled_chitin_stairs_outer.json create mode 100644 src/main/resources/assets/unicopia/models/block/chitin.json create mode 100644 src/main/resources/assets/unicopia/models/block/surface_chitin.json create mode 100644 src/main/resources/assets/unicopia/models/block/surface_chitin_snowy.json create mode 100644 src/main/resources/assets/unicopia/models/item/carapace.json create mode 100644 src/main/resources/assets/unicopia/models/item/chiselled_chitin.json create mode 100644 src/main/resources/assets/unicopia/models/item/chiselled_chitin_hull.json create mode 100644 src/main/resources/assets/unicopia/models/item/chiselled_chitin_slab.json create mode 100644 src/main/resources/assets/unicopia/models/item/chiselled_chitin_stairs.json create mode 100644 src/main/resources/assets/unicopia/models/item/chitin.json create mode 100644 src/main/resources/assets/unicopia/models/item/surface_chitin.json create mode 100644 src/main/resources/assets/unicopia/textures/block/chiselled_chitin.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chiselled_chitin_half.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chitin.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chitin_bottom.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chitin_side.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chitin_side_snow_covered.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chitin_spikes.png create mode 100644 src/main/resources/assets/unicopia/textures/block/chitin_top.png create mode 100644 src/main/resources/assets/unicopia/textures/block/weathered_chitin.png create mode 100644 src/main/resources/assets/unicopia/textures/item/carapace.png create mode 100644 src/main/resources/data/minecraft/tags/blocks/mineable/shovel.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_hull.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_slab.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/chiselled_chitin_stairs.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/chitin.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/surface_chitin.json create mode 100644 src/main/resources/data/unicopia/recipes/chiselled_chitin.json create mode 100644 src/main/resources/data/unicopia/recipes/chiselled_chitin_hull.json create mode 100644 src/main/resources/data/unicopia/recipes/chiselled_chitin_slab.json create mode 100644 src/main/resources/data/unicopia/recipes/chiselled_chitin_stairs.json create mode 100644 src/main/resources/data/unicopia/recipes/chitin.json create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber1.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber2.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_chamber3.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_descent1.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot1.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_elbow2.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_offshoot_transition.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft1.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft2.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_shaft_bottom.nbt create mode 100644 src/main/resources/data/unicopia/structures/abandoned_changeling_hive_tunnel_termination1.nbt create mode 100644 src/main/resources/data/unicopia/worldgen/structure/abandoned_changeling_hive.json create mode 100644 src/main/resources/data/unicopia/worldgen/structure_set/changeling_hives.json create mode 100644 src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/hidden_entrances.json create mode 100644 src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/shafts.json create mode 100644 src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/side_passages.json create mode 100644 src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/start.json create mode 100644 src/main/resources/data/unicopia/worldgen/template_pool/changeling_hive/tunnels.json 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 0000000000000000000000000000000000000000..737bdd4632566ea70677ce6f9dfe61d5497f20c0 GIT binary patch literal 3365 zcmV+=4chXFP)uJ@VVD_UC<6{NG_fI~0ue<-1QkJoA_k0xBC#Thg@9ne9*`iQ#9$Or zQF$}6R&?d%y_c8YA7_1QpS|}zXYYO1x&V;8{kgn!SPFnNo`4_X6{c}T{8k*B#$jdxfFg<9uYy1K45IaYvHg`_dOZM)Sy63ve6hvv z1)yUy0P^?0*fb9UASvow`@mQCp^4`uNg&9uGcn1|&Nk+9SjOUl{-OWr@Hh0;_l(8q z{wNRKos+;6rV8ldy0Owz(}jF`W(JeRp&R{qi2rfmU!TJ;gp(Kmm5I1s5m_f-n#TRsj}B0%?E`vOzxB2#P=n*a3EfYETOrKoe*ICqM@{4K9Go;5xVgZi5G4 z1dM~{UdP6d+Yd3o?MrAqM0Kc|iV92owdyL5UC#5<>aVCa44|hpM4E zs0sQWIt5*Tu0n&*J!lk~f_{hI!w5`*sjxDv4V%CW*ah~3!{C*0BD@;TgA3v9a1~q+ zAA{TB3-ERLHar49hi4Ih5D^-ph8Q6X#0?2VqLBoIkE}zAkxHZUgRb+f=nat zP#6>iMMoK->`~sRLq)(kHo*Vn{;LcG6+edD1=7D>9j^O?D{Qg|tCDK{ym)H7&wDr6*;uGTJg8GHjVbnL{!cWyUB7MT6o-VNo_w8Yq`2<5Ub)hw4L3rj}5@qxMs0 zWMyP6Wy582WNT#4$d1qunl{acmP#w5ouJ*Jy_Zv#bCKi7ZIf$}8d zZdVy&)LYdbX%I9R8VMQ|8r>Q*nyQ)sn)#Z|n)kKvS`4iu ztvy=3T65Yu+7a4Yv^%sXb>ww?bn(=Yu(!=O6^iuTp>)p_Y^{w=i z^lS773}6Fm1Fpe-gF!>Ip{*g$u-szvGhed;vo5pW&GpS$<~8QGEXWp~7V9lKEnZq0SaK{6Sl+dwSOr*Z zvFf(^Xl-N7w{EeXveC4Ov)N}e%%C!Y7^RFWwrE>d+x51mZQt2h+X?JW*!^a2WS?Sx z)P8cQ&Qi|OhNWW;>JChYI)@QQx?`Nj^#uJBl~d&PK+RZLOLos~K(b5>qmrMN0})tOkySZ3_W zICNY@+|jrX%s^&6b2i>5eqa0y%Z;^%^_=a@u3%4b9605ii3Ep)@`TAmhs0fpQ%O!q zl}XcFH*PieWwLj2ZSq`7V9Mc?h17`D)-+sNT-qs~3@?S(ldh7UlRlVXkWrK|vf6I- z?$tAVKYn8-l({mqQ$Q8{O!WzMg`0(=S&msXS#Pt$vrpzo=kRj+a`kh!z=6$;c zwT88(J6|n-WB%w`m$h~4pmp)YIh_ z3ETV2tjiAU!0h1dxU-n=E9e!)6|Z;4?!H=SSy{V>ut&IOq{_dl zbFb#!9eY1iCsp6Bajj|Hr?hX|zPbJE{X++w546-O*Ot`2Kgd0Jx6Z4syT zu9enWavU5N9)I?I-1m1*_?_rJ$vD~agVqoG+9++s?NEDe`%Fht$4F;X=in*dQ{7$m zU2Q)a|9JSc+Uc4zvS-T963!N$T{xF_ZuWe}`RNOZ7sk3{yB}PPym+f8xTpV;-=!;; zJuhGEb?H5K#o@~7t9DmUU1MD9xNd#Dz0azz?I)|B+WM{g+Xrk0I&awC=o(x)cy`EX z=)z6+o0o6-+`4{y+3mqQ%kSJBju{@g%f35#FZJHb`&swrA8dGtepviS>QUumrN{L@ z>;2q1Vm)$Z)P1z?N$8UYW2~{~zhwUMVZ87u`Dx{Z>O|9|`Q+&->FRy-Sjp7DHs zy69KwU-!MxeeuI@&cF4|M9z%AfP?@5 z`Tzg`fam}Kbua(`>RI+y?e7jT@qQ9J+u0%}P_K~y-)Et6Y|8%Gd@zwWNSjArbO z7lRFsi9>=hc?kLcKgJFOyphSSR$6Ihdiqj%kY1}!!8x3-%*T(vsuKY~!~@WKr<6`H-=#ZI_r9!Uo{2sA@J$lJ7SC|;6>Oy2r8 z&5wr%WL;N`HFQtzdg^ho*^SsctVV$Mc!Z=QVvdlA9wUg40QVOM10Ah@6Ig?@{ z=M`h1)kcho);i04q1KAEf`|zFhwr4AC}qR@z~ywIl#KTQ)z1FkJt-v)kB^85y?1;F z)LJmVeELmA0oM(&$5y5-UZk#|n ztre_+X&SM;EAukrtl`z`J9<~fX<}Y39FHfo!?Miurg$HywQ>LE?X8^|>zpITfxKl@ zp|#54@I+oSDUH-tFve0!;c`AB-g7)1Nok;W#RAll5%J`_^3&ZN&N{4fIA;JTTV|Xl zN-gBP0Z8fDAW+IW0=x>DI1wRJ#o&T~G$AR?$L@y17Q4YAH~Ih|>(VvIq= vb2=PuzmP%U^!!9hJ8CVcD(B-f=H~K$LaT1_P@C4M00000NkvXXu0mjf^bLAZ literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..d76f25f8334709656e74e1b8ebc3f2ec9c5d8ad0 GIT binary patch literal 3368 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 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..03d7023f3e6cf8410e2e473f17dff66fca6b302e GIT binary patch literal 7081 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 VaFB`P(WU?Z002ovPDHLkV1kPIf1v;X literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..7a4382b26c04cb6d57fed5bdc99b410d33a24af7 GIT binary patch literal 7064 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 QZ(bmx*=|C?PVcaP121qu@Bjb+ literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..6f1e1a72e213ad6a2a432aa45560ddc911ddb521 GIT binary patch literal 3488 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 KMNUMnLSTY=WH5pN literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..d55e34ba414b8ca0cce0a3a24bc8d67d5594c354 GIT binary patch literal 4304 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 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..2e88ffa849d39902780e2fe7369a7107257c3918 GIT binary patch literal 2440 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 Yqa<(h9F1I(z0=P+d;LrMy*fJo1{B4sqW}N^ literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..20dce2b35e90bf0812d28933269bb0ef573fb359 GIT binary patch literal 2251 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 NzX8vy$#2~>0016Z@96*l literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..93253c6408a38975865b8bde312c4ad526cb679f GIT binary patch literal 650 zcmb2|=3oGW|4(Q5_TMrPXjA`}z?^aQ-Y@Q3+3&00?R>Q|JSF0A)$GzmH$=AnU+{m| zNwdvMb$a5@xjG5Hm{~68pW~p@@hm0i$4gVe-t#vPlBM&o4pUVORBg>RkMCs)et9o!P}RI(dT7NsCx0fBU8>5os49*lX|hV zF^=uU(HJ4Zd|=bw1aJKnH!+ zFG1m7wBBBw)X!F9@?bF|P=~~U;|z9eA2v4hv)1T5NM@X$^-1q7FY}v?L49mR9dZBF z0>$f;H5(=tiA-3$K4D25TY}Dk3r}KaoqzfLx9T#J`9Xb5MJ5v#H_9+Skx)3!Wce-U zTvJKR^I30_rIVKJ%Ab8~t#th4&UYs-|E}eky^Z@_-scC8&Y3H|3*&#d`~QqXd*e&> zRJTjNT$d~Ti{awRWlzmquCMu5amTLph56pw&#c9N%?jDEe0%-?Q8^@MFuD`ps3O+WeTZ_}cl$xOV+@-Oo6Av)?@zVFm^OdmTX= literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..c0923fc7adae5df0e3e1287828079a4315478337 GIT binary patch literal 692 zcmV;l0!#fLiwFP!00000|D~9*j@vK{hG|PmoCJsK*0EhWcfYxF(Wz^o zhx85l*0tL(mtJF%Mgw?A@R9s~lCq5~0T!T>|KSt>4A-o`On=Q6P`QwO_AbHjS-@=5 z#O=4V?7y5ApxT%)sDSfFfl1kBcaFGb${S2E!W06g6x31zMhh52FiPMH8Oj$jrGQZa zMhh4tU}l7OEtoqply_t(@5oTzk)gaJLwQGr@@{Tu9%HCIM26Cg45b+vO7rhIF!L%V zFol5O&Z(5)&T;|#SuTJ-%Tk6r7hDgKp}cE>9xc#g1bUF6W{M2A^W40U;dZrTG#5Bm z0mJQ>l;QSpxVSwm1v@5XxIN?;Bj__S+-`6^M26c9PIG}fB48-Zz#=SplMza#+Q4{iT zGv#V&K`mq??*P}e$`Pg@7&U<@1&k6fnqag*j~3L@f?D{@H3WmtO0LgRhU+tzM@`7X z&Fl4ZXN=+I#c9?8&03&Y3pDEqnyI-PK^`N>gU>;3rc#FMA(uzr%(Da)Hn{@x6n)50 zb+Kverg0VMU=I%79fRM-*4u~e-iF#WKGf^I|L#8KV+gM4xi-cI-ZNaPV72qXHtRpN z?+!k=ZD)7+!TPR((m%qRm*1Xzo$PZ3vuwNCWmd+>{pPwKiuL+ov`F%gZr$3HZ0*qT z{fk<6X!Gg+49aSc+{Ug~Rrk!iwT;W!4gXG=B`m*mv31?>?^SO;h4_2|v$IWd(3|-@ zSiiq2@3Rjeih6sAO2=+zw{CroM&R!zyiU4`op+(v?PDJjVwd;pV|xkyr(0zF+}V`r aa0RPRHrubROG5gakbs1?i&=kA(>P9#-{hPOp}h96$Pu8&OGOm+|Ko{;r~PC znGWwJv^~2kE|@8{w(t1&8}BWr8JVZ0)%e|CY<%p^yptcU94Va8JC1(zXXh$fodaIm3M+@u%7h=>_|KV zpxTwsvRlO^PIC8LIi0Yin5UrB|h}ghNZTBrea(8>6@CdIxuZF8 zZ*r$KkaEOIUJ?0qDuZ=lsP$&xTjm^B#U@KW`1lG4pnSLSjQ*dfW>BYw>5Y*BG-N{x!D} z=;J+yxO<)eeXwcSvA*~1-&lgVdEVWa+EmEpb}CsEXb(Ry7M7gxn|O2X#7ZTDxQ9G;!e*cM!3|NVaefbNA z={>YMtm0wbnO8S8vwHTX&j~)bp*FqvXZrJ5(%0`zS-JB4?ki%(Z+9=_H20k&b-%4W zBQF2;mN#aaG5YVFcK7*aUGLug#dM$k?QOkh59IDzXPD11efhJZskbiZ{5w%0Bg)BFGLE-&Tl4>s0Z7=PR;dCm_#s~CRw*!%P5s4Ty|<3`Jz!&ZlW z%#FKm3B9bFIvj z{A7j$Ov%q_kA*&&Df!7v$xmiPfssI7nJM|nOvz7XN`5HkTDcDy)$eCU_4}Ds@?wA= z252!rivx@V{A8xIpUg}>^D{;Pebj|Mb4+P2I?i9qoddaZAa@SrUh~5MEe2>wKuZC$ zE5Og<1xzh30c0V7ECi5+0J5n0VSpb7_~C#b4)hT~9|Z%80h31m_0 z!;efY3t8C@2mElrj{y7#z>fg@2*8g7v?QP<0WAgeQ9z%3R!%*OnX?jMc!9}!1TZBn z@d7PTVDfoUo9q0%m}8JWCC`~Dc@}^l0r(Ms9|8E0fR+TbB%q}LCZ7ehEY5#>FU?-- zBVN#_w!@m11hgcer7kin685Ulb?B_VUGKHu8E5^j z-P<4LQ?wh?b~;AA8|f|tM;{>=2vR^?UB{#-_1&;gZIYexj)Wwd%M{f-x{BK?brWr^d~>VLI_*qKW_;eUSkdZhA3D>I&qIcVL?0f1lGJ%;p^VcTeZK*P*w=hIO)GDDk0B`}WYCik~gCTp!0Bmg@ywf7VHV UGkqLO=;k;50S!eedTJ5?0K;fa_F4CqKlh0 zY`+id@yFAOxC=uXlrF_o579(>95JV1K%)zqY9^~%(9{JVb<|XVrsR|AF4e<;j|S!^ zX-e}$$NnW26~LkbSmarAEGmFS1+b8O81P9NiIMLoabtu)NfO-^Aj{>q7@JX5yF9xzS;FC1cI+VDlv*@{xTF~f%CY?nUpebeX zKWIwzq;s9rSAPDPt2sZ9Eon+w3dmx>hXJ2-Mv{8Z&k}Pr=VzNGjnuo8#efe3KIyz6 z^`7s`b2T&2yOgDXECzfS@JV~O)O)@+&DEUmgG(BzcPWbj9|nBVej)XqzYphX&fmRD z8mVSf^Rk{bvA>B8)%U^qNKGHw*4(tVA??k<(%XaccH5h~cx?||d>Ws3A++@I!Mknf zoVniajo;bU`Q2vke%MdLeiRQ4UEVow+Rfjnt7jYI`i7LdrFYNI?%i%Mj}2W!)9-Ag z4`ug-H~o2MEOsVjq()y)!2dLsyDhLj??jK9H=Sv1jCT6mRIh3MwGW-`r_WJie}fN? zPgLKTcCa*-{pAn0v+i7U{`AND^FIdLw)S?DNnZ9uS>9#no%LgJE_hnshDX2gp^y91 j@K@~@9h!$u9M5$5*+lcr_QN!Uu71&P(ujfetrGwMtB7S! literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..ccfc0ff22480399f2d77a1c700eff9220fa6fd4d GIT binary patch literal 703 zcmb2|=3oGW|4U~a%)4zM;1V8lYMLy|Thr;^gsaZ)e7)vgSsfSMK9MJ-z@3BchRw5FBWZP_C4Mu7M^>f zPX5~C+40(s^msA@UHjdShVWl>`MqV)l0ajruS*mi4jW6cS@0B?9PpgA^XBBVyl+}_ z8`vJ6IlDASuEFh764-k#iN^)aR)<4TX( z+xgEeJdKYhHXLS9e`~z7?o(~-%4tUu8zz5C4zlO@qFgBPV9DN=EBKbs|p|UoRYPZe@!&`!$0f#-!+|oLvvQ_<2~n|_3Og6 zXREgIX6ExvyC*wm`|W#oj(AtUcy#zjrMQ!~{QEt(+s@5A{r29Exw&)i=YD(F{@3J< z`^O6xZuWj&cGqT_RsBJU>*h=DnC`9r`R3YNw&MF2lxEeXE7#6gK7WUjod2;$DNem6 zFQS?MrEi#1ru6!;=a&_cWy`i2-g=q8y2|(U`q~#c_J7x!o-_YZ@ZaHUZzj8U^6mJ4 z&&o{ZcAvAaFD(3XG~xEOxO}6NuV-qkE*Gmx|9fK&_q=P@AKuHadGYvP<c$^ fs;^78`kk}rXWH+?D5vN9U-BO@>8bcC%)kHu+v8)A literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..4a52f5baed18c041c064df74e6a863ec9316b71e GIT binary patch literal 562 zcmV-20?qv&iwFP!00000|D~2cZ`&{s#ZRQ{$~J;@?b0n>+c{H*&PAuL0&SmVCNwFK zbd2;H^jnu|Ls?NI@_-5u{O@<~-aV3r)&MIgo&1Fy0J^&j_o91UL512&FVR7FtzfxT zX7}jU;ltMz@Yc9kRKUx{Vd1>+_);;&6am5 zeu{~Fa=jwM6FQ8b!zOgb3@7OHo(N28c8Ked$&e9pW`vx_I&(}e=N!}TvrIlYKYhPU zhJ4g(j!E^3OztdmLOx@iIVP9kc&@1ob8~TmpYAFN`ILk`R%X^BGPw+MI*g#h2|AI< zWtf|t6a2*gv0*PZ!>|Oy2s(_Q6VLmQ;WOtQ2uwj>QoZ8&O7)6Ns#j!kbLDz5Vz2T3 znbM&$uRX7U>#eU~@nEF(P+6mt*ea}`)Z&D2ch+)eS}E>#N1+>3QaANcKH+C4_gJ^W zIni`+sG?9cEwuu%<=ZJ<)~;oHmzdSR90M2(kWlSU**z@Cg+ZU#=Bb_m^PK_CLH%VJx&U zR))uG;ib_~X=DAdKDT}Go4C^T=eGVUk*Mde`6j&hiPm)`aPu4f0QkFEC;bZm0OiIX A!2kdN literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..0cab43f9aa684d90d2b7e386fbe1c26854a74745 GIT binary patch literal 1217 zcmV;y1U~y8iwFP!00000|FxP=Z{s!)#c7e$9~+D9ZP8Qv4SL^m&qYtY8cagl+$xeG z(G9lWpr5$c%DZ}5$F|-~f!2T!B>746-f(6l5ndb97&oRrqcz5ykIi)W=~y?Wj$KYU z#nGHUjVT}6{_*#5J^k``W9+dXanj0s{nXa@F^3%IGwv}BVTze46-=dIF7>Pyn1(QR zW*mtH#w!@+3rwZZ!+e2ZzTC`Mq6ZA~4#q2Dl?sM=2gAIBVKwGwrcf{}KVTfu1BT@X z49gD~mLD*z2f?uXlrytZFa^;A#wr+=Loh6dU|0?-13}Baz^oM4Vcx+o?_ijBFw8p` zHd|_icQDL580H-e^A3i22gBxSb4T+M!}=Wz>vu409)8hccn^YMJ-C_=c8^;rVyzUh zikV@)z_7IdBi*|tUsj>VD)d-|9yc@6eNfT^M!N5u8R@r7EMw%N^{eY3?Mj_-Gj5Ie2A=jTGmVWEfxj^zi8 z)bH1Nu4~oa(R0l>=oWfe((Gr3)sI)i0>gR`j5HIZ+9(y8!LT(2!|DeN(+q}bu4YD> zEmEz5k>-!&t5)a%!|E9f(+q}bZWL<@Mw(+%&4ZEVm=)H2h4oi3n(IirGhWP@+d^HL^jY3bO(DP-+ z8{QXSSYKeiNY95(s6(sJV-~BjP%avg!KX=%~i=e7-_Cb-piR` zbqGe9hmtQa(ma%WRSL~uq!}e?#vaIJZP*2-A&fP*@5@UJi-o-luV6|A!}K_X9&c{n zsh1e1V3;qj@Z}Z0uuoDb80M=~_$n2?N`)`%x2zNl^HnK)RSI8~!dHDqvs+-8=31e- zR%pgv3ae)@te3Hu!fLEg#3~fAtRj|G#IlN5*h^tK1S8F#>v!QLMw&m8FQ@S3&F%a0 z5+lth$vYV49eXL#{E;-53eBZLGxk!X*&=DK6q+lA=K78vzrbATDHj-~2YUrlpIV{D zUi~Q;sZXU?*awh$&?(C$L zaQ;TlWN_^Im(RxULOaH(Fx@X_d+#sorJOpWI_tyhS>tKgg~zy^&j#@Qg%w(;p2 zd7F{zxb6_zohcvsocre~moJmaq3!qk_%w?-YdeJFBx=k{TrV1Fg!`tA#>xX>!|D*r+zBm1lVmH-O>Zf%Y`%^w_Psi8m f-PG$;hnt^64!^}=JfC9T{bl|E>fMS8AtnF-b5CRf literal 0 HcmV?d00001 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