From c381260487413f3464d277aace5b5da8b7b034a9 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Sat, 27 Mar 2021 18:01:19 +0300 Subject: [PATCH] Smaragdant blocks, end tools fixes, fur & leaves blocks sounds fixes, translations, shaders --- .../betterend/blocks/EndstoneDustBlock.java | 5 +- .../ru/betterend/blocks/basis/FurBlock.java | 6 +- .../complex/CrystalSubblocksMaterial.java | 72 ++++++++++++++++++ .../blocks/complex/MetalMaterial.java | 12 +-- .../betterend/item/{ => tool}/EndAxeItem.java | 2 +- .../item/{ => tool}/EndHammerItem.java | 2 +- .../betterend/item/{ => tool}/EndHoeItem.java | 2 +- .../item/{ => tool}/EndPickaxeItem.java | 2 +- .../item/{ => tool}/EndShovelItem.java | 10 ++- .../item/{ => tool}/EndSwordItem.java | 2 +- .../mixin/common/AbstractBlockMixin.java | 2 +- .../java/ru/betterend/registry/EndBlocks.java | 10 ++- .../java/ru/betterend/registry/EndItems.java | 12 +-- .../betterend/blockstates/tenanea_leaves.json | 5 ++ .../assets/betterend/lang/en_us.json | 31 +++++++- .../assets/betterend/lang/ru_ru.json | 31 +++++++- ...rd.json => smaragdant_crystal_bricks.json} | 0 .../block/smaragdant_crystal_bricks_slab.json | 3 + .../smaragdant_crystal_bricks_stairs.json | 3 + .../block/smaragdant_crystal_bricks_wall.json | 3 + .../block/smaragdant_crystal_pedestal.json | 3 + .../block/smaragdant_crystal_pillar.json | 3 + .../block/smaragdant_crystal_polished.json | 3 + .../block/smaragdant_crystal_slab.json | 3 + .../block/smaragdant_crystal_stairs.json | 3 + .../block/smaragdant_crystal_tiles.json | 3 + .../block/smaragdant_crystal_wall.json | 3 + .../materialmaps/block/smaragdant_shard.json | 3 + .../models/block/tenanea_leaves.json | 6 ++ .../textures/block/smaragdant_crystal.png | Bin 0 -> 217 bytes .../block/smaragdant_crystal_bricks.png | Bin 0 -> 244 bytes .../block/smaragdant_crystal_pillar_side.png | Bin 0 -> 246 bytes .../block/smaragdant_crystal_pillar_top.png | Bin 0 -> 250 bytes .../block/smaragdant_crystal_polished.png | Bin 0 -> 238 bytes .../block/smaragdant_crystal_tiles.png | Bin 0 -> 243 bytes 35 files changed, 216 insertions(+), 29 deletions(-) create mode 100644 src/main/java/ru/betterend/blocks/complex/CrystalSubblocksMaterial.java rename src/main/java/ru/betterend/item/{ => tool}/EndAxeItem.java (94%) rename src/main/java/ru/betterend/item/{ => tool}/EndHammerItem.java (97%) rename src/main/java/ru/betterend/item/{ => tool}/EndHoeItem.java (91%) rename src/main/java/ru/betterend/item/{ => tool}/EndPickaxeItem.java (95%) rename src/main/java/ru/betterend/item/{ => tool}/EndShovelItem.java (67%) rename src/main/java/ru/betterend/item/{ => tool}/EndSwordItem.java (92%) create mode 100644 src/main/resources/assets/betterend/blockstates/tenanea_leaves.json rename src/main/resources/assets/betterend/materialmaps/block/{smaragdant_crystal_shard.json => smaragdant_crystal_bricks.json} (100%) create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_slab.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_stairs.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_wall.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pedestal.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pillar.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_polished.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_slab.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_stairs.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_tiles.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_wall.json create mode 100644 src/main/resources/assets/betterend/materialmaps/block/smaragdant_shard.json create mode 100644 src/main/resources/assets/betterend/models/block/tenanea_leaves.json create mode 100644 src/main/resources/assets/betterend/textures/block/smaragdant_crystal.png create mode 100644 src/main/resources/assets/betterend/textures/block/smaragdant_crystal_bricks.png create mode 100644 src/main/resources/assets/betterend/textures/block/smaragdant_crystal_pillar_side.png create mode 100644 src/main/resources/assets/betterend/textures/block/smaragdant_crystal_pillar_top.png create mode 100644 src/main/resources/assets/betterend/textures/block/smaragdant_crystal_polished.png create mode 100644 src/main/resources/assets/betterend/textures/block/smaragdant_crystal_tiles.png diff --git a/src/main/java/ru/betterend/blocks/EndstoneDustBlock.java b/src/main/java/ru/betterend/blocks/EndstoneDustBlock.java index 81504106..3dae7b77 100644 --- a/src/main/java/ru/betterend/blocks/EndstoneDustBlock.java +++ b/src/main/java/ru/betterend/blocks/EndstoneDustBlock.java @@ -6,6 +6,7 @@ import java.util.List; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; import net.minecraft.block.FallingBlock; @@ -20,7 +21,9 @@ public class EndstoneDustBlock extends FallingBlock { private static final int COLOR = MHelper.color(226, 239, 168); public EndstoneDustBlock() { - super(FabricBlockSettings.copyOf(Blocks.SAND).materialColor(Blocks.END_STONE.getDefaultMaterialColor())); + super(FabricBlockSettings.copyOf(Blocks.SAND) + .breakByTool(FabricToolTags.SHOVELS) + .materialColor(Blocks.END_STONE.getDefaultMaterialColor())); } @Override diff --git a/src/main/java/ru/betterend/blocks/basis/FurBlock.java b/src/main/java/ru/betterend/blocks/basis/FurBlock.java index 5c83224f..986d8b05 100644 --- a/src/main/java/ru/betterend/blocks/basis/FurBlock.java +++ b/src/main/java/ru/betterend/blocks/basis/FurBlock.java @@ -32,10 +32,10 @@ public class FurBlock extends AttachedBlock implements IRenderTypeable { private final ItemConvertible drop; private final int dropChance; - public FurBlock(ItemConvertible drop, int light, int dropChance) { + public FurBlock(ItemConvertible drop, int light, int dropChance, boolean wet) { super(FabricBlockSettings.of(Material.REPLACEABLE_PLANT) .breakByTool(FabricToolTags.SHEARS) - .sounds(BlockSoundGroup.WET_GRASS) + .sounds(wet ? BlockSoundGroup.WET_GRASS : BlockSoundGroup.GRASS) .luminance(light) .breakByHand(true) .noCollision()); @@ -46,7 +46,7 @@ public class FurBlock extends AttachedBlock implements IRenderTypeable { public FurBlock(ItemConvertible drop, int dropChance) { super(FabricBlockSettings.of(Material.REPLACEABLE_PLANT) .breakByTool(FabricToolTags.SHEARS) - .sounds(BlockSoundGroup.WET_GRASS) + .sounds(BlockSoundGroup.GRASS) .breakByHand(true) .noCollision()); this.drop = drop; diff --git a/src/main/java/ru/betterend/blocks/complex/CrystalSubblocksMaterial.java b/src/main/java/ru/betterend/blocks/complex/CrystalSubblocksMaterial.java new file mode 100644 index 00000000..55916dbd --- /dev/null +++ b/src/main/java/ru/betterend/blocks/complex/CrystalSubblocksMaterial.java @@ -0,0 +1,72 @@ +package ru.betterend.blocks.complex; + +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.Block; +import net.minecraft.tag.BlockTags; +import net.minecraft.tag.ItemTags; +import ru.betterend.blocks.EndPedestal; +import ru.betterend.blocks.basis.BlockBase; +import ru.betterend.blocks.basis.EndPillarBlock; +import ru.betterend.blocks.basis.EndSlabBlock; +import ru.betterend.blocks.basis.EndStairsBlock; +import ru.betterend.blocks.basis.EndWallBlock; +import ru.betterend.recipe.CraftingRecipes; +import ru.betterend.recipe.builders.GridRecipe; +import ru.betterend.registry.EndBlocks; +import ru.betterend.util.TagHelper; + +public class CrystalSubblocksMaterial { + public final Block polished; + public final Block tiles; + public final Block pillar; + public final Block stairs; + public final Block slab; + public final Block wall; + public final Block pedestal; + public final Block bricks; + public final Block brick_stairs; + public final Block brick_slab; + public final Block brick_wall; + + public CrystalSubblocksMaterial(String name, Block source) { + FabricBlockSettings material = FabricBlockSettings.copyOf(source); + polished = EndBlocks.registerBlock(name + "_polished", new BlockBase(material)); + tiles = EndBlocks.registerBlock(name + "_tiles", new BlockBase(material)); + pillar = EndBlocks.registerBlock(name + "_pillar", new EndPillarBlock(material)); + stairs = EndBlocks.registerBlock(name + "_stairs", new EndStairsBlock(source)); + slab = EndBlocks.registerBlock(name + "_slab", new EndSlabBlock(source)); + wall = EndBlocks.registerBlock(name + "_wall", new EndWallBlock(source)); + pedestal = EndBlocks.registerBlock(name + "_pedestal", new EndPedestal(source)); + bricks = EndBlocks.registerBlock(name + "_bricks", new BlockBase(material)); + brick_stairs = EndBlocks.registerBlock(name + "_bricks_stairs", new EndStairsBlock(bricks)); + brick_slab = EndBlocks.registerBlock(name + "_bricks_slab", new EndSlabBlock(bricks)); + brick_wall = EndBlocks.registerBlock(name + "_bricks_wall", new EndWallBlock(bricks)); + + // Recipes // + GridRecipe.make(name + "_bricks", bricks).setOutputCount(4).setShape("##", "##").addMaterial('#', source).setGroup("end_bricks").build(); + GridRecipe.make(name + "_polished", polished).setOutputCount(4).setShape("##", "##").addMaterial('#', bricks).setGroup("end_tile").build(); + GridRecipe.make(name + "_tiles", tiles).setOutputCount(4).setShape("##", "##").addMaterial('#', polished).setGroup("end_small_tile").build(); + GridRecipe.make(name + "_pillar", pillar).setShape("#", "#").addMaterial('#', slab).setGroup("end_pillar").build(); + + GridRecipe.make(name + "_stairs", stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', source).setGroup("end_stone_stairs").build(); + GridRecipe.make(name + "_slab", slab).setOutputCount(6).setShape("###").addMaterial('#', source).setGroup("end_stone_slabs").build(); + GridRecipe.make(name + "_bricks_stairs", brick_stairs).setOutputCount(4).setShape("# ", "## ", "###").addMaterial('#', bricks).setGroup("end_stone_stairs").build(); + GridRecipe.make(name + "_bricks_slab", brick_slab).setOutputCount(6).setShape("###").addMaterial('#', bricks).setGroup("end_stone_slabs").build(); + + GridRecipe.make(name + "_wall", wall).setOutputCount(6).setShape("###", "###").addMaterial('#', source).setGroup("end_wall").build(); + GridRecipe.make(name + "_bricks_wall", brick_wall).setOutputCount(6).setShape("###", "###").addMaterial('#', bricks).setGroup("end_wall").build(); + + CraftingRecipes.registerPedestal(name + "_pedestal", pedestal, slab, pillar); + + // Item Tags // + TagHelper.addTag(ItemTags.SLABS, slab, brick_slab); + TagHelper.addTag(ItemTags.STONE_BRICKS, bricks); + TagHelper.addTag(ItemTags.STONE_CRAFTING_MATERIALS, source); + TagHelper.addTag(ItemTags.STONE_TOOL_MATERIALS, source); + + // Block Tags // + TagHelper.addTag(BlockTags.STONE_BRICKS, bricks); + TagHelper.addTag(BlockTags.WALLS, wall, brick_wall); + TagHelper.addTag(BlockTags.SLABS, slab, brick_slab); + } +} \ No newline at end of file diff --git a/src/main/java/ru/betterend/blocks/complex/MetalMaterial.java b/src/main/java/ru/betterend/blocks/complex/MetalMaterial.java index 7356e108..86acd669 100644 --- a/src/main/java/ru/betterend/blocks/complex/MetalMaterial.java +++ b/src/main/java/ru/betterend/blocks/complex/MetalMaterial.java @@ -26,13 +26,13 @@ import ru.betterend.blocks.basis.EndStairsBlock; import ru.betterend.blocks.basis.EndTrapdoorBlock; import ru.betterend.blocks.basis.EndWoodenPlateBlock; import ru.betterend.item.EndArmorItem; -import ru.betterend.item.EndAxeItem; -import ru.betterend.item.EndHammerItem; -import ru.betterend.item.EndHoeItem; -import ru.betterend.item.EndPickaxeItem; -import ru.betterend.item.EndShovelItem; -import ru.betterend.item.EndSwordItem; import ru.betterend.item.PatternedItem; +import ru.betterend.item.tool.EndAxeItem; +import ru.betterend.item.tool.EndHammerItem; +import ru.betterend.item.tool.EndHoeItem; +import ru.betterend.item.tool.EndPickaxeItem; +import ru.betterend.item.tool.EndShovelItem; +import ru.betterend.item.tool.EndSwordItem; import ru.betterend.recipe.builders.AlloyingRecipe; import ru.betterend.recipe.builders.AnvilRecipe; import ru.betterend.recipe.builders.FurnaceRecipe; diff --git a/src/main/java/ru/betterend/item/EndAxeItem.java b/src/main/java/ru/betterend/item/tool/EndAxeItem.java similarity index 94% rename from src/main/java/ru/betterend/item/EndAxeItem.java rename to src/main/java/ru/betterend/item/tool/EndAxeItem.java index 8c5a4ac7..77e1e53a 100644 --- a/src/main/java/ru/betterend/item/EndAxeItem.java +++ b/src/main/java/ru/betterend/item/tool/EndAxeItem.java @@ -1,4 +1,4 @@ -package ru.betterend.item; +package ru.betterend.item.tool; import net.fabricmc.fabric.api.tool.attribute.v1.DynamicAttributeTool; import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; diff --git a/src/main/java/ru/betterend/item/EndHammerItem.java b/src/main/java/ru/betterend/item/tool/EndHammerItem.java similarity index 97% rename from src/main/java/ru/betterend/item/EndHammerItem.java rename to src/main/java/ru/betterend/item/tool/EndHammerItem.java index c739d346..004e05c4 100644 --- a/src/main/java/ru/betterend/item/EndHammerItem.java +++ b/src/main/java/ru/betterend/item/tool/EndHammerItem.java @@ -1,4 +1,4 @@ -package ru.betterend.item; +package ru.betterend.item.tool; import java.util.UUID; diff --git a/src/main/java/ru/betterend/item/EndHoeItem.java b/src/main/java/ru/betterend/item/tool/EndHoeItem.java similarity index 91% rename from src/main/java/ru/betterend/item/EndHoeItem.java rename to src/main/java/ru/betterend/item/tool/EndHoeItem.java index 55cb135e..ec635fc7 100644 --- a/src/main/java/ru/betterend/item/EndHoeItem.java +++ b/src/main/java/ru/betterend/item/tool/EndHoeItem.java @@ -1,4 +1,4 @@ -package ru.betterend.item; +package ru.betterend.item.tool; import net.minecraft.item.HoeItem; import net.minecraft.item.ToolMaterial; diff --git a/src/main/java/ru/betterend/item/EndPickaxeItem.java b/src/main/java/ru/betterend/item/tool/EndPickaxeItem.java similarity index 95% rename from src/main/java/ru/betterend/item/EndPickaxeItem.java rename to src/main/java/ru/betterend/item/tool/EndPickaxeItem.java index 67adfede..d30eb891 100644 --- a/src/main/java/ru/betterend/item/EndPickaxeItem.java +++ b/src/main/java/ru/betterend/item/tool/EndPickaxeItem.java @@ -1,4 +1,4 @@ -package ru.betterend.item; +package ru.betterend.item.tool; import net.fabricmc.fabric.api.tool.attribute.v1.DynamicAttributeTool; import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; diff --git a/src/main/java/ru/betterend/item/EndShovelItem.java b/src/main/java/ru/betterend/item/tool/EndShovelItem.java similarity index 67% rename from src/main/java/ru/betterend/item/EndShovelItem.java rename to src/main/java/ru/betterend/item/tool/EndShovelItem.java index 2af12d3a..a0b9de67 100644 --- a/src/main/java/ru/betterend/item/EndShovelItem.java +++ b/src/main/java/ru/betterend/item/tool/EndShovelItem.java @@ -1,7 +1,9 @@ -package ru.betterend.item; +package ru.betterend.item.tool; import net.fabricmc.fabric.api.tool.attribute.v1.DynamicAttributeTool; import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; +import net.fabricmc.fabric.impl.tool.attribute.ToolManagerImpl; +import net.fabricmc.fabric.impl.tool.attribute.ToolManagerImpl.Entry; import net.minecraft.block.BlockState; import net.minecraft.entity.LivingEntity; import net.minecraft.item.Item; @@ -25,6 +27,12 @@ public class EndShovelItem extends ShovelItem implements DynamicAttributeTool, P return 0; } + @Override + public float getMiningSpeedMultiplier(ItemStack stack, BlockState state) { + Entry entry = ToolManagerImpl.entryNullable(state.getBlock()); + return (entry != null && entry.getMiningLevel(FabricToolTags.SHOVELS) >= 0) ? this.miningSpeed : super.getMiningSpeedMultiplier(stack, state); + } + @Override public String getModelPattern(String name) { return Patterns.createJson(Patterns.ITEM_HANDHELD, name); diff --git a/src/main/java/ru/betterend/item/EndSwordItem.java b/src/main/java/ru/betterend/item/tool/EndSwordItem.java similarity index 92% rename from src/main/java/ru/betterend/item/EndSwordItem.java rename to src/main/java/ru/betterend/item/tool/EndSwordItem.java index 46afd39c..45f4f8dc 100644 --- a/src/main/java/ru/betterend/item/EndSwordItem.java +++ b/src/main/java/ru/betterend/item/tool/EndSwordItem.java @@ -1,4 +1,4 @@ -package ru.betterend.item; +package ru.betterend.item.tool; import net.fabricmc.fabric.api.tool.attribute.v1.DynamicAttributeTool; import net.minecraft.item.SwordItem; diff --git a/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java b/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java index 4f00cf95..fd4473ed 100644 --- a/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java +++ b/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java @@ -19,7 +19,7 @@ import net.minecraft.item.Items; import net.minecraft.loot.context.LootContext; import net.minecraft.loot.context.LootContextParameters; import net.minecraft.util.math.MathHelper; -import ru.betterend.item.EndHammerItem; +import ru.betterend.item.tool.EndHammerItem; import ru.betterend.util.MHelper; @Mixin(AbstractBlock.class) diff --git a/src/main/java/ru/betterend/registry/EndBlocks.java b/src/main/java/ru/betterend/registry/EndBlocks.java index 0bd65fee..ccb6104b 100644 --- a/src/main/java/ru/betterend/registry/EndBlocks.java +++ b/src/main/java/ru/betterend/registry/EndBlocks.java @@ -27,6 +27,7 @@ import ru.betterend.blocks.basis.TripleTerrainBlock; import ru.betterend.blocks.basis.VineBlock; import ru.betterend.blocks.basis.WallMushroomBlock; import ru.betterend.blocks.complex.ColoredMaterial; +import ru.betterend.blocks.complex.CrystalSubblocksMaterial; import ru.betterend.blocks.complex.MetalMaterial; import ru.betterend.blocks.complex.StoneMaterial; import ru.betterend.blocks.complex.WoodenMaterial; @@ -104,7 +105,7 @@ public class EndBlocks { public static final Block MOSSY_GLOWSHROOM_SAPLING = registerBlock("mossy_glowshroom_sapling", new MossyGlowshroomSaplingBlock()); public static final Block MOSSY_GLOWSHROOM_CAP = registerBlock("mossy_glowshroom_cap", new MossyGlowshroomCapBlock()); public static final Block MOSSY_GLOWSHROOM_HYMENOPHORE = registerBlock("mossy_glowshroom_hymenophore", new GlowingHymenophoreBlock()); - public static final Block MOSSY_GLOWSHROOM_FUR = registerBlock("mossy_glowshroom_fur", new FurBlock(MOSSY_GLOWSHROOM_SAPLING, 15, 16)); + public static final Block MOSSY_GLOWSHROOM_FUR = registerBlock("mossy_glowshroom_fur", new FurBlock(MOSSY_GLOWSHROOM_SAPLING, 15, 16, true)); public static final WoodenMaterial MOSSY_GLOWSHROOM = new WoodenMaterial("mossy_glowshroom", MaterialColor.GRAY, MaterialColor.WOOD); public static final Block PYTHADENDRON_SAPLING = registerBlock("pythadendron_sapling", new PythadendronSaplingBlock()); @@ -176,7 +177,7 @@ public class EndBlocks { public static final Block BLUE_VINE_SEED = registerBlock("blue_vine_seed", new BlueVineSeedBlock()); public static final Block BLUE_VINE = registerBlockNI("blue_vine", new BlueVineBlock()); public static final Block BLUE_VINE_LANTERN = registerBlock("blue_vine_lantern", new BlueVineLanternBlock()); - public static final Block BLUE_VINE_FUR = registerBlock("blue_vine_fur", new FurBlock(BLUE_VINE_SEED, 15, 3)); + public static final Block BLUE_VINE_FUR = registerBlock("blue_vine_fur", new FurBlock(BLUE_VINE_SEED, 15, 3, false)); public static final Block LANCELEAF_SEED = registerBlock("lanceleaf_seed", new LanceleafSeedBlock()); public static final Block LANCELEAF = registerBlockNI("lanceleaf", new LanceleafBlock()); @@ -184,7 +185,7 @@ public class EndBlocks { public static final Block GLOWING_PILLAR_SEED = registerBlock("glowing_pillar_seed", new GlowingPillarSeedBlock()); public static final Block GLOWING_PILLAR_ROOTS = registerBlockNI("glowing_pillar_roots", new GlowingPillarRootsBlock()); public static final Block GLOWING_PILLAR_LUMINOPHOR = registerBlock("glowing_pillar_luminophor", new GlowingPillarLuminophorBlock()); - public static final Block GLOWING_PILLAR_LEAVES = registerBlock("glowing_pillar_leaves", new FurBlock(GLOWING_PILLAR_SEED, 15, 3)); + public static final Block GLOWING_PILLAR_LEAVES = registerBlock("glowing_pillar_leaves", new FurBlock(GLOWING_PILLAR_SEED, 15, 3, false)); public static final Block SMALL_JELLYSHROOM = registerBlock("small_jellyshroom", new SmallJellyshroomBlock()); public static final Block BOLUX_MUSHROOM = registerBlock("bolux_mushroom", new BoluxMushroomBlock()); @@ -198,7 +199,7 @@ public class EndBlocks { public static final Block AMARANITA_HYPHAE = registerBlock("amaranita_hyphae", new AmaranitaStemBlock()); public static final Block AMARANITA_HYMENOPHORE = registerBlock("amaranita_hymenophore", new AmaranitaHymenophoreBlock()); public static final Block AMARANITA_LANTERN = registerBlock("amaranita_lantern", new GlowingHymenophoreBlock()); - public static final Block AMARANITA_FUR = registerBlock("amaranita_fur", new FurBlock(MOSSY_GLOWSHROOM_SAPLING, 15, 4)); + public static final Block AMARANITA_FUR = registerBlock("amaranita_fur", new FurBlock(MOSSY_GLOWSHROOM_SAPLING, 15, 4, true)); public static final Block AMARANITA_CAP = registerBlock("amaranita_cap", new AmaranitaCapBlock()); public static final Block NEON_CACTUS = registerBlock("neon_cactus", new NeonCactusBlock()); @@ -281,6 +282,7 @@ public class EndBlocks { public static final Block AURORA_CRYSTAL = registerBlock("aurora_crystal", new AuroraCrystalBlock()); public static final Block AMBER_BLOCK = registerBlock("amber_block", new AmberBlock()); public static final Block SMARAGDANT_CRYSTAL = registerBlock("smaragdant_crystal", new SmaragdantCrystalBlock()); + public static final CrystalSubblocksMaterial SMARAGDANT_SUBBLOCKS = new CrystalSubblocksMaterial("smaragdant_crystal", SMARAGDANT_CRYSTAL); public static final Block SMARAGDANT_CRYSTAL_SHARD = registerBlock("smaragdant_crystal_shard", new SmaragdantCrystalShardBlock()); public static final Block RESPAWN_OBELISK = registerBlock("respawn_obelisk", new RespawnObeliskBlock()); diff --git a/src/main/java/ru/betterend/registry/EndItems.java b/src/main/java/ru/betterend/registry/EndItems.java index e35a376b..4e3dc6f3 100644 --- a/src/main/java/ru/betterend/registry/EndItems.java +++ b/src/main/java/ru/betterend/registry/EndItems.java @@ -38,18 +38,18 @@ import ru.betterend.config.Configs; import ru.betterend.item.DrinkItem; import ru.betterend.item.EnchantedPetalItem; import ru.betterend.item.EndArmorItem; -import ru.betterend.item.EndAxeItem; -import ru.betterend.item.EndHammerItem; -import ru.betterend.item.EndHoeItem; -import ru.betterend.item.EndPickaxeItem; -import ru.betterend.item.EndShovelItem; import ru.betterend.item.EndSpawnEggItem; -import ru.betterend.item.EndSwordItem; import ru.betterend.item.EternalCrystalItem; import ru.betterend.item.PatternedDiscItem; import ru.betterend.item.PatternedItem; import ru.betterend.item.material.EndArmorMaterial; import ru.betterend.item.material.EndToolMaterial; +import ru.betterend.item.tool.EndAxeItem; +import ru.betterend.item.tool.EndHammerItem; +import ru.betterend.item.tool.EndHoeItem; +import ru.betterend.item.tool.EndPickaxeItem; +import ru.betterend.item.tool.EndShovelItem; +import ru.betterend.item.tool.EndSwordItem; import ru.betterend.tab.CreativeTabs; import ru.betterend.util.TagHelper; diff --git a/src/main/resources/assets/betterend/blockstates/tenanea_leaves.json b/src/main/resources/assets/betterend/blockstates/tenanea_leaves.json new file mode 100644 index 00000000..22dad4a7 --- /dev/null +++ b/src/main/resources/assets/betterend/blockstates/tenanea_leaves.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "betterend:block/tenanea_leaves" } + } +} diff --git a/src/main/resources/assets/betterend/lang/en_us.json b/src/main/resources/assets/betterend/lang/en_us.json index 5845f6b4..2d63c8a3 100644 --- a/src/main/resources/assets/betterend/lang/en_us.json +++ b/src/main/resources/assets/betterend/lang/en_us.json @@ -818,5 +818,34 @@ "item.betterend.cave_pumpkin_pie": "Cave Pumpkin Pie", "item.betterend.music_disc_strange_and_alien": "§bMusic Disc§r", - "item.betterend.music_disc_strange_and_alien.desc": "§5Firel§r - §fStrange And Alien§r" + "item.betterend.music_disc_strange_and_alien.desc": "§5Firel§r - §fStrange And Alien§r", + + "block.betterend.hydralux_petal_block_amber": "Amber Petal Block", + "block.betterend.hydralux_petal_block_beige": "Beige Petal Block", + "block.betterend.hydralux_petal_block_cream": "Cream Petal Block", + "block.betterend.hydralux_petal_block_dark_green": "Dark Green Petal Block", + "block.betterend.hydralux_petal_block_forest_green": "Forest Green Petal Block", + "block.betterend.hydralux_petal_block_hot_pink": "Hot Pink Petal Block", + "block.betterend.hydralux_petal_block_indigo": "Indigo Petal Block", + "block.betterend.hydralux_petal_block_maroon": "Maroon Petal Block", + "block.betterend.hydralux_petal_block_navy": "Navy Petal Block", + "block.betterend.hydralux_petal_block_olive": "Olive Petal Block", + "block.betterend.hydralux_petal_block_pale_green": "Pale Green Petal Block", + "block.betterend.hydralux_petal_block_pale_pink": "Pale Pink Petal Block", + "block.betterend.hydralux_petal_block_pale_yellow": "Pale Yellow Petal Block", + "block.betterend.hydralux_petal_block_sky_blue": "Sky Blue Petal Block", + "block.betterend.hydralux_petal_block_slate_gray": "Slate Gray Petal Block", + "block.betterend.hydralux_petal_block_violet": "Violet Petal Block", + + "block.betterend.smaragdant_crystal_bricks": "Smaragdant Bricks", + "block.betterend.smaragdant_crystal_bricks_slab": "Smaragdant Bricks Slab", + "block.betterend.smaragdant_crystal_bricks_stairs": "Smaragdant Bricks Stairs", + "block.betterend.smaragdant_crystal_bricks_wall": "Smaragdant Bricks Wall", + "block.betterend.smaragdant_crystal_pedestal": "Smaragdant Pedestal", + "block.betterend.smaragdant_crystal_pillar": "Smaragdant Pillar", + "block.betterend.smaragdant_crystal_polished": "Smaragdant Polished", + "block.betterend.smaragdant_crystal_slab": "Smaragdant Slab", + "block.betterend.smaragdant_crystal_stairs": "Smaragdant Stairs", + "block.betterend.smaragdant_crystal_tiles": "Smaragdant Tiles", + "block.betterend.smaragdant_crystal_wall": "Smaragdant Wall" } diff --git a/src/main/resources/assets/betterend/lang/ru_ru.json b/src/main/resources/assets/betterend/lang/ru_ru.json index 71441920..d23383e6 100644 --- a/src/main/resources/assets/betterend/lang/ru_ru.json +++ b/src/main/resources/assets/betterend/lang/ru_ru.json @@ -837,5 +837,34 @@ "block.betterend.neon_cactus": "Неоновый кактус", "item.betterend.cave_pumpkin_pie": "Пирог из пещерной тыквы", - "item.betterend.music_disc_strange_and_alien": "§bПластинка§r" + "item.betterend.music_disc_strange_and_alien": "§bПластинка§r", + + "block.betterend.hydralux_petal_block_amber": "Янтарный блок лепестков", + "block.betterend.hydralux_petal_block_beige": "Бежевый блок лепестков", + "block.betterend.hydralux_petal_block_cream": "Кремовый блок лепестков", + "block.betterend.hydralux_petal_block_dark_green": "Тёмно-зелёный блок лепестков", + "block.betterend.hydralux_petal_block_forest_green": "Лесной зелёный блок лепестков", + "block.betterend.hydralux_petal_block_hot_pink": "Ярко-розовый блок лепестков", + "block.betterend.hydralux_petal_block_indigo": "Индиго блок лепестков", + "block.betterend.hydralux_petal_block_maroon": "Бордовый блок лепестков", + "block.betterend.hydralux_petal_block_navy": "Темно-синий блок лепестков", + "block.betterend.hydralux_petal_block_olive": "Оливковый блок лепестков", + "block.betterend.hydralux_petal_block_pale_green": "Бледно-зеленый блок лепестков", + "block.betterend.hydralux_petal_block_pale_pink": "Бледно-розовый блок лепестков", + "block.betterend.hydralux_petal_block_pale_yellow": "Бледно-жёлтый блок лепестков", + "block.betterend.hydralux_petal_block_sky_blue": "Неьесно-голубой блок лепестков", + "block.betterend.hydralux_petal_block_slate_gray": "Сланцево-серый блок лепестков", + "block.betterend.hydralux_petal_block_violet": "Лиловый блок лепестков", + + "block.betterend.smaragdant_crystal_bricks": "Смарагдантовые кирпичи", + "block.betterend.smaragdant_crystal_bricks_slab": "Плита из смарагдантовых кирпичей", + "block.betterend.smaragdant_crystal_bricks_stairs": "Ступени из смарагдантовых кирпичей", + "block.betterend.smaragdant_crystal_bricks_wall": "Стена из смарагдантовых кирпичей", + "block.betterend.smaragdant_crystal_pedestal": "Смарагдантовый пьедестал", + "block.betterend.smaragdant_crystal_pillar": "Смарагдантовая колонна", + "block.betterend.smaragdant_crystal_polished": "Полированный смарагдант", + "block.betterend.smaragdant_crystal_slab": "Смарагдантовая плита", + "block.betterend.smaragdant_crystal_stairs": "Смарагдантовые ступени", + "block.betterend.smaragdant_crystal_tiles": "Смарагдантовая плитка", + "block.betterend.smaragdant_crystal_wall": "Смарагдантовая стена" } \ No newline at end of file diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_shard.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks.json similarity index 100% rename from src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_shard.json rename to src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks.json diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_slab.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_slab.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_slab.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_stairs.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_stairs.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_stairs.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_wall.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_wall.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_bricks_wall.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pedestal.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pedestal.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pedestal.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pillar.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pillar.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_pillar.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_polished.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_polished.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_polished.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_slab.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_slab.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_slab.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_stairs.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_stairs.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_stairs.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_tiles.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_tiles.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_tiles.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_wall.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_wall.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_crystal_wall.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/materialmaps/block/smaragdant_shard.json b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_shard.json new file mode 100644 index 00000000..a72e6e79 --- /dev/null +++ b/src/main/resources/assets/betterend/materialmaps/block/smaragdant_shard.json @@ -0,0 +1,3 @@ +{ + "defaultMaterial": "betterend:glow_all" +} diff --git a/src/main/resources/assets/betterend/models/block/tenanea_leaves.json b/src/main/resources/assets/betterend/models/block/tenanea_leaves.json new file mode 100644 index 00000000..c8fd5d5e --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/tenanea_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/cube_noshade", + "textures": { + "texture": "betterend:block/tenanea_leaves" + } +} diff --git a/src/main/resources/assets/betterend/textures/block/smaragdant_crystal.png b/src/main/resources/assets/betterend/textures/block/smaragdant_crystal.png new file mode 100644 index 0000000000000000000000000000000000000000..e2981961edd094ff01eceda716d87fc41b656d2b GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!M1W6-E0AXJNn?o3Whkm*=&WW~ z(8_RT8N>V8x{@*5fl?eLL4Lsu{~_S&sSqQeSca#IV@L%f>%qoE7DEnZgP9xtAA0+6 zdfBqO_LWoaT@tZeB6f0@-yQMpOyAi*H)JeZD)jB@)4RTvZ*OydZQV8VHXHk@pYij= zRz+yaHB5au@zSzusd2x38<(1YcU?HG%gTe~ HDWM4f6O&T? literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/block/smaragdant_crystal_bricks.png b/src/main/resources/assets/betterend/textures/block/smaragdant_crystal_bricks.png new file mode 100644 index 0000000000000000000000000000000000000000..956bed0b474094c7e5e201d0ac5537b64b59a1a7 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~i2$DvS0K&c zlg1F6%TQFs&{@r}pq1gwGRF6_b#9wA0Hrueg8YIR{zJgkQz1q`u`*8=#}J9BzI}mw z2MjozLXX`2e~fu{+T}0IYkn}DpP&%q8^*Kx!Mm4f;U1?yO5B}wiy>{P*%#*WEL*d_ z4UcX-&{bWfB{DNUG_TG46NBP3_qp6He5b<_iZTTjWx7w}k)89walX%$y!NjW4ejbR hclFPQ&wA`1r2mzVd5$TAODfO>44$rjF6*2UngAA~SeXC- literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/block/smaragdant_crystal_pillar_side.png b/src/main/resources/assets/betterend/textures/block/smaragdant_crystal_pillar_side.png new file mode 100644 index 0000000000000000000000000000000000000000..515053e7589129f8c511b3469d9707e286604e90 GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~i2$DvS0K&c zlg1F6%TQFs&{@r}pq1gwGRF6_b#9wA0Hrueg8YIR{zJgkQz1q`u?kNY#}J9BzWtFx zE{Yt?tvdJq9}~V3ZdxC9TXDk?J&u+qc?F!Yx)N9NCZ9IECBXj1knIVh`lSA?>m41| zo%yBYaYVGLQSL=U@adIX`5vqlRh?@8V86$kL(dvI3kuVgl=a9Rw%C5)<`*gEPZt=g kCcf#k{vugyS9yT{+b-tW*KdiZ0^Pvi>FVdQ&MBb@06e-}761SM literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/block/smaragdant_crystal_pillar_top.png b/src/main/resources/assets/betterend/textures/block/smaragdant_crystal_pillar_top.png new file mode 100644 index 0000000000000000000000000000000000000000..5bb9b798fb45468c76da0d0dc3601792e65009ea GIT binary patch literal 250 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~i2$DvS0K&c zlg1F6%TQFs&{@r}pq1gwGRF6_b#9wA0Hrueg8YIR{zJgkQz1q`u^LYo#}J9BvHqS+ z4GtVZV$c8E^DXzQlvHt8Wqe5T_9pQw9THhHA_Ewt666dRuI^u{{H0U;$(M_1EgxpB z@Vlg{X02+zsG#F&a9H!YnB2*I4?=Z5T3ss=eYK|WjL@o@%wMbLUC#WaZ}!q~$L0lX oZgmCc7fs$OdD5@RwyQ#}J9BuKkXD zE`}UVtCjZt?`7X&?|hln|4N14$+Y@Ii9MHAIdR3fO^at_ws>mxg7MRgnu`k-8znpH zN@VkwtWJIY-6uoqeZT zGNM;!q?fH_ji}CEAn|UMukgR5`%LCPq!_tRJdN0pdtIC97~f6y2w}F*9vt&`CY)$j g7P|dJwe%eSo5{?RRabQA03E>K>FVdQ&MBb@08?;PH2?qr literal 0 HcmV?d00001