diff --git a/src/main/java/ru/betterend/blocks/BlockBlueVineSeed.java b/src/main/java/ru/betterend/blocks/BlockBlueVineSeed.java index feaedc89..6b99ee18 100644 --- a/src/main/java/ru/betterend/blocks/BlockBlueVineSeed.java +++ b/src/main/java/ru/betterend/blocks/BlockBlueVineSeed.java @@ -44,6 +44,6 @@ public class BlockBlueVineSeed extends BlockPlantWithAge { @Override protected boolean isTerrain(BlockState state) { - return state.getBlock() == EndBlocks.END_MOSS || state.getBlock() == EndBlocks.END_MYCELIUM; + return state.isOf(EndBlocks.END_MOSS) || state.isOf(EndBlocks.END_MYCELIUM); } } diff --git a/src/main/java/ru/betterend/blocks/BlockGlowingPillarLuminophor.java b/src/main/java/ru/betterend/blocks/BlockGlowingPillarLuminophor.java new file mode 100644 index 00000000..1ad2970f --- /dev/null +++ b/src/main/java/ru/betterend/blocks/BlockGlowingPillarLuminophor.java @@ -0,0 +1,52 @@ +package ru.betterend.blocks; + +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.Material; +import net.minecraft.block.MaterialColor; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.state.StateManager; +import net.minecraft.state.property.BooleanProperty; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.world.WorldAccess; +import net.minecraft.world.WorldView; +import ru.betterend.blocks.basis.BlockBase; +import ru.betterend.registry.EndBlocks; + +public class BlockGlowingPillarLuminophor extends BlockBase { + public static final BooleanProperty NATURAL = BooleanProperty.of("natural"); + + public BlockGlowingPillarLuminophor() { + super(FabricBlockSettings.of(Material.LEAVES) + .materialColor(MaterialColor.ORANGE) + .breakByTool(FabricToolTags.SHEARS) + .sounds(BlockSoundGroup.GRASS) + .strength(0.2F) + .luminance(15)); + this.setDefaultState(this.stateManager.getDefaultState().with(NATURAL, false)); + } + + @Override + public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { + return state.get(NATURAL) ? world.getBlockState(pos.down()).isOf(EndBlocks.GLOWING_PILLAR_ROOTS) : true; + } + + @Override + public BlockState getStateForNeighborUpdate(BlockState state, Direction facing, BlockState neighborState, WorldAccess world, BlockPos pos, BlockPos neighborPos) { + if (!canPlaceAt(state, world, pos)) { + return Blocks.AIR.getDefaultState(); + } + else { + return state; + } + } + + @Override + protected void appendProperties(StateManager.Builder stateManager) { + stateManager.add(NATURAL); + } +} diff --git a/src/main/java/ru/betterend/blocks/BlockGlowingPillarRoots.java b/src/main/java/ru/betterend/blocks/BlockGlowingPillarRoots.java new file mode 100644 index 00000000..e393ee96 --- /dev/null +++ b/src/main/java/ru/betterend/blocks/BlockGlowingPillarRoots.java @@ -0,0 +1,23 @@ +package ru.betterend.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.state.StateManager; +import net.minecraft.state.property.EnumProperty; +import ru.betterend.blocks.BlockProperties.TripleShape; +import ru.betterend.blocks.basis.BlockUpDownPlant; +import ru.betterend.registry.EndBlocks; + +public class BlockGlowingPillarRoots extends BlockUpDownPlant { + public static final EnumProperty SHAPE = BlockProperties.TRIPLE_SHAPE; + + @Override + protected void appendProperties(StateManager.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + protected boolean isTerrain(BlockState state) { + return state.isOf(EndBlocks.AMBER_MOSS); + } +} diff --git a/src/main/java/ru/betterend/blocks/BlockGlowingPillarSeed.java b/src/main/java/ru/betterend/blocks/BlockGlowingPillarSeed.java new file mode 100644 index 00000000..9efc0fd4 --- /dev/null +++ b/src/main/java/ru/betterend/blocks/BlockGlowingPillarSeed.java @@ -0,0 +1,55 @@ +package ru.betterend.blocks; + +import java.util.Random; + +import net.minecraft.block.BlockState; +import net.minecraft.state.property.Properties; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.Direction; +import net.minecraft.world.StructureWorldAccess; +import ru.betterend.blocks.BlockProperties.TripleShape; +import ru.betterend.blocks.basis.BlockPlantWithAge; +import ru.betterend.registry.EndBlocks; +import ru.betterend.util.BlocksHelper; +import ru.betterend.util.MHelper; + +public class BlockGlowingPillarSeed extends BlockPlantWithAge { + @Override + public void growAdult(StructureWorldAccess world, Random random, BlockPos pos) { + int height = MHelper.randRange(1, 2, random); + int h = BlocksHelper.upRay(world, pos, height + 2); + if (h < height) { + return; + } + + Mutable mut = new Mutable().set(pos); + BlockState roots = EndBlocks.GLOWING_PILLAR_ROOTS.getDefaultState(); + if (height < 2) { + BlocksHelper.setWithUpdate(world, mut, roots.with(BlockProperties.TRIPLE_SHAPE, TripleShape.MIDDLE)); + mut.move(Direction.UP); + } + else { + BlocksHelper.setWithUpdate(world, mut, roots.with(BlockProperties.TRIPLE_SHAPE, TripleShape.BOTTOM)); + mut.move(Direction.UP); + BlocksHelper.setWithUpdate(world, mut, roots.with(BlockProperties.TRIPLE_SHAPE, TripleShape.TOP)); + mut.move(Direction.UP); + } + BlocksHelper.setWithUpdate(world, mut, EndBlocks.GLOWING_PILLAR_LUMINOPHOR.getDefaultState().with(BlockBlueVineLantern.NATURAL, true)); + for (Direction dir: BlocksHelper.DIRECTIONS) { + pos = mut.offset(dir); + if (world.isAir(pos)) { + BlocksHelper.setWithUpdate(world, pos, EndBlocks.GLOWING_PILLAR_LEAVES.getDefaultState().with(Properties.FACING, dir)); + } + } + mut.move(Direction.UP); + if (world.isAir(mut)) { + BlocksHelper.setWithUpdate(world, mut, EndBlocks.GLOWING_PILLAR_LEAVES.getDefaultState().with(Properties.FACING, Direction.UP)); + } + } + + @Override + protected boolean isTerrain(BlockState state) { + return state.isOf(EndBlocks.AMBER_MOSS); + } +} diff --git a/src/main/java/ru/betterend/blocks/BlockHelixTreeLuminophor.java b/src/main/java/ru/betterend/blocks/BlockHelixTreeLuminophor.java deleted file mode 100644 index 4097916e..00000000 --- a/src/main/java/ru/betterend/blocks/BlockHelixTreeLuminophor.java +++ /dev/null @@ -1,19 +0,0 @@ -package ru.betterend.blocks; - -import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; -import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; -import net.minecraft.block.Material; -import net.minecraft.block.MaterialColor; -import net.minecraft.sound.BlockSoundGroup; -import ru.betterend.blocks.basis.BlockBase; - -public class BlockHelixTreeLuminophor extends BlockBase { - public BlockHelixTreeLuminophor() { - super(FabricBlockSettings.of(Material.LEAVES) - .materialColor(MaterialColor.ORANGE) - .breakByTool(FabricToolTags.SHEARS) - .sounds(BlockSoundGroup.GRASS) - .strength(0.2F) - .luminance(15)); - } -} diff --git a/src/main/java/ru/betterend/registry/EndBlocks.java b/src/main/java/ru/betterend/registry/EndBlocks.java index 1c052c0e..493c7bb9 100644 --- a/src/main/java/ru/betterend/registry/EndBlocks.java +++ b/src/main/java/ru/betterend/registry/EndBlocks.java @@ -29,7 +29,9 @@ import ru.betterend.blocks.BlockEndLotusStem; import ru.betterend.blocks.BlockEndstoneDust; import ru.betterend.blocks.BlockGlowingMoss; import ru.betterend.blocks.BlockHelixTreeLeaves; -import ru.betterend.blocks.BlockHelixTreeLuminophor; +import ru.betterend.blocks.BlockGlowingPillarLuminophor; +import ru.betterend.blocks.BlockGlowingPillarRoots; +import ru.betterend.blocks.BlockGlowingPillarSeed; import ru.betterend.blocks.BlockHelixTreeSapling; import ru.betterend.blocks.BlockHydralux; import ru.betterend.blocks.BlockHydraluxPetal; @@ -158,7 +160,6 @@ public class EndBlocks { public static final Block HELIX_TREE_SAPLING = registerBlock("helix_tree_sapling", new BlockHelixTreeSapling()); public static final Block HELIX_TREE_LEAVES = registerBlock("helix_tree_leaves", new BlockHelixTreeLeaves()); - public static final Block HELIX_TREE_LUMINOPHOR = registerBlock("helix_tree_luminophor", new BlockHelixTreeLuminophor()); public static final WoodenMaterial HELIX_TREE = new WoodenMaterial("helix_tree", MaterialColor.GRAY, MaterialColor.ORANGE); // Small Plants // @@ -180,6 +181,11 @@ public class EndBlocks { public static final Block LANCELEAF_SEED = registerBlock("lanceleaf_seed", new BlockLanceleafSeed()); public static final Block LANCELEAF = registerBlockNI("lanceleaf", new BlockLanceleaf()); + public static final Block GLOWING_PILLAR_SEED = registerBlock("glowing_pillar_seed", new BlockGlowingPillarSeed()); + public static final Block GLOWING_PILLAR_ROOTS = registerBlockNI("glowing_pillar_roots", new BlockGlowingPillarRoots()); + public static final Block GLOWING_PILLAR_LUMINOPHOR = registerBlock("glowing_pillar_luminophor", new BlockGlowingPillarLuminophor()); + public static final Block GLOWING_PILLAR_LEAVES = registerBlock("glowing_pillar_leaves", new BlockFur(GLOWING_PILLAR_SEED, 15, 3)); + public static final Block BUBBLE_CORAL = registerBlock("bubble_coral", new BlockBubbleCoral()); public static final Block MENGER_SPONGE = registerBlock("menger_sponge", new BlockMengerSponge()); public static final Block MENGER_SPONGE_WET = registerBlock("menger_sponge_wet", new BlockMengerSpongeWet()); diff --git a/src/main/java/ru/betterend/util/BlocksHelper.java b/src/main/java/ru/betterend/util/BlocksHelper.java index d2e2f652..f49c5c21 100644 --- a/src/main/java/ru/betterend/util/BlocksHelper.java +++ b/src/main/java/ru/betterend/util/BlocksHelper.java @@ -38,6 +38,7 @@ public class BlocksHelper { public static final int FLAG_IGNORE_OBSERVERS = 16; public static final int SET_SILENT = FLAG_UPDATE_BLOCK | FLAG_IGNORE_OBSERVERS | FLAG_SEND_CLIENT_CHANGES; + public static final int SET_OBSERV = FLAG_UPDATE_BLOCK | FLAG_SEND_CLIENT_CHANGES; public static final Direction[] HORIZONTAL = makeHorizontal(); public static final Direction[] DIRECTIONS = Direction.values(); @@ -66,6 +67,14 @@ public class BlocksHelper { public static void setWithoutUpdate(WorldAccess world, BlockPos pos, Block block) { world.setBlockState(pos, block.getDefaultState(), SET_SILENT); } + + public static void setWithUpdate(WorldAccess world, BlockPos pos, BlockState state) { + world.setBlockState(pos, state, SET_OBSERV); + } + + public static void setWithUpdate(WorldAccess world, BlockPos pos, Block block) { + world.setBlockState(pos, block.getDefaultState(), SET_OBSERV); + } public static int upRay(WorldAccess world, BlockPos pos, int maxDist) { int length = 0; diff --git a/src/main/resources/assets/betterend/blockstates/glowing_pillar_leaves.json b/src/main/resources/assets/betterend/blockstates/glowing_pillar_leaves.json new file mode 100644 index 00000000..ee13b531 --- /dev/null +++ b/src/main/resources/assets/betterend/blockstates/glowing_pillar_leaves.json @@ -0,0 +1,26 @@ +{ + "variants": { + "facing=north": [ + { "model": "betterend:block/glowing_pillar_leaves_01", "y": 180 }, + { "model": "betterend:block/glowing_pillar_leaves_02", "y": 180 }, + { "model": "betterend:block/glowing_pillar_leaves_03", "y": 180 } + ], + "facing=south": [ + { "model": "betterend:block/glowing_pillar_leaves_01" }, + { "model": "betterend:block/glowing_pillar_leaves_02" }, + { "model": "betterend:block/glowing_pillar_leaves_03" } + ], + "facing=east": [ + { "model": "betterend:block/glowing_pillar_leaves_01", "y": 270 }, + { "model": "betterend:block/glowing_pillar_leaves_02", "y": 270 }, + { "model": "betterend:block/glowing_pillar_leaves_03", "y": 270 } + ], + "facing=west": [ + { "model": "betterend:block/glowing_pillar_leaves_01", "y": 90 }, + { "model": "betterend:block/glowing_pillar_leaves_02", "y": 90 }, + { "model": "betterend:block/glowing_pillar_leaves_03", "y": 90 } + ], + "facing=up": { "model": "betterend:block/glowing_pillar_leaves_up" }, + "facing=down": { "model": "betterend:block/glowing_pillar_leaves_up", "x": 180 } + } +} diff --git a/src/main/resources/assets/betterend/blockstates/glowing_pillar_luminophor.json b/src/main/resources/assets/betterend/blockstates/glowing_pillar_luminophor.json new file mode 100644 index 00000000..4606aaf6 --- /dev/null +++ b/src/main/resources/assets/betterend/blockstates/glowing_pillar_luminophor.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "betterend:block/glowing_pillar_luminophor" + } + } +} diff --git a/src/main/resources/assets/betterend/blockstates/glowing_pillar_roots.json b/src/main/resources/assets/betterend/blockstates/glowing_pillar_roots.json new file mode 100644 index 00000000..2a362c09 --- /dev/null +++ b/src/main/resources/assets/betterend/blockstates/glowing_pillar_roots.json @@ -0,0 +1,7 @@ +{ + "variants": { + "shape=top": { "model": "betterend:block/glowing_pillar_roots_top" }, + "shape=middle": { "model": "betterend:block/glowing_pillar_roots_both" }, + "shape=bottom": { "model": "betterend:block/glowing_pillar_roots_bottom" } + } +} diff --git a/src/main/resources/assets/betterend/blockstates/helix_tree_luminophor.json b/src/main/resources/assets/betterend/blockstates/helix_tree_luminophor.json deleted file mode 100644 index 9e8a627a..00000000 --- a/src/main/resources/assets/betterend/blockstates/helix_tree_luminophor.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "betterend:block/helix_tree_luminophor" - } - } -} diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_01.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_01.json new file mode 100644 index 00000000..69d95184 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_01.json @@ -0,0 +1,97 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "texture": "betterend:block/glowing_pillar_leaves", + "particle": "#texture" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 3, 15, 0 ], + "to": [ 19, 15.001, 16 ], + "rotation": { "origin": [ 3, 15, 0 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 1, 11, 0 ], + "to": [ 17, 11.001, 16 ], + "rotation": { "origin": [ 1, 11, 0 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 1, -10, 0 ], + "to": [ 17, 6, 0.001 ], + "rotation": { "origin": [ 1, 6, 0 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -3, 13.5, 0 ], + "to": [ 13, 13.501, 16 ], + "rotation": { "origin": [ -3, 13.5, 0 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 1, 1, 0 ], + "to": [ 17, 1.001, 16 ], + "rotation": { "origin": [ 1, 1, 0 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -1, -9, 0 ], + "to": [ 15, 7, 0.001 ], + "rotation": { "origin": [ -1, 7, 0 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -1.5, 16, 0 ], + "to": [ 14.5, 16.001, 16 ], + "rotation": { "origin": [ -1.5, 16, 0 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -2, 0.5, 0 ], + "to": [ 14, 0.501, 16 ], + "rotation": { "origin": [ -2, 0.5, 0 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_02.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_02.json new file mode 100644 index 00000000..ba9365f1 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_02.json @@ -0,0 +1,64 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "texture": "betterend:block/glowing_pillar_leaves", + "particle": "#texture" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 3, 15, 0 ], + "to": [ 19, 15.001, 16 ], + "rotation": { "origin": [ 3, 15, 0 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -15, 0 ], + "to": [ 16, 1, 0.001 ], + "rotation": { "origin": [ 0, 1, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -2, -12, 0 ], + "to": [ 14, 4, 0.001 ], + "rotation": { "origin": [ -2, 4, 0 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -9, 0 ], + "to": [ 16, 7, 0.001 ], + "rotation": { "origin": [ 0, 7, 0 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -3, 0 ], + "to": [ 16, 13, 0.001 ], + "rotation": { "origin": [ 0, 13, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_03.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_03.json new file mode 100644 index 00000000..4bb2058f --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_03.json @@ -0,0 +1,64 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "texture": "betterend:block/glowing_pillar_leaves", + "particle": "#texture" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ -1, 0, 0 ], + "to": [ 15, 16, 0.001 ], + "rotation": { "origin": [ -1, 16, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 2, -3, 0 ], + "to": [ 18, 13, 0.001 ], + "rotation": { "origin": [ 2, 13, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -8, 0 ], + "to": [ 16, 8, 0.001 ], + "rotation": { "origin": [ 0, 8, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ -3, -12, 0 ], + "to": [ 13, 4, 0.001 ], + "rotation": { "origin": [ -3, 4, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY1", + "from": [ 3, -15, 0 ], + "to": [ 19, 1, 0.001 ], + "rotation": { "origin": [ 3, 1, 0 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_up.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_up.json new file mode 100644 index 00000000..6c9c9559 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_leaves_up.json @@ -0,0 +1,120 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/glowing_pillar_leaves", + "texture": "betterend:block/glowing_pillar_leaves", + "spore": "betterend:block/glowing_pillar_leaves" + }, + "elements": [ + { + "__comment": "PlaneY1", + "from": [ 0, -0.001, -10 ], + "to": [ 16, 0, 6 ], + "rotation": { "origin": [ 0, 0, 6 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, 0, 10 ], + "to": [ 16, 0.001, 26 ], + "rotation": { "origin": [ 0, 0, 10 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY4", + "from": [ 10, -0.001, 0 ], + "to": [ 26, 0, 16 ], + "rotation": { "origin": [ 10, 0, 16 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 0, 16, 16, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneY4", + "from": [ -10, 0, 2 ], + "to": [ 6, 0.001, 18 ], + "rotation": { "origin": [ 6, 0, 18 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneX6", + "from": [ 0, 0, -6.5 ], + "to": [ 0.001, 16, 16 ], + "rotation": { "origin": [ 0, 16, 16 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#spore" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#spore" } + } + }, + { + "__comment": "PlaneX6", + "from": [ -6.5, 0, 15.999 ], + "to": [ 16, 16, 16 ], + "rotation": { "origin": [ 16, 16, 16 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#spore" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#spore" } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, -0.001, -9 ], + "to": [ 16, 0, 7 ], + "rotation": { "origin": [ 0, 0, 7 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 180 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY1", + "from": [ 0, 0, 9 ], + "to": [ 16, 0.001, 25 ], + "rotation": { "origin": [ 0, 0, 9 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture" }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 180 } + } + }, + { + "__comment": "PlaneY4", + "from": [ 9, -0.001, 0 ], + "to": [ 25, 0, 16 ], + "rotation": { "origin": [ 9, 0, 16 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 90 }, + "up": { "uv": [ 16, 16, 0, 0 ], "texture": "#texture", "rotation": 270 } + } + }, + { + "__comment": "PlaneY4", + "from": [ -9, 0, 2 ], + "to": [ 7, 0.001, 18 ], + "rotation": { "origin": [ 7, 0, 18 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#texture", "rotation": 270 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture", "rotation": 270 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/helix_tree_luminophor.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_luminophor.json similarity index 50% rename from src/main/resources/assets/betterend/models/block/helix_tree_luminophor.json rename to src/main/resources/assets/betterend/models/block/glowing_pillar_luminophor.json index 633bd7fc..359bb01b 100644 --- a/src/main/resources/assets/betterend/models/block/helix_tree_luminophor.json +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_luminophor.json @@ -1,6 +1,6 @@ { "parent": "betterend:block/cube_noshade", "textures": { - "texture": "betterend:block/helix_tree_luminophor" + "texture": "betterend:block/glowing_pillar_luminophor" } } diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_both.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_both.json new file mode 100644 index 00000000..c8248867 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_both.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/cross_no_distortion", + "textures": { + "texture": "betterend:block/glowing_pillar_roots_both" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_bottom.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_bottom.json new file mode 100644 index 00000000..379bdb39 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_bottom.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/cross_no_distortion", + "textures": { + "texture": "betterend:block/glowing_pillar_roots_bottom" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_top.json b/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_top.json new file mode 100644 index 00000000..1b0564e0 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/glowing_pillar_roots_top.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/cross_no_distortion", + "textures": { + "texture": "betterend:block/glowing_pillar_roots_top" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/helix_tree_leaves.json b/src/main/resources/assets/betterend/models/block/helix_tree_leaves.json index 741d59cf..b1fb61a1 100644 --- a/src/main/resources/assets/betterend/models/block/helix_tree_leaves.json +++ b/src/main/resources/assets/betterend/models/block/helix_tree_leaves.json @@ -1,5 +1,5 @@ { - "parent": "betterend:block/tint_cube_noshade", + "parent": "betterend:block/tint_cube", "textures": { "texture": "betterend:block/helix_tree_leaves" } diff --git a/src/main/resources/assets/betterend/models/item/glowing_pillar_leaves.json b/src/main/resources/assets/betterend/models/item/glowing_pillar_leaves.json new file mode 100644 index 00000000..568fef26 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/glowing_pillar_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:block/glowing_pillar_leaves" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/glowing_pillar_luminophor.json b/src/main/resources/assets/betterend/models/item/glowing_pillar_luminophor.json new file mode 100644 index 00000000..10c6b79d --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/glowing_pillar_luminophor.json @@ -0,0 +1,3 @@ +{ + "parent": "betterend:block/glowing_pillar_luminophor" +} diff --git a/src/main/resources/assets/betterend/textures/block/glowing_pillar_leaves.png b/src/main/resources/assets/betterend/textures/block/glowing_pillar_leaves.png new file mode 100644 index 00000000..146aa766 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/glowing_pillar_leaves.png differ diff --git a/src/main/resources/assets/betterend/textures/block/helix_tree_luminophor.png b/src/main/resources/assets/betterend/textures/block/glowing_pillar_luminophor.png similarity index 100% rename from src/main/resources/assets/betterend/textures/block/helix_tree_luminophor.png rename to src/main/resources/assets/betterend/textures/block/glowing_pillar_luminophor.png diff --git a/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_both.png b/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_both.png new file mode 100644 index 00000000..9ab44e1c Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_both.png differ diff --git a/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_bottom.png b/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_bottom.png new file mode 100644 index 00000000..fea7c949 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_bottom.png differ diff --git a/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_top.png b/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_top.png new file mode 100644 index 00000000..5190e456 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/glowing_pillar_roots_top.png differ