clean: improve code of rock fragments

This commit is contained in:
Martin Prokoph
2025-03-26 13:10:56 +01:00
parent 1d179f7310
commit c1bb88702d
7 changed files with 46 additions and 24 deletions

View File

@@ -33,7 +33,7 @@
"item.rocks.bamboo_stick": "Bambusstock", "item.rocks.bamboo_stick": "Bambusstock",
"item.rocks.birch_stick": "Birkenstock", "item.rocks.birch_stick": "Birkenstock",
"item.rocks.cherry_stick": "Kirschstock", "item.rocks.cherry_stick": "Kirschstock",
"item.rocks.cobblestone_splitter": "Steinsplitter", "item.rocks.cobblestone_splitter": "Bruchsteinsplitter",
"item.rocks.crimson_stick": "Karmesinstock", "item.rocks.crimson_stick": "Karmesinstock",
"item.rocks.dark_oak_stick": "Schwarzeichenstock", "item.rocks.dark_oak_stick": "Schwarzeichenstock",
"item.rocks.diorite_rock": "Dioritbrocken", "item.rocks.diorite_rock": "Dioritbrocken",

View File

@@ -29,39 +29,39 @@
"block.rocks.warped_stick": "Warped Stick", "block.rocks.warped_stick": "Warped Stick",
"item.rocks.acacia_stick": "Acacia Stick", "item.rocks.acacia_stick": "Acacia Stick",
"item.rocks.andesite_rock": "Andesite Rock", "item.rocks.andesite_rock": "Andesite Rock",
"item.rocks.andesite_splitter": "Andesite Splitter", "item.rocks.andesite_splitter": "Andesite Fragment",
"item.rocks.bamboo_stick": "Bamboo Stick", "item.rocks.bamboo_stick": "Bamboo Stick",
"item.rocks.birch_stick": "Birch Stick", "item.rocks.birch_stick": "Birch Stick",
"item.rocks.cherry_stick": "Cherry Stick", "item.rocks.cherry_stick": "Cherry Stick",
"item.rocks.cobblestone_splitter": "Stone Splitter", "item.rocks.cobblestone_splitter": "Cobblestone Fragment",
"item.rocks.crimson_stick": "Crimson Stick", "item.rocks.crimson_stick": "Crimson Stick",
"item.rocks.dark_oak_stick": "Dark Oak Stick", "item.rocks.dark_oak_stick": "Dark Oak Stick",
"item.rocks.diorite_rock": "Diorite Rock", "item.rocks.diorite_rock": "Diorite Rock",
"item.rocks.diorite_splitter": "Diorite Splitter", "item.rocks.diorite_splitter": "Diorite Fragment",
"item.rocks.end_stone_rock": "End Stone Rock", "item.rocks.end_stone_rock": "End Stone Rock",
"item.rocks.end_stone_splitter": "End Stone Splitter", "item.rocks.end_stone_splitter": "End Stone Fragment",
"item.rocks.geyser": "Geyser", "item.rocks.geyser": "Geyser",
"item.rocks.granite_rock": "Granite Rock", "item.rocks.granite_rock": "Granite Rock",
"item.rocks.granite_splitter": "Granite Splitter", "item.rocks.granite_splitter": "Granite Fragment",
"item.rocks.gravel_rock": "Gravel Rock", "item.rocks.gravel_rock": "Gravel Rock",
"item.rocks.ice_rock": "Ice Rock", "item.rocks.ice_rock": "Ice Rock",
"item.rocks.ice_splitter": "Ice Splitter", "item.rocks.ice_splitter": "Ice Fragment",
"item.rocks.jungle_stick": "Jungle Stick", "item.rocks.jungle_stick": "Jungle Stick",
"item.rocks.mangrove_stick": "Mangrove Stick", "item.rocks.mangrove_stick": "Mangrove Stick",
"item.rocks.nether_geyser": "Nether Geyser", "item.rocks.nether_geyser": "Nether Geyser",
"item.rocks.netherrack_rock": "Netherrack Rock", "item.rocks.netherrack_rock": "Netherrack Rock",
"item.rocks.netherrack_splitter": "Netherrack Splitter", "item.rocks.netherrack_splitter": "Netherrack Fragment",
"item.rocks.oak_stick": "Oak Stick", "item.rocks.oak_stick": "Oak Stick",
"item.rocks.pale_oak_stick": "Pale Oak Stick", "item.rocks.pale_oak_stick": "Pale Oak Stick",
"item.rocks.pinecone": "Pinecone", "item.rocks.pinecone": "Pinecone",
"item.rocks.red_sand_rock": "Red Sandstone Rock", "item.rocks.red_sand_rock": "Red Sandstone Rock",
"item.rocks.red_sandstone_splitter": "Red Sandstone Splitter", "item.rocks.red_sandstone_splitter": "Red Sandstone Fragment",
"item.rocks.rock": "Stone Rock", "item.rocks.rock": "Stone Rock",
"item.rocks.sand_rock": "Sandstone Rock", "item.rocks.sand_rock": "Sandstone Rock",
"item.rocks.sandstone_splitter": "Sandstone Splitter", "item.rocks.sandstone_splitter": "Sandstone Fragment",
"item.rocks.seashell": "Seashell", "item.rocks.seashell": "Seashell",
"item.rocks.soul_soil_rock": "Soul Soil Rock", "item.rocks.soul_soil_rock": "Soul Soil Rock",
"item.rocks.soul_soil_splitter": "Soul Soil Splitter", "item.rocks.soul_soil_splitter": "Soul Soil Fragment",
"item.rocks.spruce_stick": "Spruce Stick", "item.rocks.spruce_stick": "Spruce Stick",
"item.rocks.starfish": "Starfish", "item.rocks.starfish": "Starfish",
"item.rocks.warped_stick": "Warped Stick", "item.rocks.warped_stick": "Warped Stick",

View File

@@ -1,6 +1,6 @@
{ {
"parent": "rocks:item/splitter_base", "parent": "rocks:item/splitter_base",
"textures": { "textures": {
"0": "minecraft:block/stone" "0": "minecraft:block/cobblestone"
} }
} }

View File

@@ -93,7 +93,7 @@ public class RocksMain implements ModInitializer {
rocksByType.put(type, registerBlockWithItem(id, polymerMode ? newRockPolymer(id) : new Rock(id))); rocksByType.put(type, registerBlockWithItem(id, polymerMode ? newRockPolymer(id) : new Rock(id)));
if (type != RockType.GRAVEL) if (type != RockType.GRAVEL)
splittersByType.put(type, registerItem(id(type.getSplitterName()), simpleItem(id(type.getSplitterName())))); splittersByType.put(type, registerItem(id(type.getFragment().getName()), simpleItem(id(type.getFragment().getName()))));
} }
for (StickType type : StickType.values()) { for (StickType type : StickType.values()) {
Identifier id = id(type.getName()+"_stick"); Identifier id = id(type.getName()+"_stick");

View File

@@ -66,8 +66,9 @@ public abstract class Language extends FabricLanguageProvider {
addBlock(translationBuilder, block, baseTranslation+rockWord); addBlock(translationBuilder, block, baseTranslation+rockWord);
if (type != RockType.GRAVEL) { if (type != RockType.GRAVEL) {
Item splitter = Registries.ITEM.get(RocksMain.id(type.getSplitterName())); String splitterBaseTranslation = langHelper.translate(type.getFragment().getStoneBlock().getTranslationKey());
translationBuilder.add(splitter, baseTranslation+splitterWord); Item splitter = Registries.ITEM.get(RocksMain.id(type.getFragment().getName()));
translationBuilder.add(splitter, splitterBaseTranslation+splitterWord);
} }
} }
for (StickType type : StickType.values()) { for (StickType type : StickType.values()) {
@@ -94,7 +95,7 @@ public abstract class Language extends FabricLanguageProvider {
public void generateTranslations(RegistryWrapper.WrapperLookup registryLookup, TranslationBuilder translationBuilder) { public void generateTranslations(RegistryWrapper.WrapperLookup registryLookup, TranslationBuilder translationBuilder) {
translationBuilder.add("itemGroup.rocks.rocks","This Rocks!"); translationBuilder.add("itemGroup.rocks.rocks","This Rocks!");
createRepeatedTranslations(translationBuilder, " Rock", " Splitter", " Stick"); createRepeatedTranslations(translationBuilder, " Rock", " Fragment", " Stick");
addBlock(translationBuilder, RocksMain.Geyser, "Geyser"); addBlock(translationBuilder, RocksMain.Geyser, "Geyser");
addBlock(translationBuilder, RocksMain.NetherGeyser, "Nether Geyser"); addBlock(translationBuilder, RocksMain.NetherGeyser, "Nether Geyser");

View File

@@ -49,8 +49,8 @@ public class Models extends FabricModelProvider {
registerParentedItemModel(itemModelGenerator, item, getItemId("rock_base"), type.getStoneBlock()); registerParentedItemModel(itemModelGenerator, item, getItemId("rock_base"), type.getStoneBlock());
if (type != RockType.GRAVEL) { if (type != RockType.GRAVEL) {
Item splitter = Registries.ITEM.get(RocksMain.id(type.getSplitterName())); Item splitter = Registries.ITEM.get(RocksMain.id(type.getFragment().getName()));
registerParentedItemModel(itemModelGenerator, splitter, getItemId("splitter_base"), type.getStoneBlock()); registerParentedItemModel(itemModelGenerator, splitter, getItemId("splitter_base"), type.getFragment().getStoneBlock());
} }
} }
for (StickType type : StickType.values()) { for (StickType type : StickType.values()) {

View File

@@ -23,15 +23,11 @@ public enum RockType {
public String getName() { public String getName() {
return this.name; return this.name;
} }
public String getSplitterName() {
String splitterName = this.name().toLowerCase()+ "_splitter";
if (this.equals(RockType.STONE)) splitterName = "cobblestone_splitter";
return splitterName;
}
public Identifier getStoneId() { public Identifier getStoneId() {
if (this==STONE) return Identifier.ofVanilla("cobblestone");
return Identifier.ofVanilla(this.toString().toLowerCase()); return Identifier.ofVanilla(this.toString().toLowerCase());
} }
public Block getStoneBlock() { public Block getStoneBlock() {
return Registries.BLOCK.get(getStoneId()); return Registries.BLOCK.get(getStoneId());
} }
@@ -54,4 +50,29 @@ public enum RockType {
.replace("large_", "") .replace("large_", "")
.equals(type.getName())).findFirst().orElse(RockType.STONE); .equals(type.getName())).findFirst().orElse(RockType.STONE);
} }
public Fragment getFragment() {
return new Fragment(this);
}
public static class Fragment {
private final RockType type;
Fragment(RockType type) {
this.type = type;
}
public String getName() {
String splitterName = type.name().toLowerCase()+ "_splitter";
if (type.equals(RockType.STONE)) splitterName = "cobblestone_splitter";
return splitterName;
}
public Identifier getStoneId() {
if (type==STONE) return Identifier.ofVanilla("cobblestone");
return Identifier.ofVanilla(type.toString().toLowerCase());
}
public Block getStoneBlock() {
return Registries.BLOCK.get(getStoneId());
}
}
} }