mirror of
https://github.com/Samsuik/Sakura.git
synced 2026-01-04 15:31:43 +00:00
47 lines
2.5 KiB
Diff
47 lines
2.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Samsuik <kfian294ma4@gmail.com>
|
|
Date: Thu, 14 Mar 2024 18:13:24 +0000
|
|
Subject: [PATCH] Add outline colliison to enderpearls
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrowableProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/ThrowableProjectile.java
|
|
index bf4c1883a1257af89428d6580a177f3af3759ee7..e0543e0e7959c67df4f9c06d45d03de829d1c379 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/projectile/ThrowableProjectile.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/projectile/ThrowableProjectile.java
|
|
@@ -40,10 +40,16 @@ public abstract class ThrowableProjectile extends Projectile {
|
|
return true;
|
|
}
|
|
|
|
+ // Sakura start - enderpearls use outline for collision
|
|
+ protected net.minecraft.world.level.ClipContext.Block getClipType() {
|
|
+ return net.minecraft.world.level.ClipContext.Block.COLLIDER;
|
|
+ }
|
|
+ // Sakura end - enderpearls use outline for collision
|
|
+
|
|
@Override
|
|
public void tick() {
|
|
super.tick();
|
|
- HitResult movingobjectposition = ProjectileUtil.getHitResultOnMoveVector(this, this::canHitEntity);
|
|
+ HitResult movingobjectposition = ProjectileUtil.getHitResultOnMoveVector(this, this::canHitEntity, this.getClipType()); // Sakura - enderpearls use outline for collision
|
|
|
|
if (movingobjectposition.getType() != HitResult.Type.MISS) {
|
|
this.preHitTargetOrDeflectSelf(movingobjectposition); // CraftBukkit - projectile hit event
|
|
diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java
|
|
index 1aa5e57a4e6a4be60514d8808a2e6c973d93e798..0dab87b1da300342870a95a1e50486e07f5b3ec8 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java
|
|
@@ -123,6 +123,13 @@ public class ThrownEnderpearl extends ThrowableItemProjectile {
|
|
}
|
|
}
|
|
|
|
+ // Sakura start - enderpearls use outline for collision
|
|
+ @Override
|
|
+ protected net.minecraft.world.level.ClipContext.Block getClipType() {
|
|
+ return this.level().sakuraConfig().entity.enderPearl.useOutlineForCollision ? net.minecraft.world.level.ClipContext.Block.OUTLINE : super.getClipType();
|
|
+ }
|
|
+ // Sakura end - enderpearls use outline for collision
|
|
+
|
|
@Override
|
|
public void tick() {
|
|
Entity entity = this.getOwner();
|