diff --git a/src/main/java/ru/betterend/blocks/BlockJellyshroomCap.java b/src/main/java/ru/betterend/blocks/BlockJellyshroomCap.java new file mode 100644 index 00000000..1da7ed8b --- /dev/null +++ b/src/main/java/ru/betterend/blocks/BlockJellyshroomCap.java @@ -0,0 +1,72 @@ +package ru.betterend.blocks; + +import java.io.Reader; +import java.util.List; + +import com.google.common.collect.Lists; + +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.AbstractGlassBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.client.color.block.BlockColorProvider; +import net.minecraft.client.color.item.ItemColorProvider; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootContext; +import net.minecraft.util.Identifier; +import net.minecraft.util.registry.Registry; +import ru.betterend.client.render.ERenderLayer; +import ru.betterend.interfaces.IColorProvider; +import ru.betterend.interfaces.IRenderTypeable; +import ru.betterend.patterns.BlockPatterned; +import ru.betterend.patterns.Patterns; +import ru.betterend.util.MHelper; + +public class BlockJellyshroomCap extends AbstractGlassBlock implements IRenderTypeable, BlockPatterned, IColorProvider { + private final int color; + + public BlockJellyshroomCap(int r, int g, int b) { + super(FabricBlockSettings.copyOf(Blocks.SLIME_BLOCK)); + color = MHelper.color(r, g, b); + } + + @Override + public ERenderLayer getRenderLayer() { + return ERenderLayer.TRANSLUCENT; + } + + @Override + public List getDroppedStacks(BlockState state, LootContext.Builder builder) { + return Lists.newArrayList(new ItemStack(this)); + } + + @Override + public String getStatesPattern(Reader data) { + String block = Registry.BLOCK.getId(this).getPath(); + return Patterns.createJson(data, block, block); + } + + @Override + public String getModelPattern(String block) { + return Patterns.createJson(Patterns.BLOCK_COLORED, "jellyshroom_cap"); + } + + @Override + public Identifier statePatternId() { + return Patterns.STATE_SIMPLE; + } + + @Override + public BlockColorProvider getProvider() { + return (state, world, pos, tintIndex) -> { + return color; + }; + } + + @Override + public ItemColorProvider getItemProvider() { + return (stack, tintIndex) -> { + return color; + }; + } +} diff --git a/src/main/java/ru/betterend/patterns/Patterns.java b/src/main/java/ru/betterend/patterns/Patterns.java index 0da7c155..4ac4ede2 100644 --- a/src/main/java/ru/betterend/patterns/Patterns.java +++ b/src/main/java/ru/betterend/patterns/Patterns.java @@ -83,6 +83,7 @@ public class Patterns { public final static Identifier BLOCK_BULB_LANTERN_COLORED_CEIL = BetterEnd.makeID("models/block/bulb_lantern_colored_ceil.json"); public final static Identifier BLOCK_PETAL_COLORED = BetterEnd.makeID("models/block/block_petal_colored.json"); public final static Identifier BLOCK_COMPOSTER = BetterEnd.makeID("patterns/block/composter.json"); + public final static Identifier BLOCK_COLORED = BetterEnd.makeID("patterns/block/block_colored.json"); //Models Item public final static Identifier ITEM_WALL = BetterEnd.makeID("patterns/item/pattern_wall.json"); diff --git a/src/main/java/ru/betterend/registry/EndBlocks.java b/src/main/java/ru/betterend/registry/EndBlocks.java index 7548fd3a..28f3db1f 100644 --- a/src/main/java/ru/betterend/registry/EndBlocks.java +++ b/src/main/java/ru/betterend/registry/EndBlocks.java @@ -42,6 +42,7 @@ import ru.betterend.blocks.BlockHydraluxPetal; import ru.betterend.blocks.BlockHydraluxPetalColored; import ru.betterend.blocks.BlockHydraluxSapling; import ru.betterend.blocks.BlockHydrothermalVent; +import ru.betterend.blocks.BlockJellyshroomCap; import ru.betterend.blocks.BlockLacugroveSapling; import ru.betterend.blocks.BlockLanceleaf; import ru.betterend.blocks.BlockLanceleafSeed; @@ -185,6 +186,9 @@ public class EndBlocks { public static final Block UMBRELLA_TREE_CLUSTER_EMPTY = registerBlock("umbrella_tree_cluster_empty", new BlockUmbrellaTreeClusterEmpty()); public static final WoodenMaterial UMBRELLA_TREE = new WoodenMaterial("umbrella_tree", MaterialColor.BLUE, MaterialColor.GREEN); + public static final Block JELLYSHROOM_CAP_PURPLE = registerBlock("jellyshroom_cap_purple", new BlockJellyshroomCap(255, 0, 255)); + public static final WoodenMaterial JELLYSHROOM = new WoodenMaterial("jellyshroom", MaterialColor.PURPLE, MaterialColor.LIGHT_BLUE); + // Small Plants // public static final Block UMBRELLA_MOSS = registerBlock("umbrella_moss", new BlockUmbrellaMoss()); public static final Block UMBRELLA_MOSS_TALL = registerBlock("umbrella_moss_tall", new BlockUmbrellaMossTall()); diff --git a/src/main/resources/assets/betterend/lang/en_gb.json b/src/main/resources/assets/betterend/lang/en_gb.json index b52aab43..d001c2ce 100644 --- a/src/main/resources/assets/betterend/lang/en_gb.json +++ b/src/main/resources/assets/betterend/lang/en_gb.json @@ -17,4 +17,23 @@ "block.betterend.sulphur_crystal": "Sulphur Crystal", "item.betterend.crystalline_sulphur": "Sulphur", "biome.betterend.sulphur_springs": "Sulphur Springs", + + "block.betterend.mossy_glowshroom_stripped_bark": "Striped Mossy Glowshroom Bark", + "block.betterend.mossy_glowshroom_stripped_log": "Striped Mossy Glowshroom Log", + "block.betterend.pythadendron_stripped_bark": "Striped Pythadendron Bark", + "block.betterend.pythadendron_stripped_log": "Striped Pythadendron Log", + "block.betterend.end_lotus_stripped_bark": "Striped End Lotus Bark", + "block.betterend.end_lotus_stripped_log": "Striped End Lotus Log", + "block.betterend.lacugrove_stripped_bark": "Striped Lacugrove Bark", + "block.betterend.lacugrove_stripped_log": "Striped Lacugrove Log", + "block.betterend.dragon_tree_stripped_bark": "Striped Dragon Tree Bark", + "block.betterend.dragon_tree_stripped_log": "Striped Dragon Tree Log", + "block.betterend.tenanea_stripped_bark": "Striped Tenanea Bark", + "block.betterend.tenanea_stripped_log": "Striped Tenanea Log", + "block.betterend.helix_tree_stripped_bark": "Striped Helix Tree Bark", + "block.betterend.helix_tree_stripped_log": "Striped Helix Tree Log", + "block.betterend.umbrella_tree_stripped_bark": "Striped Umbrella Tree Bark", + "block.betterend.umbrella_tree_stripped_log": "Striped Umbrella Tree Log", + "block.betterend.jellyshroom_stripped_bark": "Striped Jellyshroom Bark", + "block.betterend.jellyshroom_stripped_log": "Striped Jellyshroom Log" } \ No newline at end of file diff --git a/src/main/resources/assets/betterend/lang/en_us.json b/src/main/resources/assets/betterend/lang/en_us.json index 2547499b..93702fea 100644 --- a/src/main/resources/assets/betterend/lang/en_us.json +++ b/src/main/resources/assets/betterend/lang/en_us.json @@ -523,5 +523,27 @@ "block.betterend.umbrella_tree_cluster": "Umbrella Tree Cluster", "block.betterend.umbrella_tree_cluster_empty": "Empty Umbrella Tree Cluster", "block.betterend.jungle_vine": "Jungle Vine", - "block.betterend.jungle_fern": "Jungle Fern" + "block.betterend.jungle_fern": "Jungle Fern", + + "block.betterend.jellyshroom_bark": "Jellyshroom Bark", + "block.betterend.jellyshroom_barrel": "Jellyshroom Barrel", + "block.betterend.jellyshroom_bookshelf": "Jellyshroom Bookshelf", + "block.betterend.jellyshroom_button": "Jellyshroom Button", + "block.betterend.jellyshroom_cap_purple": "Purple Jellyshroom Cap", + "block.betterend.jellyshroom_chest": "Jellyshroom Chest", + "block.betterend.jellyshroom_composter": "Jellyshroom Composter", + "block.betterend.jellyshroom_crafting_table": "Jellyshroom Crafting Table", + "block.betterend.jellyshroom_door": "Jellyshroom Door", + "block.betterend.jellyshroom_fence": "Jellyshroom Fence", + "block.betterend.jellyshroom_gate": "Jellyshroom Gate", + "block.betterend.jellyshroom_ladder": "Jellyshroom Ladder", + "block.betterend.jellyshroom_log": "Jellyshroom Log", + "block.betterend.jellyshroom_planks": "Jellyshroom Planks", + "block.betterend.jellyshroom_plate": "Jellyshroom Pressure Plate", + "block.betterend.jellyshroom_sign": "Jellyshroom Sign", + "block.betterend.jellyshroom_slab": "Jellyshroom Slab", + "block.betterend.jellyshroom_stairs": "Jellyshroom Stairs", + "block.betterend.jellyshroom_stripped_bark": "Stripped Jellyshroom Bark", + "block.betterend.jellyshroom_stripped_log": "Stripped Jellyshroom Log", + "block.betterend.jellyshroom_trapdoor": "Jellyshroom Trapdoor" } diff --git a/src/main/resources/assets/betterend/lang/ru_ru.json b/src/main/resources/assets/betterend/lang/ru_ru.json index 3dcb9835..13de3f25 100644 --- a/src/main/resources/assets/betterend/lang/ru_ru.json +++ b/src/main/resources/assets/betterend/lang/ru_ru.json @@ -525,5 +525,27 @@ "block.betterend.umbrella_tree_cluster": "Кластер зонтичного дерева", "block.betterend.umbrella_tree_cluster_empty": "Пустой кластер хонтичного дерева", "block.betterend.jungle_vine": "Лоза джунглей", - "block.betterend.jungle_fern": "Папоротник джунглей" + "block.betterend.jungle_fern": "Папоротник джунглей", + + "block.betterend.jellyshroom_bark": "Кора желейного гриба", + "block.betterend.jellyshroom_barrel": "Бочка из желейного гриба", + "block.betterend.jellyshroom_bookshelf": "Книжные полки из желейного гриба", + "block.betterend.jellyshroom_button": "Кнопка из желейного гриба", + "block.betterend.jellyshroom_cap_purple": "Пурпурная шляпка желейного гриба", + "block.betterend.jellyshroom_chest": "Сундук из желейного гриба", + "block.betterend.jellyshroom_composter": "Компостер из желейного гриба", + "block.betterend.jellyshroom_crafting_table": "Верстак из желейного гриба", + "block.betterend.jellyshroom_door": "Дверь из желейного гриба", + "block.betterend.jellyshroom_fence": "Забор из желейного гриба", + "block.betterend.jellyshroom_gate": "Калитка из желейного гриба", + "block.betterend.jellyshroom_ladder": "Лестница из желейного гриба", + "block.betterend.jellyshroom_log": "Бревно желейного гриба", + "block.betterend.jellyshroom_planks": "Доски из желейного гриба", + "block.betterend.jellyshroom_plate": "Нажимная плита из желейного гриба", + "block.betterend.jellyshroom_sign": "Табличка из желейного гриба", + "block.betterend.jellyshroom_slab": "Плита из желейного гриба", + "block.betterend.jellyshroom_stairs": "Ступени из желейного гриба", + "block.betterend.jellyshroom_stripped_bark": "Обтёсанная кора желейного гриба", + "block.betterend.jellyshroom_stripped_log": "Обтёсанное бревно желейного гриба", + "block.betterend.jellyshroom_trapdoor": "Люк из желейного гриба" } \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/block/small_jellyshroom_ceil.json b/src/main/resources/assets/betterend/models/block/small_jellyshroom_ceil.json index 43db448d..e2e4e011 100644 --- a/src/main/resources/assets/betterend/models/block/small_jellyshroom_ceil.json +++ b/src/main/resources/assets/betterend/models/block/small_jellyshroom_ceil.json @@ -3,7 +3,7 @@ "textures": { "particle": "betterend:block/jellyshroom_ceiling_stem", "texture": "betterend:block/jellyshroom_ceiling_stem", - "cap": "betterend:block/jellyshroom_cap" + "cap": "betterend:block/jellyshroom_cap_small" }, "elements": [ { diff --git a/src/main/resources/assets/betterend/models/block/small_jellyshroom_floor.json b/src/main/resources/assets/betterend/models/block/small_jellyshroom_floor.json index 81135b41..11df2715 100644 --- a/src/main/resources/assets/betterend/models/block/small_jellyshroom_floor.json +++ b/src/main/resources/assets/betterend/models/block/small_jellyshroom_floor.json @@ -3,7 +3,7 @@ "textures": { "particle": "betterend:block/small_jellyshroom_stem", "texture": "betterend:block/small_jellyshroom_stem", - "cap": "betterend:block/jellyshroom_cap" + "cap": "betterend:block/jellyshroom_cap_small" }, "elements": [ { diff --git a/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_1.json b/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_1.json index 53b6893a..72c363d9 100644 --- a/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_1.json +++ b/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_1.json @@ -5,7 +5,7 @@ "branch_1": "betterend:block/jellyshroom_wall_stem_1", "branch_2": "betterend:block/jellyshroom_wall_stem_2", "branch_3": "betterend:block/jellyshroom_wall_stem_3", - "cap": "betterend:block/jellyshroom_cap" + "cap": "betterend:block/jellyshroom_cap_small" }, "elements": [ { diff --git a/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_2.json b/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_2.json index 2bdc5649..fc7319f7 100644 --- a/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_2.json +++ b/src/main/resources/assets/betterend/models/block/small_jellyshroom_wall_2.json @@ -5,7 +5,7 @@ "branch_1": "betterend:block/jellyshroom_wall_stem_1", "branch_2": "betterend:block/jellyshroom_wall_stem_2", "branch_3": "betterend:block/jellyshroom_wall_stem_3", - "cap": "betterend:block/jellyshroom_cap" + "cap": "betterend:block/jellyshroom_cap_small" }, "elements": [ { diff --git a/src/main/resources/assets/betterend/patterns/block/block_colored.json b/src/main/resources/assets/betterend/patterns/block/block_colored.json new file mode 100644 index 00000000..b7569292 --- /dev/null +++ b/src/main/resources/assets/betterend/patterns/block/block_colored.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/tint_cube", + "textures": { + "texture": "betterend:block/%texture%" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_bottom.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_bottom.png new file mode 100644 index 00000000..72aa87ee Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_bottom.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_side.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_side.png new file mode 100644 index 00000000..8630bf29 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_side.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_top.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_top.png new file mode 100644 index 00000000..24553cf7 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_top.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_top_open.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_top_open.png new file mode 100644 index 00000000..8cd5e61a Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_barrel_top_open.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_bookshelf.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_bookshelf.png new file mode 100644 index 00000000..20b2dacc Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_bookshelf.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_cap.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_cap.png index 2799ee63..1b8c8fdd 100644 Binary files a/src/main/resources/assets/betterend/textures/block/jellyshroom_cap.png and b/src/main/resources/assets/betterend/textures/block/jellyshroom_cap.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_cap_small.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_cap_small.png new file mode 100644 index 00000000..2799ee63 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_cap_small.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_bottom.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_bottom.png new file mode 100644 index 00000000..568f1d8b Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_bottom.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_side.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_side.png new file mode 100644 index 00000000..46ed0857 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_side.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_top.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_top.png new file mode 100644 index 00000000..0c524700 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_composter_top.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_bottom.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_bottom.png new file mode 100644 index 00000000..437ee2c5 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_bottom.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_front.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_front.png new file mode 100644 index 00000000..a2f916ca Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_front.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_side.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_side.png new file mode 100644 index 00000000..3e52cb82 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_side.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_top.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_top.png new file mode 100644 index 00000000..cfa025d5 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_crafting_table_top.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_ladder.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_ladder.png new file mode 100644 index 00000000..b9cd21cb Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_ladder.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_log_side.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_log_side.png new file mode 100644 index 00000000..7266a40e Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_log_side.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_log_top.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_log_top.png new file mode 100644 index 00000000..0137949f Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_log_top.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_planks.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_planks.png new file mode 100644 index 00000000..db04c470 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_planks.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_stripped_log_side.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_stripped_log_side.png new file mode 100644 index 00000000..6c0465b6 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_stripped_log_side.png differ diff --git a/src/main/resources/assets/betterend/textures/block/jellyshroom_stripped_log_top.png b/src/main/resources/assets/betterend/textures/block/jellyshroom_stripped_log_top.png new file mode 100644 index 00000000..afc7daa6 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/block/jellyshroom_stripped_log_top.png differ diff --git a/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest.png b/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest.png new file mode 100644 index 00000000..f97aefdf Binary files /dev/null and b/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest.png differ diff --git a/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest_left.png b/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest_left.png new file mode 100644 index 00000000..35729629 Binary files /dev/null and b/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest_left.png differ diff --git a/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest_right.png b/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest_right.png new file mode 100644 index 00000000..a02766be Binary files /dev/null and b/src/main/resources/assets/betterend/textures/entity/chest/jellyshroom_chest_right.png differ diff --git a/src/main/resources/assets/betterend/textures/entity/sign/jellyshroom_sign.png b/src/main/resources/assets/betterend/textures/entity/sign/jellyshroom_sign.png new file mode 100644 index 00000000..57f3fe3d Binary files /dev/null and b/src/main/resources/assets/betterend/textures/entity/sign/jellyshroom_sign.png differ diff --git a/src/main/resources/assets/betterend/textures/item/jellyshroom_sign.png b/src/main/resources/assets/betterend/textures/item/jellyshroom_sign.png new file mode 100644 index 00000000..01aafd4c Binary files /dev/null and b/src/main/resources/assets/betterend/textures/item/jellyshroom_sign.png differ