From 697d2bfe20205f77f27c30e12ce09eaf756d4c42 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Mon, 1 Mar 2021 21:44:17 +0300 Subject: [PATCH] Fixes, block models --- .../betterend/blocks/LargeAmaranitaBlock.java | 16 +++- .../betterend/blocks/SmallAmaranitaBlock.java | 15 +++- .../java/ru/betterend/util/BonemealUtil.java | 12 +++ .../blockstates/small_amaranita_mushroom.json | 5 +- .../materialmaps/item/amaranita_fur.json | 1 + .../block/small_amaranita_mushroom.json | 81 ++++++++++++++++++ .../block/small_amaranita_mushroom_01.json | 6 -- .../block/small_amaranita_mushroom_02.json | 6 -- .../models/item/small_amaranita_mushroom.json | 2 +- .../block/small_amaranita_mushroom.png | Bin 190 -> 462 bytes .../item/small_amaranita_mushroom.png | Bin 0 -> 190 bytes 11 files changed, 123 insertions(+), 21 deletions(-) create mode 100644 src/main/resources/assets/betterend/materialmaps/item/amaranita_fur.json create mode 100644 src/main/resources/assets/betterend/models/block/small_amaranita_mushroom.json delete mode 100644 src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_01.json delete mode 100644 src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_02.json create mode 100644 src/main/resources/assets/betterend/textures/item/small_amaranita_mushroom.png diff --git a/src/main/java/ru/betterend/blocks/LargeAmaranitaBlock.java b/src/main/java/ru/betterend/blocks/LargeAmaranitaBlock.java index cfab1b3e..38ce5610 100644 --- a/src/main/java/ru/betterend/blocks/LargeAmaranitaBlock.java +++ b/src/main/java/ru/betterend/blocks/LargeAmaranitaBlock.java @@ -5,10 +5,14 @@ import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.Material; +import net.minecraft.block.ShapeContext; import net.minecraft.sound.BlockSoundGroup; import net.minecraft.state.StateManager; import net.minecraft.state.property.EnumProperty; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.util.shape.VoxelShapes; +import net.minecraft.world.BlockView; import net.minecraft.world.WorldView; import ru.betterend.blocks.BlockProperties.TripleShape; import ru.betterend.blocks.basis.EndPlantBlock; @@ -16,19 +20,25 @@ import ru.betterend.registry.EndBlocks; public class LargeAmaranitaBlock extends EndPlantBlock { public static final EnumProperty SHAPE = BlockProperties.TRIPLE_SHAPE; + private static final VoxelShape SHAPE_BOTTOM = Block.createCuboidShape(4, 0, 4, 12, 14, 12); + private static final VoxelShape SHAPE_TOP = VoxelShapes.union(Block.createCuboidShape(1, 3, 1, 15, 16, 15), SHAPE_BOTTOM); public LargeAmaranitaBlock() { super(FabricBlockSettings.of(Material.PLANT) .luminance((state) -> (state.get(SHAPE) == TripleShape.TOP) ? 15 : 0) .breakByTool(FabricToolTags.SHEARS) .sounds(BlockSoundGroup.GRASS) - .breakByHand(true) - .noCollision()); + .breakByHand(true)); + } + + @Override + public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext ePos) { + return state.get(SHAPE) == TripleShape.TOP ? SHAPE_TOP : SHAPE_BOTTOM; } @Override protected boolean isTerrain(BlockState state) { - return state.getBlock() == EndBlocks.SANGNUM; + return state.isOf(EndBlocks.SANGNUM) || state.isOf(EndBlocks.MOSSY_OBSIDIAN) || state.isOf(EndBlocks.MOSSY_BONE); } @Override diff --git a/src/main/java/ru/betterend/blocks/SmallAmaranitaBlock.java b/src/main/java/ru/betterend/blocks/SmallAmaranitaBlock.java index 10c6e631..2bfecb86 100644 --- a/src/main/java/ru/betterend/blocks/SmallAmaranitaBlock.java +++ b/src/main/java/ru/betterend/blocks/SmallAmaranitaBlock.java @@ -2,17 +2,24 @@ package ru.betterend.blocks; import java.util.Random; +import net.minecraft.block.Block; import net.minecraft.block.BlockState; +import net.minecraft.block.ShapeContext; import net.minecraft.server.world.ServerWorld; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Vec3d; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.world.BlockView; import ru.betterend.blocks.basis.EndPlantBlock; import ru.betterend.registry.EndBlocks; import ru.betterend.registry.EndFeatures; public class SmallAmaranitaBlock extends EndPlantBlock { + private static final VoxelShape SHAPE = Block.createCuboidShape(4, 0, 4, 12, 10, 12); + @Override protected boolean isTerrain(BlockState state) { - return state.getBlock() == EndBlocks.SANGNUM; + return state.isOf(EndBlocks.SANGNUM) || state.isOf(EndBlocks.MOSSY_OBSIDIAN) || state.isOf(EndBlocks.MOSSY_BONE); } @Override @@ -24,6 +31,12 @@ public class SmallAmaranitaBlock extends EndPlantBlock { EndFeatures.LARGE_AMARANITA.getFeature().generate(world, null, random, pos, null); } + @Override + public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext ePos) { + Vec3d vec3d = state.getModelOffset(view, pos); + return SHAPE.offset(vec3d.x, vec3d.y, vec3d.z); + } + private BlockPos growBig(ServerWorld world, BlockPos pos) { for (int x = -1; x < 2; x++) { for (int z = -1; z < 2; z++) { diff --git a/src/main/java/ru/betterend/util/BonemealUtil.java b/src/main/java/ru/betterend/util/BonemealUtil.java index 226235fd..72a6c66f 100644 --- a/src/main/java/ru/betterend/util/BonemealUtil.java +++ b/src/main/java/ru/betterend/util/BonemealUtil.java @@ -47,6 +47,18 @@ public class BonemealUtil { addBonemealGrass(EndBlocks.RUTISCUS, EndBlocks.AERIDIUM, 0.2F); addBonemealGrass(EndBlocks.RUTISCUS, EndBlocks.LUTEBUS, 0.2F); addBonemealGrass(EndBlocks.RUTISCUS, EndBlocks.LAMELLARIUM); + + addBonemealGrass(EndBlocks.SANGNUM, EndBlocks.GLOBULAGUS); + addBonemealGrass(EndBlocks.SANGNUM, EndBlocks.CLAWFERN); + addBonemealGrass(EndBlocks.SANGNUM, EndBlocks.SMALL_AMARANITA_MUSHROOM, 0.1F); + + addBonemealGrass(EndBlocks.MOSSY_BONE, EndBlocks.GLOBULAGUS); + addBonemealGrass(EndBlocks.MOSSY_BONE, EndBlocks.CLAWFERN); + addBonemealGrass(EndBlocks.MOSSY_BONE, EndBlocks.SMALL_AMARANITA_MUSHROOM, 0.1F); + + addBonemealGrass(EndBlocks.MOSSY_OBSIDIAN, EndBlocks.GLOBULAGUS); + addBonemealGrass(EndBlocks.MOSSY_OBSIDIAN, EndBlocks.CLAWFERN); + addBonemealGrass(EndBlocks.MOSSY_OBSIDIAN, EndBlocks.SMALL_AMARANITA_MUSHROOM, 0.1F); } public static void addBonemealGrass(Block terrain, Block plant) { diff --git a/src/main/resources/assets/betterend/blockstates/small_amaranita_mushroom.json b/src/main/resources/assets/betterend/blockstates/small_amaranita_mushroom.json index 84030665..63f7c8c5 100644 --- a/src/main/resources/assets/betterend/blockstates/small_amaranita_mushroom.json +++ b/src/main/resources/assets/betterend/blockstates/small_amaranita_mushroom.json @@ -1,8 +1,5 @@ { "variants": { - "": [ - { "model": "betterend:block/small_amaranita_mushroom_01" }, - { "model": "betterend:block/small_amaranita_mushroom_02" } - ] + "": { "model": "betterend:block/small_amaranita_mushroom" } } } diff --git a/src/main/resources/assets/betterend/materialmaps/item/amaranita_fur.json b/src/main/resources/assets/betterend/materialmaps/item/amaranita_fur.json new file mode 100644 index 00000000..69a88e3b --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/item/amaranita_fur.json @@ -0,0 +1 @@ +{} diff --git a/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom.json b/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom.json new file mode 100644 index 00000000..41e0257c --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom.json @@ -0,0 +1,81 @@ +{ + "__comment": "Designed by Paulevs with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "betterend:block/small_amaranita_mushroom", + "texture": "betterend:block/small_amaranita_mushroom" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 4, 4, 4 ], + "to": [ 12, 8, 12 ], + "faces": { + "down": { "uv": [ 0, 8, 8, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 8, 8 ], "texture": "#texture" }, + "north": { "uv": [ 8, 4, 16, 8 ], "texture": "#texture" }, + "south": { "uv": [ 8, 4, 16, 8 ], "texture": "#texture" }, + "west": { "uv": [ 8, 4, 16, 8 ], "texture": "#texture" }, + "east": { "uv": [ 8, 4, 16, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 7, 0, 7 ], + "to": [ 9, 4, 9 ], + "faces": { + "north": { "uv": [ 14, 8, 16, 12 ], "texture": "#texture" }, + "south": { "uv": [ 14, 8, 16, 12 ], "texture": "#texture" }, + "west": { "uv": [ 14, 8, 16, 12 ], "texture": "#texture" }, + "east": { "uv": [ 14, 8, 16, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 5, 8, 5 ], + "to": [ 11, 10, 11 ], + "faces": { + "up": { "uv": [ 1, 1, 7, 7 ], "texture": "#texture" }, + "north": { "uv": [ 9, 2, 15, 4 ], "texture": "#texture" }, + "south": { "uv": [ 9, 2, 15, 4 ], "texture": "#texture" }, + "west": { "uv": [ 9, 2, 15, 4 ], "texture": "#texture" }, + "east": { "uv": [ 9, 2, 15, 4 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX4", + "from": [ 4.5, 2, 4 ], + "to": [ 4.501, 4, 12 ], + "faces": { + "west": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" }, + "east": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneX4", + "from": [ 11.5, 2, 4 ], + "to": [ 11.501, 4, 12 ], + "faces": { + "west": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" }, + "east": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ6", + "from": [ 4, 2, 4.5 ], + "to": [ 12, 4, 4.501 ], + "faces": { + "north": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" }, + "south": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "PlaneZ6", + "from": [ 4, 2, 11.5 ], + "to": [ 12, 4, 11.501 ], + "faces": { + "north": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" }, + "south": { "uv": [ 8, 13, 16, 15 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_01.json b/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_01.json deleted file mode 100644 index ae20c5ad..00000000 --- a/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_01.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "block/cross", - "textures": { - "cross": "betterend:block/small_amaranita_mushroom" - } -} diff --git a/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_02.json b/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_02.json deleted file mode 100644 index 6f917ca4..00000000 --- a/src/main/resources/assets/betterend/models/block/small_amaranita_mushroom_02.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "betterend:block/cross_inverted", - "textures": { - "cross": "betterend:block/small_amaranita_mushroom" - } -} diff --git a/src/main/resources/assets/betterend/models/item/small_amaranita_mushroom.json b/src/main/resources/assets/betterend/models/item/small_amaranita_mushroom.json index c6893c41..a6088d8f 100644 --- a/src/main/resources/assets/betterend/models/item/small_amaranita_mushroom.json +++ b/src/main/resources/assets/betterend/models/item/small_amaranita_mushroom.json @@ -1,6 +1,6 @@ { "parent": "item/generated", "textures": { - "layer0": "betterend:block/small_amaranita_mushroom" + "layer0": "betterend:item/small_amaranita_mushroom" } } diff --git a/src/main/resources/assets/betterend/textures/block/small_amaranita_mushroom.png b/src/main/resources/assets/betterend/textures/block/small_amaranita_mushroom.png index 2dd0ce703b048f954ef12eef13efa3ad86e186b2..e903055a9f52c181a4b9786669c55bedeaca3fbb 100644 GIT binary patch delta 447 zcmV;w0YLt~0nP)E8Gi-<001BJ|6u?C00DDSM?wIu&K&6g00D?eL_t(IjeU|oOT$1I z#($Rt3oX=8As8x16>-SoB6#0GTpR?UgP%Ygx(V)5aOfcJIu-l?euXGb4joEG5iEs* zB`I`BF~p(0BeiKC2$#E;=g+cOKcBwokwhUH! zqsVcyj#<6bBHxv*MAa06L6?os4`KXw23R}4#V(cgHPW@8yNj7K@m<+Ulm-!QsPo5(OiymhW?8n%5(q# delta 173 zcmX@dypM5$WIZzj1A~Sxe=v|@EDmyaVpw-h<|UA$7~m7)3Z%an+dffLdU#^hX;sy2 z{e_Mbt34LBg)g5{v2ktX;f-?pUIYOZahC-71vC7IgW9s%t3Y8BPZ!4!iK)p65+Mx} zCw2< P4Pfwe^>bP0l+XkKBRoQ% diff --git a/src/main/resources/assets/betterend/textures/item/small_amaranita_mushroom.png b/src/main/resources/assets/betterend/textures/item/small_amaranita_mushroom.png new file mode 100644 index 0000000000000000000000000000000000000000..2dd0ce703b048f954ef12eef13efa3ad86e186b2 GIT binary patch literal 190 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~#Q>iWS0Mex z*!GE{(!&$0POGYJ>o0ViSnaW}EqwWuij8Y44{wy)_X1=TcS(?6FvEX1s4c6#3KTZ+ zba4!kn3|j*5z;VmVy9s5`6E3#hfbV1)U>8WkY$F1pwgK&0v$PA($=#~W#(is&4~$M ZV~~EsQ2Ajok3LX8gQu&X%Q~loCICTKLdF09 literal 0 HcmV?d00001