diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/polymer/model/ItemDisplayStickModel.java b/src/main/java/eu/midnightdust/motschen/rocks/block/polymer/model/ItemDisplayStickModel.java index 11f442d..7697e6c 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/polymer/model/ItemDisplayStickModel.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/polymer/model/ItemDisplayStickModel.java @@ -23,9 +23,9 @@ public class ItemDisplayStickModel extends ConditionalBlockModel { public static void initModels() { for (StickType type : StickType.values()) { var stacks = new ItemStack[3]; - stacks[0] = ItemDisplayElementUtil.getModel(RocksMain.id("block/small_"+type.name()+"_stick")); - stacks[1] = ItemDisplayElementUtil.getModel(RocksMain.id("block/medium_"+type.name()+"_stick")); - stacks[2] = ItemDisplayElementUtil.getModel(RocksMain.id("block/large_"+type.name()+"_stick")); + for (int i = 0; i < 3; i++) { + stacks[i] = ItemDisplayElementUtil.getModel(RocksMain.id("block/"+type.getVariations()[i].getPath())); + } models.put(type, stacks); } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/item/polymer/StarfishItemPolymer.java b/src/main/java/eu/midnightdust/motschen/rocks/item/polymer/StarfishItemPolymer.java index a2e4340..945d8cc 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/item/polymer/StarfishItemPolymer.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/item/polymer/StarfishItemPolymer.java @@ -30,7 +30,7 @@ public class StarfishItemPolymer extends BlockItem implements PolymerItem { var state = itemStack.getComponents().get(DataComponentTypes.BLOCK_STATE); if (state != null && !state.isEmpty()) { StarfishVariation variation = state.getValue(RocksMain.STARFISH_VARIATION); - if (variation != null) return ResourcePackExtras.bridgeModel(polymerId(variation + "_starfish")); + if (variation != null) return ResourcePackExtras.bridgeModel(polymerId("item/"+variation + "_starfish")); } return itemStack.get(DataComponentTypes.ITEM_MODEL); } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/util/RockType.java b/src/main/java/eu/midnightdust/motschen/rocks/util/RockType.java index 00e8de4..c5e036e 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/util/RockType.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/util/RockType.java @@ -37,10 +37,10 @@ public enum RockType { public Identifier[] getVariations() { var variations = new Identifier[4]; - variations[0] = id("tiny_"+name); - variations[1] = id("small_"+name); - variations[2] = id("medium_"+name); - variations[3] = id("large_"+name); + variations[0] = id(name+"_tiny"); + variations[1] = id(name+"_small"); + variations[2] = id(name+"_medium"); + variations[3] = id(name+"_large"); return variations; } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/util/StickType.java b/src/main/java/eu/midnightdust/motschen/rocks/util/StickType.java index c867ca1..b8cfc75 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/util/StickType.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/util/StickType.java @@ -5,6 +5,7 @@ import net.minecraft.block.Blocks; import net.minecraft.util.Identifier; import java.util.Arrays; +import java.util.Objects; import static eu.midnightdust.motschen.rocks.RocksMain.id; @@ -32,18 +33,15 @@ public enum StickType { public Identifier[] getVariations() { var variations = new Identifier[3]; - variations[0] = id("small_"+name); - variations[1] = id("medium_"+name); - variations[2] = id("large_"+name); + variations[0] = id(name+"_stick_small"); + variations[1] = id(name+"_stick_medium"); + variations[2] = id(name+"_stick_large"); return variations; } public static StickType fromBlockName(String name) { - return Arrays.stream(values()).filter(type -> name - .replace("block.rocks.", "") - .replace("small_", "") - .replace("medium_", "") - .replace("large_", "") - .equals(type.getName())).findFirst().orElse(StickType.OAK); + return Arrays.stream(StickType.values()).filter(woodType -> Objects.equals(woodType.getName(), name + .replace("block.rocks.", "").replace("_stick", "") + )).findFirst().orElse(StickType.OAK); } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/util/polymer/PolyUtil.java b/src/main/java/eu/midnightdust/motschen/rocks/util/polymer/PolyUtil.java index 8f42284..4efced8 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/util/polymer/PolyUtil.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/util/polymer/PolyUtil.java @@ -17,6 +17,7 @@ import eu.pb4.polymer.core.api.item.PolymerItemGroupUtils; import eu.pb4.polymer.core.api.item.SimplePolymerItem; import eu.pb4.polymer.core.api.utils.PolymerSyncUtils; import eu.pb4.polymer.resourcepack.api.PolymerResourcePackUtils; +import eu.pb4.polymer.resourcepack.extras.api.ResourcePackExtras; import eu.pb4.polymer.virtualentity.api.ElementHolder; import eu.pb4.polymer.virtualentity.api.attachment.BlockBoundAttachment; import eu.pb4.polymer.virtualentity.impl.HolderHolder; @@ -51,6 +52,9 @@ public class PolyUtil { if (PASSABLE_WATERLOGGED_BLOCK == null) SMALL_BLOCK = Blocks.BARRIER.getDefaultState().with(WATERLOGGED, true); PolymerResourcePackUtils.addModAssets(MOD_ID); + ResourcePackExtras.forDefault().addBridgedModelsFolder(id("block"), id("rocks")); + ResourcePackExtras.forDefault().addBridgedModelsFolder(polymerId("block"), polymerId("polymer-rocks")); + ResourcePackExtras.forDefault().addBridgedModelsFolder(polymerId("item"), polymerId("polymer-rocks")); ItemDisplayNetherGeyserModel.initModels(); ItemDisplayOverworldGeyserModel.initModels();