Paper/patches/server/0500-More-lightning-API.patch

53 lines
1.9 KiB
Diff
Raw Normal View History

2021-06-11 14:02:28 +02:00
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nassim Jahnke <nassim@njahnke.dev>
2021-06-11 14:02:28 +02:00
Date: Sun, 26 Jul 2020 14:44:09 +0200
Subject: [PATCH] More lightning API
== AT ==
public net.minecraft.world.entity.LightningBolt life
public net.minecraft.world.entity.LightningBolt flashes
2021-06-11 14:02:28 +02:00
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLightningStrike.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLightningStrike.java
index f7991ff14ef9cda0327b8621bf615b49cffd7ac5..e515e819774bfb31ec03f05a5502921e66f2b0e2 100644
2021-06-11 14:02:28 +02:00
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLightningStrike.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLightningStrike.java
@@ -45,4 +45,38 @@ public class CraftLightningStrike extends CraftEntity implements LightningStrike
2021-06-14 18:58:00 +02:00
return this.spigot;
2021-06-11 14:02:28 +02:00
}
// Spigot end
+
+ // Paper start
+ @Override
+ public int getFlashCount() {
2021-06-14 18:58:00 +02:00
+ return getHandle().flashes;
2021-06-11 14:02:28 +02:00
+ }
+
+ @Override
+ public void setFlashCount(int flashes) {
+ com.google.common.base.Preconditions.checkArgument(flashes >= 0, "Flashes has to be a positive number!");
2021-06-14 18:58:00 +02:00
+ getHandle().flashes = flashes;
2021-06-11 14:02:28 +02:00
+ }
+
+ @Override
+ public int getLifeTicks() {
2021-06-14 18:58:00 +02:00
+ return getHandle().life;
2021-06-11 14:02:28 +02:00
+ }
+
+ @Override
+ public void setLifeTicks(int lifeTicks) {
2021-06-14 18:58:00 +02:00
+ getHandle().life = lifeTicks;
2021-06-11 14:02:28 +02:00
+ }
+
+ @Override
+ public @org.jetbrains.annotations.Nullable org.bukkit.entity.Entity getCausingEntity() {
+ final var cause = this.getHandle().getCause();
+ return cause == null ? null : cause.getBukkitEntity();
+ }
+
+ @Override
+ public void setCausingPlayer(@org.jetbrains.annotations.Nullable org.bukkit.entity.Player causingPlayer) {
+ this.getHandle().setCause(causingPlayer == null ? null : ((CraftPlayer) causingPlayer).getHandle());
+ }
2021-06-11 14:02:28 +02:00
+ // Paper end
}