diff --git a/src/main/java/ca/spottedleaf/moonrise/mixin/collisions/ServerExplosionMixin.java b/src/main/java/ca/spottedleaf/moonrise/mixin/collisions/ServerExplosionMixin.java index 6f2782f..b7c62e3 100644 --- a/src/main/java/ca/spottedleaf/moonrise/mixin/collisions/ServerExplosionMixin.java +++ b/src/main/java/ca/spottedleaf/moonrise/mixin/collisions/ServerExplosionMixin.java @@ -24,13 +24,11 @@ import net.minecraft.world.phys.shapes.VoxelShape; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Unique; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Redirect; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import java.util.Arrays; import java.util.List; @@ -348,8 +346,14 @@ private void initCacheFields(final CallbackInfoReturnable cir) { * @reason Rewrite ray casting for performance * @author Spottedleaf */ - @Overwrite - public List calculateExplodedPositions() { + @Inject( + method = "calculateExplodedPositions", + at = @At( + value = "HEAD" + ), + cancellable = true + ) + public void calculateExplodedPositions(CallbackInfoReturnable> cir) { final ObjectArrayList ret = new ObjectArrayList<>(); final Vec3 center = this.center; @@ -432,7 +436,7 @@ public List calculateExplodedPositions() { } while (power > 0.0f); } - return ret; + cir.setReturnValue(ret); } /**