Skip to content

Commit d9fb13a

Browse files
committed
Merge remote-tracking branch 'origin/1.20' into 1.21.1
2 parents 003bfb4 + 37dc9e6 commit d9fb13a

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

src/main/java/org/embeddedt/modernfix/common/mixin/perf/attribute_supplier_dedup/AttributeSupplierBuilderMixin.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import net.minecraft.world.entity.ai.attributes.AttributeInstance;
66
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
77
import org.embeddedt.modernfix.entity.AttributeInstanceTemplates;
8+
import org.embeddedt.modernfix.neoforge.init.ModernFixForge;
89
import org.spongepowered.asm.mixin.Final;
910
import org.spongepowered.asm.mixin.Mixin;
1011
import org.spongepowered.asm.mixin.Shadow;
@@ -26,6 +27,11 @@ public class AttributeSupplierBuilderMixin {
2627
*/
2728
@Inject(method = "build", at = @At(value = "NEW", target = "(Ljava/util/Map;)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier;"))
2829
private void deduplicateInstances(CallbackInfoReturnable<AttributeSupplier> cir) {
30+
// The interning has overhead, so we only apply it early during the launch, when mods are normally
31+
// registering the custom attribute suppliers.
32+
if (ModernFixForge.registryEventsFired) {
33+
return;
34+
}
2935
this.builder.replaceAll((a, i) -> AttributeInstanceTemplates.intern(i));
3036
}
3137
}

0 commit comments

Comments
 (0)