diff --git a/src/main/java/ru/betterend/blocks/BlockProperties.java b/src/main/java/ru/betterend/blocks/BlockProperties.java index 4da42d5c..fca28924 100644 --- a/src/main/java/ru/betterend/blocks/BlockProperties.java +++ b/src/main/java/ru/betterend/blocks/BlockProperties.java @@ -119,4 +119,35 @@ public class BlockProperties { return name; } } + + public static enum LumecornShape implements StringIdentifiable { + LIGHT1("light1", 15), + LIGHT2("light2", 14), + LIGHT3("light3", 13), + MIDDLE("middle", 0), + BOTTOM_BIG("bottom_big", 0), + BOTTOM_SMALL("bottom_small", 0); + + private final String name; + private final int light; + + LumecornShape(String name, int light) { + this.name = name; + this.light = light; + } + + @Override + public String asString() { + return name; + } + + @Override + public String toString() { + return name; + } + + public int getLight() { + return light; + } + } } diff --git a/src/main/java/ru/betterend/blocks/LumecornBlock.java b/src/main/java/ru/betterend/blocks/LumecornBlock.java new file mode 100644 index 00000000..c04b1ed5 --- /dev/null +++ b/src/main/java/ru/betterend/blocks/LumecornBlock.java @@ -0,0 +1,80 @@ +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.ShapeContext; +import net.minecraft.state.StateManager; +import net.minecraft.state.property.EnumProperty; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.world.BlockView; +import net.minecraft.world.WorldAccess; +import net.minecraft.world.WorldView; +import ru.betterend.blocks.BlockProperties.LumecornShape; +import ru.betterend.blocks.basis.BaseBlockNotFull; +import ru.betterend.client.render.ERenderLayer; +import ru.betterend.interfaces.IRenderTypeable; +import ru.betterend.registry.EndTags; + +public class LumecornBlock extends BaseBlockNotFull implements IRenderTypeable { + public static final EnumProperty SHAPE = EnumProperty.of("shape", LumecornShape.class); + private static final VoxelShape SHAPE_BIG = Block.createCuboidShape(5, 0, 5, 11, 16, 11); + private static final VoxelShape SHAPE_MEDIUM = Block.createCuboidShape(6, 0, 6, 10, 16, 10); + private static final VoxelShape SHAPE_SMALL = Block.createCuboidShape(7, 0, 7, 9, 16, 9); + + public LumecornBlock() { + super(FabricBlockSettings.of(Material.WOOD).breakByTool(FabricToolTags.AXES).hardness(0.5F).luminance((state) -> { + return state.get(SHAPE).getLight(); + })); + } + + @Override + protected void appendProperties(StateManager.Builder stateManager) { + stateManager.add(SHAPE); + } + + @Override + public ERenderLayer getRenderLayer() { + return ERenderLayer.CUTOUT; + } + + @Override + public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext ePos) { + LumecornShape shape = state.get(SHAPE); + if (shape == LumecornShape.LIGHT3) { + return SHAPE_SMALL; + } + else if (shape == LumecornShape.LIGHT2) { + return SHAPE_MEDIUM; + } + else { + return SHAPE_BIG; + } + } + + @Override + public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { + LumecornShape shape = state.get(SHAPE); + if (shape == LumecornShape.BOTTOM_BIG || shape == LumecornShape.BOTTOM_SMALL) { + return world.getBlockState(pos.down()).isIn(EndTags.END_GROUND); + } + else { + return world.getBlockState(pos.down()).isOf(this); + } + } + + @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; + } + } +} diff --git a/src/main/java/ru/betterend/registry/EndBiomes.java b/src/main/java/ru/betterend/registry/EndBiomes.java index 90fe5c39..5907a212 100644 --- a/src/main/java/ru/betterend/registry/EndBiomes.java +++ b/src/main/java/ru/betterend/registry/EndBiomes.java @@ -44,6 +44,7 @@ import ru.betterend.world.biome.BiomeShadowForest; import ru.betterend.world.biome.BiomeSulphurSprings; import ru.betterend.world.biome.BiomeUmbrellaJungle; import ru.betterend.world.biome.EndBiome; +import ru.betterend.world.biome.GlowingGrasslandsBiome; import ru.betterend.world.generator.BELayerRandomSource; import ru.betterend.world.generator.BiomePicker; import ru.betterend.world.generator.BiomeType; @@ -83,6 +84,7 @@ public class EndBiomes { public static final EndBiome BLOSSOMING_SPIRES = registerBiome(new BiomeBlossomingSpires(), BiomeType.LAND); public static final EndBiome SULPHUR_SPRINGS = registerBiome(new BiomeSulphurSprings(), BiomeType.LAND); public static final EndBiome UMBRELLA_JUNGLE = registerBiome(new BiomeUmbrellaJungle(), BiomeType.LAND); + public static final EndBiome GLOWING_GRASSLANDS = registerBiome(new GlowingGrasslandsBiome(), BiomeType.LAND); // Better End Void public static final EndBiome ICE_STARFIELD = registerBiome(new BiomeIceStarfield(), BiomeType.VOID); diff --git a/src/main/java/ru/betterend/registry/EndBlocks.java b/src/main/java/ru/betterend/registry/EndBlocks.java index 44050d9e..504c8739 100644 --- a/src/main/java/ru/betterend/registry/EndBlocks.java +++ b/src/main/java/ru/betterend/registry/EndBlocks.java @@ -56,6 +56,7 @@ import ru.betterend.blocks.JellyshroomCapBlock; import ru.betterend.blocks.LacugroveSaplingBlock; import ru.betterend.blocks.LanceleafBlock; import ru.betterend.blocks.LanceleafSeedBlock; +import ru.betterend.blocks.LumecornBlock; import ru.betterend.blocks.MengerSpongeBlock; import ru.betterend.blocks.MengerSpongeWetBlock; import ru.betterend.blocks.MossyGlowshroomCapBlock; @@ -221,6 +222,8 @@ public class EndBlocks { public static final Block SMALL_JELLYSHROOM = registerBlock("small_jellyshroom", new SmallJellyshroomBlock()); + public static final Block LUMECORN = registerBlock("lumecorn", new LumecornBlock()); + // Crops public static final Block BLOSSOM_BERRY = registerBlock("blossom_berry_seed", new EndCropBlock(EndItems.BLOSSOM_BERRY, PINK_MOSS)); diff --git a/src/main/java/ru/betterend/registry/EndFeatures.java b/src/main/java/ru/betterend/registry/EndFeatures.java index da3e61c1..ee25cdd2 100644 --- a/src/main/java/ru/betterend/registry/EndFeatures.java +++ b/src/main/java/ru/betterend/registry/EndFeatures.java @@ -32,6 +32,7 @@ import ru.betterend.world.features.VineFeature; import ru.betterend.world.features.WallPlantFeature; import ru.betterend.world.features.WallPlantOnLogFeature; import ru.betterend.world.features.bushes.BushFeature; +import ru.betterend.world.features.bushes.Lumecorn; import ru.betterend.world.features.bushes.TenaneaBushFeature; import ru.betterend.world.features.terrain.EndLakeFeature; import ru.betterend.world.features.terrain.FloatingSpireFeature; @@ -68,6 +69,7 @@ public class EndFeatures { public static final EndFeature PYTHADENDRON_BUSH = new EndFeature("pythadendron_bush", new BushFeature(EndBlocks.PYTHADENDRON_LEAVES, EndBlocks.PYTHADENDRON.bark), 4); public static final EndFeature DRAGON_TREE_BUSH = new EndFeature("dragon_tree_bush", new BushFeature(EndBlocks.DRAGON_TREE_LEAVES, EndBlocks.DRAGON_TREE.bark), 15); public static final EndFeature TENANEA_BUSH = new EndFeature("tenanea_bush", new TenaneaBushFeature(), 10); + public static final EndFeature LUMECORN = new EndFeature("lumecorn", new Lumecorn(), 5); // Plants // public static final EndFeature UMBRELLA_MOSS = new EndFeature("umbrella_moss", new DoublePlantFeature(EndBlocks.UMBRELLA_MOSS, EndBlocks.UMBRELLA_MOSS_TALL, 5), 5); diff --git a/src/main/java/ru/betterend/world/biome/GlowingGrasslandsBiome.java b/src/main/java/ru/betterend/world/biome/GlowingGrasslandsBiome.java new file mode 100644 index 00000000..f878e85d --- /dev/null +++ b/src/main/java/ru/betterend/world/biome/GlowingGrasslandsBiome.java @@ -0,0 +1,26 @@ +package ru.betterend.world.biome; + +import net.minecraft.entity.EntityType; +import ru.betterend.registry.EndBlocks; +import ru.betterend.registry.EndFeatures; +import ru.betterend.registry.EndSounds; + +public class GlowingGrasslandsBiome extends EndBiome { + public GlowingGrasslandsBiome() { + super(new BiomeDefinition("glowing_grasslands") + .setFogColor(99, 228, 247) + .setFogDensity(1.3F) + .setMusic(EndSounds.MUSIC_OPENSPACE) + .setSurface(EndBlocks.END_MOSS) + .addFeature(EndFeatures.END_LAKE_RARE) + .addFeature(EndFeatures.LUMECORN) + .addFeature(EndFeatures.UMBRELLA_MOSS) + .addFeature(EndFeatures.CREEPING_MOSS) + .addFeature(EndFeatures.TWISTED_UMBRELLA_MOSS) + .addFeature(EndFeatures.CHARNIA_CYAN) + .addFeature(EndFeatures.CHARNIA_GREEN) + .addFeature(EndFeatures.CHARNIA_LIGHT_BLUE) + .addFeature(EndFeatures.CHARNIA_RED_RARE) + .addMobSpawn(EntityType.ENDERMAN, 50, 1, 2)); + } +} diff --git a/src/main/java/ru/betterend/world/features/bushes/Lumecorn.java b/src/main/java/ru/betterend/world/features/bushes/Lumecorn.java new file mode 100644 index 00000000..5c823cb0 --- /dev/null +++ b/src/main/java/ru/betterend/world/features/bushes/Lumecorn.java @@ -0,0 +1,66 @@ +package ru.betterend.world.features.bushes; + +import java.util.Random; + +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockPos.Mutable; +import net.minecraft.util.math.Direction; +import net.minecraft.util.math.MathHelper; +import net.minecraft.world.StructureWorldAccess; +import net.minecraft.world.gen.chunk.ChunkGenerator; +import net.minecraft.world.gen.feature.DefaultFeatureConfig; +import ru.betterend.blocks.BlockProperties.LumecornShape; +import ru.betterend.blocks.LumecornBlock; +import ru.betterend.registry.EndBlocks; +import ru.betterend.util.BlocksHelper; +import ru.betterend.util.MHelper; +import ru.betterend.world.features.DefaultFeature; + +public class Lumecorn extends DefaultFeature { + @Override + public boolean generate(StructureWorldAccess world, ChunkGenerator chunkGenerator, Random random, BlockPos pos, DefaultFeatureConfig config) { + int height = MHelper.randRange(3, 6, random); + Mutable mut = new Mutable().set(pos); + for (int i = 1; i < height; i++) { + mut.move(Direction.UP); + if (!world.isAir(mut)) { + return false; + } + } + mut.set(pos); + if (height == 3) { + BlocksHelper.setWithoutUpdate(world, mut, EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.BOTTOM_SMALL)); + BlocksHelper.setWithoutUpdate(world, mut.move(Direction.UP), EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.LIGHT2)); + BlocksHelper.setWithoutUpdate(world, mut.move(Direction.UP), EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.LIGHT3)); + return true; + } + boolean tall = random.nextBoolean(); + if (tall) { + BlocksHelper.setWithoutUpdate(world, mut, EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.BOTTOM_BIG)); + BlocksHelper.setWithoutUpdate(world, mut.move(Direction.UP), EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.MIDDLE)); + height -= 2; + } + else { + BlocksHelper.setWithoutUpdate(world, mut, EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.BOTTOM_SMALL)); + height --; + } + boolean smallBottom = height > 2 && random.nextBoolean(); + for (int i = 0; i < height; i++) { + int size = i - height + 4; + size = MathHelper.clamp(size, 1, 3); + if (smallBottom && i == 0) { + size ++; + } + if (size == 1) { + BlocksHelper.setWithoutUpdate(world, mut.move(Direction.UP), EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.LIGHT1)); + } + else if (size == 2) { + BlocksHelper.setWithoutUpdate(world, mut.move(Direction.UP), EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.LIGHT2)); + } + else { + BlocksHelper.setWithoutUpdate(world, mut.move(Direction.UP), EndBlocks.LUMECORN.getDefaultState().with(LumecornBlock.SHAPE, LumecornShape.LIGHT3)); + } + } + return false; + } +} diff --git a/src/main/resources/assets/betterend/blockstates/capsacis_bark.json b/src/main/resources/assets/betterend/blockstates/capsacis_bark.json deleted file mode 100644 index 98418992..00000000 --- a/src/main/resources/assets/betterend/blockstates/capsacis_bark.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "variants": { - "axis=x": [ - { "model": "betterend:block/capsacis_bark_1", "x": 90, "y": 90 }, - { "model": "betterend:block/capsacis_bark_2", "x": 90, "y": 90 }, - { "model": "betterend:block/capsacis_bark_3", "x": 90, "y": 90 } - ], - "axis=y": [ - { "model": "betterend:block/capsacis_bark_1" }, - { "model": "betterend:block/capsacis_bark_2" }, - { "model": "betterend:block/capsacis_bark_3" } - ], - "axis=z": [ - { "model": "betterend:block/capsacis_bark_1", "x": 90 }, - { "model": "betterend:block/capsacis_bark_2", "x": 90 }, - { "model": "betterend:block/capsacis_bark_3", "x": 90 } - ] - } -} diff --git a/src/main/resources/assets/betterend/blockstates/capsacis_cap.json b/src/main/resources/assets/betterend/blockstates/capsacis_cap.json deleted file mode 100644 index 4c051cb8..00000000 --- a/src/main/resources/assets/betterend/blockstates/capsacis_cap.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "color=0": { "model": "betterend:block/capsacis_cap_0" }, - "color=1": { "model": "betterend:block/capsacis_cap_1" }, - "color=2": { "model": "betterend:block/capsacis_cap_2" }, - "color=3": { "model": "betterend:block/capsacis_cap_3" }, - "color=4": { "model": "betterend:block/capsacis_cap_4" }, - "color=5": { "model": "betterend:block/capsacis_cap_5" }, - "color=6": { "model": "betterend:block/capsacis_cap_6" }, - "color=7": { "model": "betterend:block/capsacis_cap_7" } - } -} diff --git a/src/main/resources/assets/betterend/blockstates/capsacis_log.json b/src/main/resources/assets/betterend/blockstates/capsacis_log.json deleted file mode 100644 index 62fca081..00000000 --- a/src/main/resources/assets/betterend/blockstates/capsacis_log.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "variants": { - "axis=x": [ - { "model": "betterend:block/capsacis_log_1", "x": 90, "y": 90 }, - { "model": "betterend:block/capsacis_log_2", "x": 90, "y": 90 }, - { "model": "betterend:block/capsacis_log_3", "x": 90, "y": 90 } - ], - "axis=y": [ - { "model": "betterend:block/capsacis_log_1" }, - { "model": "betterend:block/capsacis_log_2" }, - { "model": "betterend:block/capsacis_log_3" } - ], - "axis=z": [ - { "model": "betterend:block/capsacis_log_1", "x": 90 }, - { "model": "betterend:block/capsacis_log_2", "x": 90 }, - { "model": "betterend:block/capsacis_log_3", "x": 90 } - ] - } -} diff --git a/src/main/resources/assets/betterend/blockstates/lumecorn.json b/src/main/resources/assets/betterend/blockstates/lumecorn.json new file mode 100644 index 00000000..d78ebe45 --- /dev/null +++ b/src/main/resources/assets/betterend/blockstates/lumecorn.json @@ -0,0 +1,10 @@ +{ + "variants": { + "shape=light1": { "model": "betterend:block/lumecorn_light_1" }, + "shape=light2": { "model": "betterend:block/lumecorn_light_2" }, + "shape=light3": { "model": "betterend:block/lumecorn_light_3" }, + "shape=middle": { "model": "betterend:block/lumecon_middle_big" }, + "shape=bottom_big": { "model": "betterend:block/lumecorn_bottom_big" }, + "shape=bottom_small": { "model": "betterend:block/lumecorn_bottom_small" } + } +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/lumecorn.json b/src/main/resources/assets/betterend/materialmaps/block/lumecorn.json new file mode 100644 index 00000000..bba3fb7d --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/lumecorn.json @@ -0,0 +1,10 @@ +{ + "defaultMap": { + "spriteMap": [ + { + "sprite": "betterend:block/lumecorn_light_1", + "material": "betterend:glow_inc" + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/capsacis_bark_1.json b/src/main/resources/assets/betterend/models/block/capsacis_bark_1.json deleted file mode 100644 index 7d89f680..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_bark_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_log_side" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_bark_2.json b/src/main/resources/assets/betterend/models/block/capsacis_bark_2.json deleted file mode 100644 index b0844d4e..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_bark_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_log_side_2" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_bark_3.json b/src/main/resources/assets/betterend/models/block/capsacis_bark_3.json deleted file mode 100644 index 4b266581..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_bark_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_log_side_3" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_0.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_0.json deleted file mode 100644 index 81bef2fb..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_0" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_1.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_1.json deleted file mode 100644 index 88b91485..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_1" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_2.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_2.json deleted file mode 100644 index 3ce9ed12..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_2" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_3.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_3.json deleted file mode 100644 index bad70714..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_3" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_4.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_4.json deleted file mode 100644 index d87e3a0c..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_4" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_5.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_5.json deleted file mode 100644 index 834740b8..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_5" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_6.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_6.json deleted file mode 100644 index 130d8da0..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_6" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_cap_7.json b/src/main/resources/assets/betterend/models/block/capsacis_cap_7.json deleted file mode 100644 index af98b021..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_cap_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "betterend:block/capsacis_cap_7" - } -} diff --git a/src/main/resources/assets/betterend/models/block/capsacis_log_1.json b/src/main/resources/assets/betterend/models/block/capsacis_log_1.json deleted file mode 100644 index 4fdebd0d..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_log_1.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "betterend:block/capsacis_log_top", - "side": "betterend:block/capsacis_log_side" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/capsacis_log_2.json b/src/main/resources/assets/betterend/models/block/capsacis_log_2.json deleted file mode 100644 index 94e439e1..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_log_2.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "betterend:block/capsacis_log_top", - "side": "betterend:block/capsacis_log_side_2" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/capsacis_log_3.json b/src/main/resources/assets/betterend/models/block/capsacis_log_3.json deleted file mode 100644 index 150ba53c..00000000 --- a/src/main/resources/assets/betterend/models/block/capsacis_log_3.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "betterend:block/capsacis_log_top", - "side": "betterend:block/capsacis_log_side_3" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/lumecon_middle_big.json b/src/main/resources/assets/betterend/models/block/lumecon_middle_big.json new file mode 100644 index 00000000..b51bf2d0 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/lumecon_middle_big.json @@ -0,0 +1,156 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/lumecorn_bark", + "texture": "betterend:block/lumecorn_bark", + "leaf_2": "betterend:block/lumecorn_leaf_2", + "leaf_1": "betterend:block/lumecorn_leaf_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 8, 0, 14, 6 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 8, 0, 14, 6 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY4", + "from": [ 11, 14, 0 ], + "to": [ 27, 14.001, 16 ], + "rotation": { "origin": [ 11, 14, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 90 } + } + }, + { + "__comment": "PlaneY4", + "from": [ 11, 15, 0 ], + "to": [ 19, 15.001, 16 ], + "rotation": { "origin": [ 11, 15, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1", "rotation": 90 }, + "up": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf_1", "rotation": 90 } + } + }, + { + "__comment": "PlaneY4", + "from": [ -11, 13.999, 0 ], + "to": [ 5, 14, 16 ], + "rotation": { "origin": [ 5, 14, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2", "rotation": 270 } + } + }, + { + "__comment": "PlaneY4", + "from": [ -3, 14.999, 0 ], + "to": [ 5, 15, 16 ], + "rotation": { "origin": [ 5, 15, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf_1", "rotation": 270 }, + "up": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1", "rotation": 270 } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 14, 11 ], + "to": [ 16, 14.001, 27 ], + "rotation": { "origin": [ 0, 14, 11 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 180 } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 15, 10.999 ], + "to": [ 16, 23, 11 ], + "rotation": { "origin": [ 0, 15, 11 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 16, 0, 8 ], "texture": "#leaf_1", "rotation": 180 }, + "south": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 13.999, -11 ], + "to": [ 16, 14, 5 ], + "rotation": { "origin": [ 0, 14, 5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 180 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2" } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 15, 4.999 ], + "to": [ 16, 23, 5 ], + "rotation": { "origin": [ 0, 15, 5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 16, 0, 8 ], "texture": "#leaf_1", "rotation": 180 }, + "south": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneY24", + "from": [ 13, 14, -2.5 ], + "to": [ 21, 14.001, 5.5 ], + "rotation": { "origin": [ 13, 14, -2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1" }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneY24", + "from": [ 10.5, 14, 5 ], + "to": [ 18.5, 14.001, 13 ], + "rotation": { "origin": [ 18.5, 15, 13 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1", "rotation": 180 }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1", "rotation": 180 } + } + }, + { + "__comment": "PlaneY24", + "from": [ -5, 14, 10.5 ], + "to": [ 3, 14.001, 18.5 ], + "rotation": { "origin": [ 3, 15, 18.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1", "rotation": 180 }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1", "rotation": 180 } + } + }, + { + "__comment": "PlaneY24", + "from": [ -2.4999, 14, 3 ], + "to": [ 5.5001, 14.001, 11 ], + "rotation": { "origin": [ -2.5, 15, 3 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1" }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/lumecorn_bottom_big.json b/src/main/resources/assets/betterend/models/block/lumecorn_bottom_big.json new file mode 100644 index 00000000..c751a83e --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/lumecorn_bottom_big.json @@ -0,0 +1,45 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/lumecorn_bark", + "texture": "betterend:block/lumecorn_bark", + "roots": "betterend:block/lumecorn_roots" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 8, 6, 14, 12 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 8, 0, 14, 6 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 0, 0, 0 ], + "to": [ 0.001, 16, 22.5 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneX2", + "from": [ 16, 0, 0 ], + "to": [ 16.001, 16, 22.5 ], + "rotation": { "origin": [ 16, 0, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/lumecorn_bottom_small.json b/src/main/resources/assets/betterend/models/block/lumecorn_bottom_small.json new file mode 100644 index 00000000..c2a96a29 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/lumecorn_bottom_small.json @@ -0,0 +1,179 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/lumecorn_bark", + "texture": "betterend:block/lumecorn_bark", + "leaf_2": "betterend:block/lumecorn_leaf_2", + "leaf_1": "betterend:block/lumecorn_leaf_1", + "roots": "betterend:block/lumecorn_roots" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 8, 0, 14, 6 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 8, 0, 14, 6 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "south": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "west": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 0, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneY4", + "from": [ 11, 14, 0 ], + "to": [ 27, 14.001, 16 ], + "rotation": { "origin": [ 11, 14, 0 ], "axis": "z", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2", "rotation": 90 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 90 } + } + }, + { + "__comment": "PlaneY4", + "from": [ 11, 15, 0 ], + "to": [ 19, 15.001, 16 ], + "rotation": { "origin": [ 11, 15, 0 ], "axis": "z", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1", "rotation": 90 }, + "up": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf_1", "rotation": 90 } + } + }, + { + "__comment": "PlaneY4", + "from": [ -11, 13.999, 0 ], + "to": [ 5, 14, 16 ], + "rotation": { "origin": [ 5, 14, 0 ], "axis": "z", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 270 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2", "rotation": 270 } + } + }, + { + "__comment": "PlaneY4", + "from": [ -3, 14.999, 0 ], + "to": [ 5, 15, 16 ], + "rotation": { "origin": [ 5, 15, 0 ], "axis": "z", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 8, 16, 16 ], "texture": "#leaf_1", "rotation": 270 }, + "up": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1", "rotation": 270 } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 14, 11 ], + "to": [ 16, 14.001, 27 ], + "rotation": { "origin": [ 0, 14, 11 ], "axis": "x", "angle": 22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 180 } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 15, 10.999 ], + "to": [ 16, 23, 11 ], + "rotation": { "origin": [ 0, 15, 11 ], "axis": "x", "angle": 45 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 16, 0, 8 ], "texture": "#leaf_1", "rotation": 180 }, + "south": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 13.999, -11 ], + "to": [ 16, 14, 5 ], + "rotation": { "origin": [ 0, 14, 5 ], "axis": "x", "angle": -22.5 }, + "shade": false, + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#leaf_2", "rotation": 180 }, + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#leaf_2" } + } + }, + { + "__comment": "PlaneY17", + "from": [ 0, 15, 4.999 ], + "to": [ 16, 23, 5 ], + "rotation": { "origin": [ 0, 15, 5 ], "axis": "x", "angle": -45 }, + "shade": false, + "faces": { + "north": { "uv": [ 16, 16, 0, 8 ], "texture": "#leaf_1", "rotation": 180 }, + "south": { "uv": [ 16, 8, 0, 16 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneY24", + "from": [ 13, 14, -2.5 ], + "to": [ 21, 14.001, 5.5 ], + "rotation": { "origin": [ 13, 14, -2.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1" }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneY24", + "from": [ 10.5, 14, 5 ], + "to": [ 18.5, 14.001, 13 ], + "rotation": { "origin": [ 18.5, 15, 13 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1", "rotation": 180 }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1", "rotation": 180 } + } + }, + { + "__comment": "PlaneY24", + "from": [ -5, 14, 10.5 ], + "to": [ 3, 14.001, 18.5 ], + "rotation": { "origin": [ 3, 15, 18.5 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1", "rotation": 180 }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1", "rotation": 180 } + } + }, + { + "__comment": "PlaneY24", + "from": [ -2.4999, 14, 3 ], + "to": [ 5.5001, 14.001, 11 ], + "rotation": { "origin": [ -2.5, 15, 3 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 8, 12, 0 ], "texture": "#leaf_1" }, + "up": { "uv": [ 4, 0, 12, 8 ], "texture": "#leaf_1" } + } + }, + { + "__comment": "PlaneX14", + "from": [ 0, 0, 0 ], + "to": [ 0.001, 16, 22.5 ], + "rotation": { "origin": [ 0, 0, 0 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + }, + { + "__comment": "PlaneX14", + "from": [ 16, 0, 0 ], + "to": [ 16.001, 16, 22.5 ], + "rotation": { "origin": [ 16, 0, 0 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#roots" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/lumecorn_light_1.json b/src/main/resources/assets/betterend/models/block/lumecorn_light_1.json new file mode 100644 index 00000000..c7c70e16 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/lumecorn_light_1.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/lumecorn_light_1", + "texture": "betterend:block/lumecorn_light_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 5, 0, 5 ], + "to": [ 11, 16, 11 ], + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "south": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "west": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" }, + "east": { "uv": [ 5, 0, 11, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/lumecorn_light_2.json b/src/main/resources/assets/betterend/models/block/lumecorn_light_2.json new file mode 100644 index 00000000..866e326b --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/lumecorn_light_2.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/lumecorn_light_1", + "texture": "betterend:block/lumecorn_light_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 6, 0, 6 ], + "to": [ 10, 16, 10 ], + "faces": { + "down": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 6, 6, 10, 10 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "west": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 6, 0, 10, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/lumecorn_light_3.json b/src/main/resources/assets/betterend/models/block/lumecorn_light_3.json new file mode 100644 index 00000000..771c759e --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/lumecorn_light_3.json @@ -0,0 +1,22 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/lumecorn_light_1", + "texture": "betterend:block/lumecorn_light_1" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 16, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "down" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture", "cullface": "up" }, + "north": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "south": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 0, 9, 16 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_bark.png b/src/main/resources/assets/betterend/textures/block/lumecorn_bark.png new file mode 100644 index 00000000..fa71da05 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_bark.png differ diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_leaf_1.png b/src/main/resources/assets/betterend/textures/block/lumecorn_leaf_1.png new file mode 100644 index 00000000..7488b67d Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_leaf_1.png differ diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_leaf_2.png b/src/main/resources/assets/betterend/textures/block/lumecorn_leaf_2.png new file mode 100644 index 00000000..9ab93d96 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_leaf_2.png differ diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_light_1.png b/src/main/resources/assets/betterend/textures/block/lumecorn_light_1.png new file mode 100644 index 00000000..459f8269 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_light_1.png differ diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_light_2.png b/src/main/resources/assets/betterend/textures/block/lumecorn_light_2.png new file mode 100644 index 00000000..5f95e9dd Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_light_2.png differ diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_light_3.png b/src/main/resources/assets/betterend/textures/block/lumecorn_light_3.png new file mode 100644 index 00000000..6415a37a Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_light_3.png differ diff --git a/src/main/resources/assets/betterend/textures/block/lumecorn_roots.png b/src/main/resources/assets/betterend/textures/block/lumecorn_roots.png new file mode 100644 index 00000000..56434d06 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/lumecorn_roots.png differ