Paper/patches/api/0231-Beacon-API-custom-effe...

38 lines
1.5 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Wed, 24 Jun 2020 12:38:15 -0600
Subject: [PATCH] Beacon API - custom effect ranges
diff --git a/src/main/java/org/bukkit/block/Beacon.java b/src/main/java/org/bukkit/block/Beacon.java
index 6349fa9da3f96df3553fb9552c1cab95338cecb0..78475fc6faff0f295828d7b53792001d51aa2889 100644
--- a/src/main/java/org/bukkit/block/Beacon.java
+++ b/src/main/java/org/bukkit/block/Beacon.java
@@ -64,4 +64,26 @@ public interface Beacon extends TileState, Lockable, Nameable {
* @param effect desired secondary effect
*/
void setSecondaryEffect(@Nullable PotionEffectType effect);
+
+ // Paper start - Custom effect ranges
+ /**
+ * Gets the effect range of this beacon.
+ * A negative range value means the beacon is using its default range based on tier.
+ * @return Either the custom range set with {@link #setEffectRange(double)} or the range based on the beacon tier.
+ */
+ double getEffectRange();
+
+ /**
+ * Sets the effect range of the beacon
+ * A negative range value means the beacon is using its default range based on tier.
+ * @param range Radius of effect range.
+ */
+ void setEffectRange(double range);
+
+ /**
+ * Resets the custom range from this beacon and falls back to the range based on the the beacon tier.
+ * Shortcut for setting the effect range to a negative number.
+ */
+ void resetEffectRange();
+ // Paper end
}