SPIGOT-96/BUKKIT-5016: Fix thunder storms not darkening the sky and transitions being broken.

This commit is contained in:
Thinkofdeath
2014-12-02 15:13:07 +00:00
parent 275603d37a
commit b6cff41473
3 changed files with 93 additions and 39 deletions

View File

@@ -1,5 +1,5 @@
--- ../work/decompile-8eb82bde//net/minecraft/server/WorldServer.java 2014-11-28 17:43:43.445707427 +0000
+++ src/main/java/net/minecraft/server/WorldServer.java 2014-11-28 17:38:23.000000000 +0000
--- ../work/decompile-8eb82bde//net/minecraft/server/WorldServer.java 2014-12-02 15:12:18.246036227 +0000
+++ src/main/java/net/minecraft/server/WorldServer.java 2014-12-02 15:02:48.310048877 +0000
@@ -16,6 +16,20 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -513,10 +513,11 @@
if (this.o != this.p) {
this.server.getPlayerList().a(new PacketPlayOutGameStateChange(7, this.p), this.worldProvider.getDimension());
}
@@ -827,6 +1063,16 @@
@@ -827,7 +1063,21 @@
this.server.getPlayerList().sendAll(new PacketPlayOutGameStateChange(7, this.p));
this.server.getPlayerList().sendAll(new PacketPlayOutGameStateChange(8, this.r));
}
-
+ // */
+ if (flag != this.S()) {
+ // Only send weather packets to those affected
@@ -525,12 +526,17 @@
+ ((EntityPlayer) this.players.get(i)).setPlayerWeather((!flag ? WeatherType.DOWNFALL : WeatherType.CLEAR), false);
+ }
+ }
+ // CraftBukkit end
+ }
+ for (int i = 0; i < this.players.size(); ++i) {
+ if (((EntityPlayer) this.players.get(i)).world == this) {
+ ((EntityPlayer) this.players.get(i)).updateWeather(this.o, this.p, this.q, this.r);
+ }
+ }
+ // CraftBukkit end
}
@@ -855,10 +1101,17 @@
protected int q() {
@@ -855,10 +1105,17 @@
}
public void a(EnumParticle enumparticle, boolean flag, double d0, double d1, double d2, int i, double d3, double d4, double d5, double d6, int... aint) {