From 77378c43f193a8d1abcbb4f5c5f7872af4250a19 Mon Sep 17 00:00:00 2001 From: IzzelAliz Date: Sun, 18 Apr 2021 11:28:09 +0800 Subject: [PATCH] Fix champions crash (#235) --- .../mixin/core/util/IndirectEntityDamageSourceMixin.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/util/IndirectEntityDamageSourceMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/util/IndirectEntityDamageSourceMixin.java index 7cf84a57..d5cf250b 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/util/IndirectEntityDamageSourceMixin.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/util/IndirectEntityDamageSourceMixin.java @@ -2,14 +2,21 @@ package io.izzel.arclight.common.mixin.core.util; import net.minecraft.entity.Entity; import net.minecraft.util.IndirectEntityDamageSource; +import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import io.izzel.arclight.common.bridge.util.IndirectEntityDamageSourceBridge; +import org.spongepowered.asm.mixin.Shadow; @Mixin(IndirectEntityDamageSource.class) public class IndirectEntityDamageSourceMixin extends DamageSourceMixin implements IndirectEntityDamageSourceBridge { + // @formatter:off + @Shadow @Final private Entity indirectEntity; + // @formatter:on + public Entity getProximateDamageSource() { - return super.getTrueSource(); + Entity trueSource = super.getTrueSource(); + return trueSource == null ? this.indirectEntity : trueSource; } @Override