From 9626e565f0c8311399b06296c0691360a14d8f85 Mon Sep 17 00:00:00 2001 From: Jottyfan Date: Fri, 13 Feb 2026 22:46:50 +0100 Subject: [PATCH] first block ruby_block --- .../java/de/jottyfan/minecraft/gta/Uno.java | 4 +- .../minecraft/gta/block/UnoBlocks.java | 37 ++++++++++++++++++ .../jottyfan/minecraft/gta/item/UnoItems.java | 1 + .../assets/uno/blockstates/ruby_block.json | 7 ++++ .../assets/uno/items/ruby_block.json | 6 +++ src/main/resources/assets/uno/lang/de_de.json | 3 +- src/main/resources/assets/uno/lang/en_us.json | 3 +- .../assets/uno/models/block/ruby_block.json | 6 +++ .../assets/uno/models/item/ruby_block.json | 3 ++ .../assets/uno/textures/block/ruby_block.png | Bin 0 -> 652 bytes 10 files changed, 67 insertions(+), 3 deletions(-) create mode 100644 src/main/java/de/jottyfan/minecraft/gta/block/UnoBlocks.java create mode 100644 src/main/resources/assets/uno/blockstates/ruby_block.json create mode 100644 src/main/resources/assets/uno/items/ruby_block.json create mode 100644 src/main/resources/assets/uno/models/block/ruby_block.json create mode 100644 src/main/resources/assets/uno/models/item/ruby_block.json create mode 100644 src/main/resources/assets/uno/textures/block/ruby_block.png diff --git a/src/main/java/de/jottyfan/minecraft/gta/Uno.java b/src/main/java/de/jottyfan/minecraft/gta/Uno.java index 5def7bd..73a4ed6 100644 --- a/src/main/java/de/jottyfan/minecraft/gta/Uno.java +++ b/src/main/java/de/jottyfan/minecraft/gta/Uno.java @@ -3,6 +3,7 @@ package de.jottyfan.minecraft.gta; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import de.jottyfan.minecraft.gta.block.UnoBlocks; import de.jottyfan.minecraft.gta.item.UnoItems; import net.fabricmc.api.ModInitializer; @@ -13,7 +14,8 @@ public class Uno implements ModInitializer { @Override public void onInitialize() { - LOGGER.info("Hello Fabric world!"); + LOGGER.info("initializing uno"); UnoItems.registerUnoItems(); + UnoBlocks.registerModBlocks(); } } \ No newline at end of file diff --git a/src/main/java/de/jottyfan/minecraft/gta/block/UnoBlocks.java b/src/main/java/de/jottyfan/minecraft/gta/block/UnoBlocks.java new file mode 100644 index 0000000..685f28b --- /dev/null +++ b/src/main/java/de/jottyfan/minecraft/gta/block/UnoBlocks.java @@ -0,0 +1,37 @@ +package de.jottyfan.minecraft.gta.block; + +import java.util.function.Function; + +import de.jottyfan.minecraft.gta.Uno; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockBehaviour.Properties; + +public class UnoBlocks { + public static final Block RUBY_BLOCK = registerBlock("ruby_block", Properties.of().strength(4f).requiresCorrectToolForDrops().sound(SoundType.AMETHYST_CLUSTER)); + + private static final Block registerBlock(String name, Properties properties) { + return UnoBlocks.registerBlock(name, properties, p -> new Block(p)); + } + + private static final Block registerBlock(String name, Properties properties, Function function) { + Identifier identifier = Identifier.fromNamespaceAndPath(Uno.MOD_ID, name); + Block block = function.apply(properties.setId(ResourceKey.create(Registries.BLOCK, identifier))); + Registry.register(BuiltInRegistries.BLOCK, identifier, block); + BlockItem blockItem = new BlockItem(block, new Item.Properties() + .setId(ResourceKey.create(Registries.ITEM, identifier)).modelId(identifier).useItemDescriptionPrefix()); + Registry.register(BuiltInRegistries.ITEM, identifier, blockItem); + return block; + } + + public static void registerModBlocks() { + Uno.LOGGER.info("initializing uno blocks"); + } +} diff --git a/src/main/java/de/jottyfan/minecraft/gta/item/UnoItems.java b/src/main/java/de/jottyfan/minecraft/gta/item/UnoItems.java index c79ea4c..96e3157 100644 --- a/src/main/java/de/jottyfan/minecraft/gta/item/UnoItems.java +++ b/src/main/java/de/jottyfan/minecraft/gta/item/UnoItems.java @@ -25,5 +25,6 @@ public class UnoItems { } public static void registerUnoItems() { + Uno.LOGGER.info("initializing uno items"); } } diff --git a/src/main/resources/assets/uno/blockstates/ruby_block.json b/src/main/resources/assets/uno/blockstates/ruby_block.json new file mode 100644 index 0000000..7bf0a30 --- /dev/null +++ b/src/main/resources/assets/uno/blockstates/ruby_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "uno:block/ruby_block" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/uno/items/ruby_block.json b/src/main/resources/assets/uno/items/ruby_block.json new file mode 100644 index 0000000..8725c3e --- /dev/null +++ b/src/main/resources/assets/uno/items/ruby_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "uno:block/ruby_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/uno/lang/de_de.json b/src/main/resources/assets/uno/lang/de_de.json index 2a2e388..8f3aff5 100644 --- a/src/main/resources/assets/uno/lang/de_de.json +++ b/src/main/resources/assets/uno/lang/de_de.json @@ -1,4 +1,5 @@ { "item.uno.stub": "Stummel", - "item.uno.ruby": "Rubin" + "item.uno.ruby": "Rubin", + "item.uni.ruby_block": "Rubinblock" } \ No newline at end of file diff --git a/src/main/resources/assets/uno/lang/en_us.json b/src/main/resources/assets/uno/lang/en_us.json index ea797cb..0d83119 100644 --- a/src/main/resources/assets/uno/lang/en_us.json +++ b/src/main/resources/assets/uno/lang/en_us.json @@ -1,4 +1,5 @@ { "item.uno.stub": "Stub", - "item.uno.ruby": "Ruby" + "item.uno.ruby": "Ruby", + "item.uno.ruby_block": "Ruby block" } \ No newline at end of file diff --git a/src/main/resources/assets/uno/models/block/ruby_block.json b/src/main/resources/assets/uno/models/block/ruby_block.json new file mode 100644 index 0000000..cbc7dbb --- /dev/null +++ b/src/main/resources/assets/uno/models/block/ruby_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "uno:block/ruby_block" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/uno/models/item/ruby_block.json b/src/main/resources/assets/uno/models/item/ruby_block.json new file mode 100644 index 0000000..91adbc8 --- /dev/null +++ b/src/main/resources/assets/uno/models/item/ruby_block.json @@ -0,0 +1,3 @@ +{ + "parent": "uno:block/ruby_block" +} \ No newline at end of file diff --git a/src/main/resources/assets/uno/textures/block/ruby_block.png b/src/main/resources/assets/uno/textures/block/ruby_block.png new file mode 100644 index 0000000000000000000000000000000000000000..0dcfeb510e2164739ac35b029c49cd526673386e GIT binary patch literal 652 zcmV;70(1R|P)z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUy24YJ`L;(K)hXC~&ig#rI000SaNLh0L04^f{04^f|c%?sf00007 zbV*G`2k8m{2@fV!*FBQ}00GcRL_t(I%UzQ}j$9!OL?3*xp`$1{U@n(4NJw6|in6H+zkdAO5m-RYf=EG%qFJb4zcSo;_D&y;TgTmK!+Bv6_bFPCBuG(2 z3nGHnLW~zN1a^$CR(6bdH+T_<7E}r%`GCtIpeQ*;Lf{hteroGRDq47GMOBG8Bc<@D zg^)AU0@p@hyl`T=3JC00#(m_)hPl2+<{FDfqakSA&|a&|3<9kye1hQ z6^eigr0ZO`l>j>suQLKb8rI1`1bD8yX~S9{JE#R>gb*N{Ux+{klH2*u48*x0?9(*Y zc_L@{{pXC(3|eQoGpyrgB=5%D`}EF5-22S@oWKTI@YY~F;mugq8Dr2|V|pi0HO>bMmxKcgM}}ZnzJ++p#k69t>^;0AVfmhP>7Rx*xE0`qMv$=@pFd mAHmw2wdNuCC(d@q8Q?GF1qWXANVOgS0000