diff --git a/src/main/java/ru/betterend/blocks/BlockSulphurCrystal.java b/src/main/java/ru/betterend/blocks/BlockSulphurCrystal.java index b9a0d271..720f94ab 100644 --- a/src/main/java/ru/betterend/blocks/BlockSulphurCrystal.java +++ b/src/main/java/ru/betterend/blocks/BlockSulphurCrystal.java @@ -1,9 +1,11 @@ package ru.betterend.blocks; import java.util.Collections; +import java.util.EnumMap; import java.util.List; import com.google.common.collect.Lists; +import com.google.common.collect.Maps; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; @@ -12,6 +14,7 @@ import net.minecraft.block.BlockState; import net.minecraft.block.FluidFillable; import net.minecraft.block.Material; import net.minecraft.block.MaterialColor; +import net.minecraft.block.ShapeContext; import net.minecraft.block.Waterloggable; import net.minecraft.fluid.Fluid; import net.minecraft.fluid.FluidState; @@ -25,14 +28,20 @@ import net.minecraft.state.property.BooleanProperty; import net.minecraft.state.property.IntProperty; import net.minecraft.state.property.Properties; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.WorldAccess; import net.minecraft.world.WorldView; import ru.betterend.blocks.basis.BlockAttached; import ru.betterend.client.render.ERenderLayer; import ru.betterend.interfaces.IRenderTypeable; +import ru.betterend.registry.EndItems; +import ru.betterend.util.MHelper; public class BlockSulphurCrystal extends BlockAttached implements IRenderTypeable, Waterloggable, FluidFillable { + private static final EnumMap BOUNDING_SHAPES = Maps.newEnumMap(Direction.class); public static final IntProperty AGE = IntProperty.of("age", 0, 2); public static final BooleanProperty WATERLOGGED = Properties.WATERLOGGED; @@ -58,7 +67,7 @@ public class BlockSulphurCrystal extends BlockAttached implements IRenderTypeabl @Override public List getDroppedStacks(BlockState state, LootContext.Builder builder) { - return state.get(AGE) < 2 ? Collections.emptyList() : Lists.newArrayList(new ItemStack(this)); + return state.get(AGE) < 2 ? Collections.emptyList() : Lists.newArrayList(new ItemStack(EndItems.CRYSTALLINE_SULPHUR, MHelper.randRange(1, 3, MHelper.RANDOM))); } @Override @@ -83,4 +92,18 @@ public class BlockSulphurCrystal extends BlockAttached implements IRenderTypeabl public FluidState getFluidState(BlockState state) { return state.get(WATERLOGGED) ? Fluids.WATER.getStill(false) : Fluids.EMPTY.getDefaultState(); } + + @Override + public VoxelShape getOutlineShape(BlockState state, BlockView view, BlockPos pos, ShapeContext ePos) { + return BOUNDING_SHAPES.get(state.get(FACING)); + } + + static { + BOUNDING_SHAPES.put(Direction.UP, VoxelShapes.cuboid(0.125, 0.0, 0.125, 0.875F, 0.5, 0.875F)); + BOUNDING_SHAPES.put(Direction.DOWN, VoxelShapes.cuboid(0.125, 0.5, 0.125, 0.875F, 1.0, 0.875F)); + BOUNDING_SHAPES.put(Direction.NORTH, VoxelShapes.cuboid(0.125, 0.125, 0.5, 0.875F, 0.875F, 1.0)); + BOUNDING_SHAPES.put(Direction.SOUTH, VoxelShapes.cuboid(0.125, 0.125, 0.0, 0.875F, 0.875F, 0.5)); + BOUNDING_SHAPES.put(Direction.WEST, VoxelShapes.cuboid(0.5, 0.125, 0.125, 1.0, 0.875F, 0.875F)); + BOUNDING_SHAPES.put(Direction.EAST, VoxelShapes.cuboid(0.0, 0.125, 0.125, 0.5, 0.875F, 0.875F)); + } } diff --git a/src/main/java/ru/betterend/registry/EndItems.java b/src/main/java/ru/betterend/registry/EndItems.java index 638a8524..62c811f4 100644 --- a/src/main/java/ru/betterend/registry/EndItems.java +++ b/src/main/java/ru/betterend/registry/EndItems.java @@ -59,7 +59,7 @@ public class EndItems { public final static Item RAW_AMBER = registerItem("raw_amber"); public final static Item AMBER_GEM = registerItem("amber_gem"); public final static Item GLOWING_BULB = registerItem("glowing_bulb"); - public final static Item CRYSTALLINE_SULFUR = registerItem("crystalline_sulfur"); + public final static Item CRYSTALLINE_SULPHUR = registerItem("crystalline_sulphur"); // Armor // public static final Item TERMINITE_HELMET = registerItem("terminite_helmet", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.HEAD, makeSettings())); diff --git a/src/main/resources/assets/betterend/lang/en_us.json b/src/main/resources/assets/betterend/lang/en_us.json index 391c2a89..20364078 100644 --- a/src/main/resources/assets/betterend/lang/en_us.json +++ b/src/main/resources/assets/betterend/lang/en_us.json @@ -362,5 +362,24 @@ "block.betterend.bulb_lantern_white": "White Bulb Lantern", "block.betterend.bulb_lantern_yellow": "Yellow Bulb Lantern", - "block.betterend.bushy_grass": "Bushy Grass" + "block.betterend.bushy_grass": "Bushy Grass", + + "block.betterend.brimstone": "Brimstone", + "block.betterend.sulfuric_rock": "Sulfuric Rock", + "block.betterend.sulfuric_rock_bricks": "Sulfuric Rock Bricks", + "block.betterend.sulfuric_rock_bricks_slab": "Sulfuric Rock Bricks Slab", + "block.betterend.sulfuric_rock_bricks_stairs": "Sulfuric Rock Bricks Stairs", + "block.betterend.sulfuric_rock_bricks_wall": "Sulfuric Rock Bricks Wall", + "block.betterend.sulfuric_rock_button": "Sulfuric Rock Button", + "block.betterend.sulfuric_rock_lantern": "Sulfuric Rock Lantern", + "block.betterend.sulfuric_rock_pedestal": "Sulfuric Rock Pedestal", + "block.betterend.sulfuric_rock_pillar": "Sulfuric Rock Pillar", + "block.betterend.sulfuric_rock_plate": "Sulfuric Rock Plate", + "block.betterend.sulfuric_rock_polished": "Sulfuric Rock Polished", + "block.betterend.sulfuric_rock_slab": "Sulfuric Rock Slab", + "block.betterend.sulfuric_rock_stairs": "Sulfuric Rock Stairs", + "block.betterend.sulfuric_rock_tiles": "Sulfuric Rock Tiles", + "block.betterend.sulfuric_rock_wall": "Sulfuric Rock Wall", + "block.betterend.sulphur_crystal": "Sulphur Crystal", + "item.betterend.crystalline_sulphur": "Crystalline Sulphur" } \ No newline at end of file diff --git a/src/main/resources/assets/betterend/lang/ru_ru.json b/src/main/resources/assets/betterend/lang/ru_ru.json index 0af1f84f..2f4ff9e2 100644 --- a/src/main/resources/assets/betterend/lang/ru_ru.json +++ b/src/main/resources/assets/betterend/lang/ru_ru.json @@ -364,5 +364,24 @@ "block.betterend.bulb_lantern_white": "Белый луковичный фонарь", "block.betterend.bulb_lantern_yellow": "Жёлтый луковичный фонарь", - "block.betterend.bushy_grass": "Густая трава" + "block.betterend.bushy_grass": "Густая трава", + + "block.betterend.brimstone": "Сера", + "block.betterend.sulfuric_rock": "Серный камень", + "block.betterend.sulfuric_rock_bricks": "Кирпичи из серного камня", + "block.betterend.sulfuric_rock_bricks_slab": "Кирпичная плита из серного камня", + "block.betterend.sulfuric_rock_bricks_stairs": "Кирпичные ступени из серного камня", + "block.betterend.sulfuric_rock_bricks_wall": "Стена из серного камня", + "block.betterend.sulfuric_rock_button": "Кнопка из серного камня", + "block.betterend.sulfuric_rock_lantern": "Фонарь из серного камня", + "block.betterend.sulfuric_rock_pedestal": "Пьедестал из серного камня", + "block.betterend.sulfuric_rock_pillar": "Колонна из серного камня", + "block.betterend.sulfuric_rock_plate": "Нажимная плита из серного камня", + "block.betterend.sulfuric_rock_polished": "Полированный серный камень", + "block.betterend.sulfuric_rock_slab": "Плита из серного камня", + "block.betterend.sulfuric_rock_stairs": "Ступени из серного камня", + "block.betterend.sulfuric_rock_tiles": "Плитка из серного камня", + "block.betterend.sulfuric_rock_wall": "Стена из серного камня", + "block.betterend.sulphur_crystal": "Кристалл серы", + "item.betterend.crystalline_sulphur": "Кристаллическая сера" } \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/crystalline_sulfur.json b/src/main/resources/assets/betterend/models/item/crystalline_sulfur.json deleted file mode 100644 index ca64b674..00000000 --- a/src/main/resources/assets/betterend/models/item/crystalline_sulfur.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "item/generated", - "textures": { - "layer0": "betterend:block/crystalline_sulfur" - } -} diff --git a/src/main/resources/assets/betterend/models/item/crystalline_sulphur.json b/src/main/resources/assets/betterend/models/item/crystalline_sulphur.json new file mode 100644 index 00000000..de32e922 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/crystalline_sulphur.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betterend:item/crystalline_sulphur" + } +} diff --git a/src/main/resources/assets/betterend/models/item/sulphur_crystal.json b/src/main/resources/assets/betterend/models/item/sulphur_crystal.json index 2021ae91..d7683cd8 100644 --- a/src/main/resources/assets/betterend/models/item/sulphur_crystal.json +++ b/src/main/resources/assets/betterend/models/item/sulphur_crystal.json @@ -1,6 +1,6 @@ { "parent": "item/generated", "textures": { - "layer0": "betterend:block/crystalline_sulfur_3" + "layer0": "betterend:block/sulphur_crystal_2" } } diff --git a/src/main/resources/assets/betterend/textures/item/crystalline_sulfur.png b/src/main/resources/assets/betterend/textures/item/crystalline_sulphur.png similarity index 100% rename from src/main/resources/assets/betterend/textures/item/crystalline_sulfur.png rename to src/main/resources/assets/betterend/textures/item/crystalline_sulphur.png