SPIGOT-4765: WeatherChangeEvent occurs every tick

This commit is contained in:
md_5 2019-04-26 14:42:51 +10:00
parent 8f2a45bf35
commit abab38526a

View File

@ -28,11 +28,15 @@
} }
public long getSeed() { public long getSeed() {
@@ -508,6 +515,16 @@ @@ -508,6 +515,20 @@
} }
public void setThundering(boolean flag) { public void setThundering(boolean flag) {
+ // CraftBukkit start + // CraftBukkit start
+ if (this.z == flag) {
+ return;
+ }
+
+ org.bukkit.World world = Bukkit.getWorld(getName()); + org.bukkit.World world = Bukkit.getWorld(getName());
+ if (world != null) { + if (world != null) {
+ ThunderChangeEvent thunder = new ThunderChangeEvent(world, flag); + ThunderChangeEvent thunder = new ThunderChangeEvent(world, flag);
@ -45,11 +49,15 @@
this.z = flag; this.z = flag;
} }
@@ -524,6 +541,16 @@ @@ -524,6 +545,20 @@
} }
public void setStorm(boolean flag) { public void setStorm(boolean flag) {
+ // CraftBukkit start + // CraftBukkit start
+ if (this.x == flag) {
+ return;
+ }
+
+ org.bukkit.World world = Bukkit.getWorld(getName()); + org.bukkit.World world = Bukkit.getWorld(getName());
+ if (world != null) { + if (world != null) {
+ WeatherChangeEvent weather = new WeatherChangeEvent(world, flag); + WeatherChangeEvent weather = new WeatherChangeEvent(world, flag);
@ -62,7 +70,7 @@
this.x = flag; this.x = flag;
} }
@@ -673,6 +700,12 @@ @@ -673,6 +708,12 @@
public void setDifficulty(EnumDifficulty enumdifficulty) { public void setDifficulty(EnumDifficulty enumdifficulty) {
this.G = enumdifficulty; this.G = enumdifficulty;
@ -75,7 +83,7 @@
} }
public boolean isDifficultyLocked() { public boolean isDifficultyLocked() {
@@ -777,4 +810,12 @@ @@ -777,4 +818,12 @@
public void a(UUID uuid) { public void a(UUID uuid) {
this.X = uuid; this.X = uuid;
} }