From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Paul Sauve Date: Tue, 1 Jun 2021 18:06:29 -0500 Subject: [PATCH] Patch Paper to use fast item merge raytracing diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java index 158719d46c96bb733a00e08c8285f41a48406abf..2dac4bc346eb1dde1f8d92c3e5b9648b2c433617 100644 --- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java @@ -243,10 +243,16 @@ public class ItemEntity extends Entity { if (entityitem.isMergable()) { // Paper Start - Fix items merging through walls if (this.level.paperConfig.fixItemsMergingThroughWalls) { + // Airplane start - skip the allocations + /* net.minecraft.world.level.ClipContext rayTrace = new net.minecraft.world.level.ClipContext(this.position(), entityitem.position(), net.minecraft.world.level.ClipContext.Block.COLLIDER, net.minecraft.world.level.ClipContext.Fluid.NONE, this); net.minecraft.world.phys.BlockHitResult rayTraceResult = level.clip(rayTrace); if (rayTraceResult.getType() == net.minecraft.world.phys.HitResult.Type.BLOCK) continue; + */ + if (level.rayTraceDirect(this.position(), entityitem.position(), net.minecraft.world.phys.shapes.CollisionContext.of(this)) == + net.minecraft.world.phys.HitResult.Type.BLOCK) continue; + // Airplane end } // Paper End this.tryToMerge(entityitem);