diff --git a/src/main/java/com/altnoir/mia/common/component/ArtifactEnhancementComponent.java b/src/main/java/com/altnoir/mia/common/component/ArtifactEnhancementComponent.java index 7344d73b..0ee3eb99 100644 --- a/src/main/java/com/altnoir/mia/common/component/ArtifactEnhancementComponent.java +++ b/src/main/java/com/altnoir/mia/common/component/ArtifactEnhancementComponent.java @@ -49,9 +49,21 @@ public List getArtifactStats() { } public Multimap, AttributeModifier> getAttributeModifiers() { + return getAttributeModifiers(null); + } + + public Multimap, AttributeModifier> getAttributeModifiers(ResourceLocation curiosId) { ImmutableMultimap.Builder, AttributeModifier> builder = ImmutableMultimap.builder(); for (ArtifactStat modifier : modifiers) { - builder.put(modifier.attribute(), modifier.modifier()); + AttributeModifier newModifier = modifier.modifier(); + if (curiosId != null) { + newModifier = new AttributeModifier( + ResourceLocation.fromNamespaceAndPath(curiosId.getNamespace(), curiosId.getPath() + "_" + newModifier.id().getPath()), + newModifier.amount(), + newModifier.operation() + ); + } + builder.put(modifier.attribute(), newModifier); } return builder.build(); } @@ -90,7 +102,7 @@ public static String getModifierKey(Holder attribute, AttributeModifi .map(key -> key.location().getPath()) .orElse("unknown"); String op = operation.name().toLowerCase(); - return String.format("%s.%s", attr, op); + return String.format("artifact_enhancement.%s.%s", attr, op); } @Override diff --git a/src/main/java/com/altnoir/mia/common/item/abs/IEArtifact.java b/src/main/java/com/altnoir/mia/common/item/abs/IEArtifact.java index c4918ce8..94fd3a77 100644 --- a/src/main/java/com/altnoir/mia/common/item/abs/IEArtifact.java +++ b/src/main/java/com/altnoir/mia/common/item/abs/IEArtifact.java @@ -59,6 +59,6 @@ default void appendTooltip(ItemStack stack, List tooltip) { } default Multimap, AttributeModifier> getAttributeModifiers(SlotContext slotContext, ResourceLocation id, ItemStack stack) { - return stack.getOrDefault(MiaComponents.ARTIFACT_ENHANCEMENT, ArtifactEnhancementComponent.EMPTY).getAttributeModifiers(); + return stack.getOrDefault(MiaComponents.ARTIFACT_ENHANCEMENT, ArtifactEnhancementComponent.EMPTY).getAttributeModifiers(id); } }