96d5e6ca48
Currently includes generated key holder classes for types used in the Registry Modification API
74 Zeilen
2.9 KiB
Diff
74 Zeilen
2.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Nassim Jahnke <nassim@njahnke.dev>
|
|
Date: Sun, 26 Jul 2020 14:44:16 +0200
|
|
Subject: [PATCH] More lightning API
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/entity/LightningStrike.java b/src/main/java/org/bukkit/entity/LightningStrike.java
|
|
index 8dc433baba7060df5cfe6fc10210a5a27287987d..0b9e02bb88a1b1fe7378c11f1cca9c93b183f814 100644
|
|
--- a/src/main/java/org/bukkit/entity/LightningStrike.java
|
|
+++ b/src/main/java/org/bukkit/entity/LightningStrike.java
|
|
@@ -22,7 +22,9 @@ public interface LightningStrike extends Entity {
|
|
* removed. By default this value is between 1 and 3.
|
|
*
|
|
* @return the flashes
|
|
+ * @deprecated use {@link #getFlashCount()}
|
|
*/
|
|
+ @Deprecated // Paper
|
|
public int getFlashes();
|
|
|
|
/**
|
|
@@ -31,7 +33,9 @@ public interface LightningStrike extends Entity {
|
|
* has reduced below 0.
|
|
*
|
|
* @param flashes the flashes
|
|
+ * @deprecated use {@link #setFlashCount(int)}
|
|
*/
|
|
+ @Deprecated // Paper
|
|
public void setFlashes(int flashes);
|
|
|
|
/**
|
|
@@ -111,4 +115,42 @@ public interface LightningStrike extends Entity {
|
|
@Deprecated // Paper
|
|
Spigot spigot();
|
|
// Spigot end
|
|
+
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Returns the amount of flash iterations that will be done before the lightning dies.
|
|
+ *
|
|
+ * @see #getLifeTicks() for how long the current flash will last
|
|
+ * @return amount of flashes that will be shown before the lightning dies
|
|
+ */
|
|
+ int getFlashCount();
|
|
+
|
|
+ /**
|
|
+ * Sets the amount of life iterations that will be done before the lightning dies.
|
|
+ * Default number of flashes on creation is between 1-3.
|
|
+ *
|
|
+ * @param flashes amount of iterations that will be done before the lightning dies, must to be a positive number
|
|
+ */
|
|
+ void setFlashCount(int flashes);
|
|
+
|
|
+ /**
|
|
+ * Returns the potential entity that caused this lightning strike to spawn in the world.
|
|
+ * <p>
|
|
+ * As of implementing this method, only {@link Player}s are capable of causing a lightning strike, however as this
|
|
+ * might change in future minecraft releases, this method does not guarantee a player as the cause of a lightning.
|
|
+ * Consumers of this method should hence validate whether or not the entity is a player if they want to use player
|
|
+ * specific methods through an {@code instanceOf} check.
|
|
+ * </p>
|
|
+ * <p>
|
|
+ * A player is, as of implementing this method, responsible for a lightning, and will hence be returned here as
|
|
+ * a cause, if they channeled a {@link Trident} to summon it or were explicitly defined as the cause of this
|
|
+ * lightning through {@link #setCausingPlayer(Player)}.
|
|
+ * </p>
|
|
+ *
|
|
+ * @return the entity that caused this lightning or null if the lightning was not caused by a entity (e.g. normal
|
|
+ * weather)
|
|
+ */
|
|
+ @org.jetbrains.annotations.Nullable
|
|
+ Entity getCausingEntity();
|
|
+ // Paper end
|
|
}
|