mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-29 22:13:42 +01:00
64ed429884
This is a pretty tiny update with very little changed. Recommended to update from 1.16.2 ASAP as 1.16.2 is now no longer supported. Plugins should mostly remain working as the NMS revision did not change.
106 lines
3.6 KiB
Diff
106 lines
3.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
|
Date: Sat, 22 Sep 2018 00:32:53 -0500
|
|
Subject: [PATCH] Add LivingEntity#getTargetEntity
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/entity/TargetEntityInfo.java b/src/main/java/com/destroystokyo/paper/entity/TargetEntityInfo.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..f52644fab1522bdf83ff4f489e9805b274421094
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/entity/TargetEntityInfo.java
|
|
@@ -0,0 +1,38 @@
|
|
+package com.destroystokyo.paper.entity;
|
|
+
|
|
+import org.bukkit.entity.Entity;
|
|
+import org.bukkit.util.Vector;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Represents information about a targeted entity
|
|
+ */
|
|
+public class TargetEntityInfo {
|
|
+ private final Entity entity;
|
|
+ private final Vector hitVec;
|
|
+
|
|
+ public TargetEntityInfo(@NotNull Entity entity, @NotNull Vector hitVec) {
|
|
+ this.entity = entity;
|
|
+ this.hitVec = hitVec;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Get the entity that is targeted
|
|
+ *
|
|
+ * @return Targeted entity
|
|
+ */
|
|
+ @NotNull
|
|
+ public Entity getEntity() {
|
|
+ return entity;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Get the position the entity is targeted at
|
|
+ *
|
|
+ * @return Targeted position
|
|
+ */
|
|
+ @NotNull
|
|
+ public Vector getHitVector() {
|
|
+ return hitVec;
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
|
|
index 0ad31337a03743a6ceec1c2b018fecc47b1be089..0624099fcd28c7f108131cb0f58d323818379838 100644
|
|
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
|
|
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
|
|
@@ -151,6 +151,50 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
|
*/
|
|
@Nullable
|
|
public com.destroystokyo.paper.block.TargetBlockInfo getTargetBlockInfo(int maxDistance, @NotNull com.destroystokyo.paper.block.TargetBlockInfo.FluidMode fluidMode);
|
|
+
|
|
+ /**
|
|
+ * Gets information about the entity being targeted
|
|
+ *
|
|
+ * @param maxDistance this is the maximum distance to scan
|
|
+ * @return entity being targeted, or null if no entity is targeted
|
|
+ */
|
|
+ @Nullable
|
|
+ public default Entity getTargetEntity(int maxDistance) {
|
|
+ return getTargetEntity(maxDistance, false);
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Gets information about the entity being targeted
|
|
+ *
|
|
+ * @param maxDistance this is the maximum distance to scan
|
|
+ * @param ignoreBlocks true to scan through blocks
|
|
+ * @return entity being targeted, or null if no entity is targeted
|
|
+ */
|
|
+ @Nullable
|
|
+ public Entity getTargetEntity(int maxDistance, boolean ignoreBlocks);
|
|
+
|
|
+ /**
|
|
+ * Gets information about the entity being targeted
|
|
+ *
|
|
+ * @param maxDistance this is the maximum distance to scan
|
|
+ * @return TargetEntityInfo about the entity being targeted,
|
|
+ * or null if no entity is targeted
|
|
+ */
|
|
+ @Nullable
|
|
+ public default com.destroystokyo.paper.entity.TargetEntityInfo getTargetEntityInfo(int maxDistance) {
|
|
+ return getTargetEntityInfo(maxDistance, false);
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Gets information about the entity being targeted
|
|
+ *
|
|
+ * @param maxDistance this is the maximum distance to scan
|
|
+ * @param ignoreBlocks true to scan through blocks
|
|
+ * @return TargetEntityInfo about the entity being targeted,
|
|
+ * or null if no entity is targeted
|
|
+ */
|
|
+ @Nullable
|
|
+ public com.destroystokyo.paper.entity.TargetEntityInfo getTargetEntityInfo(int maxDistance, boolean ignoreBlocks);
|
|
// Paper end
|
|
|
|
/**
|