From 22e18cab109934f8cdc84ee1f6efdf461a3bb8e8 Mon Sep 17 00:00:00 2001 From: aromaa Date: Tue, 21 May 2024 15:05:57 +0300 Subject: [PATCH] Use wrapAsHolder instead of direct for attributes --- .../api/minecraft/world/entity/LivingEntityMixin_API.java | 4 ++-- .../api/minecraft/world/item/ItemStackMixin_API.java | 8 ++------ 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/entity/LivingEntityMixin_API.java b/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/entity/LivingEntityMixin_API.java index da69c88dc09..955964d8311 100644 --- a/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/entity/LivingEntityMixin_API.java +++ b/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/entity/LivingEntityMixin_API.java @@ -24,7 +24,7 @@ */ package org.spongepowered.common.mixin.api.minecraft.world.entity; -import net.minecraft.core.Holder; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.ai.attributes.AttributeMap; import org.spongepowered.api.data.Keys; @@ -57,7 +57,7 @@ public abstract class LivingEntityMixin_API extends EntityMixin_API implements L public Optional attribute(final AttributeType type) { Objects.requireNonNull(type, "AttributeType cannot be null"); - return Optional.ofNullable((Attribute) this.shadow$getAttributes().getInstance(Holder.direct((net.minecraft.world.entity.ai.attributes.Attribute) type))); + return Optional.ofNullable((Attribute) this.shadow$getAttributes().getInstance(BuiltInRegistries.ATTRIBUTE.wrapAsHolder((net.minecraft.world.entity.ai.attributes.Attribute) type))); } @Override diff --git a/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/item/ItemStackMixin_API.java b/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/item/ItemStackMixin_API.java index cd2f0a6267a..af65efb163c 100644 --- a/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/item/ItemStackMixin_API.java +++ b/src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/item/ItemStackMixin_API.java @@ -29,21 +29,18 @@ import net.kyori.adventure.text.ComponentLike; import net.kyori.adventure.text.event.HoverEvent; import net.kyori.adventure.text.event.HoverEventSource; -import net.minecraft.core.Holder; import net.minecraft.core.component.DataComponentMap; import net.minecraft.core.component.DataComponentPatch; import net.minecraft.core.component.DataComponentType; import net.minecraft.core.component.DataComponents; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.EquipmentSlotGroup; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.item.Item; -import net.minecraft.world.item.Rarity; import net.minecraft.world.item.component.ItemAttributeModifiers; -import net.minecraft.world.item.enchantment.Enchantment; import org.checkerframework.checker.nullness.qual.NonNull; -import org.slf4j.Logger; import org.spongepowered.api.data.SerializableDataHolder; import org.spongepowered.api.data.persistence.DataContainer; import org.spongepowered.api.data.persistence.DataView; @@ -54,7 +51,6 @@ import org.spongepowered.api.item.inventory.ItemStack; import org.spongepowered.api.item.inventory.ItemStackSnapshot; import org.spongepowered.api.item.inventory.equipment.EquipmentType; -import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Implements; import org.spongepowered.asm.mixin.Interface; import org.spongepowered.asm.mixin.Interface.Remap; @@ -169,7 +165,7 @@ public SerializableDataHolder.Mutable copy() { }; this.shadow$update(DataComponents.ATTRIBUTE_MODIFIERS, ItemAttributeModifiers.EMPTY, component -> - component.withModifierAdded(Holder.direct((Attribute) attributeType), + component.withModifierAdded(BuiltInRegistries.ATTRIBUTE.wrapAsHolder((Attribute) attributeType), (net.minecraft.world.entity.ai.attributes.AttributeModifier) (Object) modifier, group)); }