170382fe35
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: e7b0f8d6 #642: Add Crafting methods to API 9e58831e SPIGOT-6641: Use varargs in sendMessage e409fe49 SPIGOT-6545: Unable to set Guardian target via API while awareness is disabled 6997c726 SPIGOT-6661: Fix missing radius from GenericGameEvent 02d03f35 SPIGOT-6369: Add ItemStack to HangingPlaceEvent CraftBukkit Changes: 0abf420c SPIGOT-6665: Shearing a Snowman does not drop a carved pumpkin e8e3cbcc #893: Add Crafting methods to API 879acfee Fix missing varargs from previous commit 6572b9c3 SPIGOT-6641: Use varargs in sendMessage 9e06bb2a SPIGOT-6663: Chicken Jockeys chickens don't despawn 699f2d36 SPIGOT-6545: Unable to set Guardian target via API while awareness is disabled 8ffa54ba SPIGOT-6369: Add ItemStack to HangingPlaceEvent c851639c SPIGOT-6645: Call EntityChangeBlockEvent before PlayerHarvestBlockEvent 8d244b0b SPIGOT-3725, SPIGOT-6638, MC-136917: Properly clear tile entities before replacing Spigot Changes: 18c71bf4 Rebuild patches
81 lines
4.2 KiB
Diff
81 lines
4.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Gabriele C <sgdc3.mail@gmail.com>
|
|
Date: Fri, 5 Aug 2016 01:03:08 +0200
|
|
Subject: [PATCH] Add setting for proxy online mode status
|
|
|
|
TODO: Add isProxyOnlineMode check to Metrics
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
index 1b8e5671c9dc8c15ce33d351c1bb20f28919b9a2..c52dc0346f93527965ef29a0ccdc4bf3debe302e 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -23,6 +23,7 @@ import org.bukkit.configuration.InvalidConfigurationException;
|
|
import org.bukkit.configuration.file.YamlConfiguration;
|
|
import co.aikar.timings.Timings;
|
|
import co.aikar.timings.TimingsManager;
|
|
+import org.spigotmc.SpigotConfig;
|
|
|
|
public class PaperConfig {
|
|
|
|
@@ -242,4 +243,13 @@ public class PaperConfig {
|
|
private static void saveEmptyScoreboardTeams() {
|
|
saveEmptyScoreboardTeams = getBoolean("settings.save-empty-scoreboard-teams", false);
|
|
}
|
|
+
|
|
+ public static boolean bungeeOnlineMode = true;
|
|
+ private static void bungeeOnlineMode() {
|
|
+ bungeeOnlineMode = getBoolean("settings.bungee-online-mode", true);
|
|
+ }
|
|
+
|
|
+ public static boolean isProxyOnlineMode() {
|
|
+ return Bukkit.getOnlineMode() || (SpigotConfig.bungee && bungeeOnlineMode);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/players/GameProfileCache.java b/src/main/java/net/minecraft/server/players/GameProfileCache.java
|
|
index 7ef77c38537b85deb7d388a7331e895c54a8ba95..6e1b7d5b20e9f6ed1b650eb9d6ac9f8c4867b4b7 100644
|
|
--- a/src/main/java/net/minecraft/server/players/GameProfileCache.java
|
|
+++ b/src/main/java/net/minecraft/server/players/GameProfileCache.java
|
|
@@ -98,6 +98,7 @@ public class GameProfileCache {
|
|
}
|
|
};
|
|
|
|
+ if (com.destroystokyo.paper.PaperConfig.isProxyOnlineMode()) // Paper - only run in online mode - 100 COL
|
|
repository.findProfilesByNames(new String[]{name}, Agent.MINECRAFT, profilelookupcallback);
|
|
GameProfile gameprofile = (GameProfile) atomicreference.get();
|
|
|
|
@@ -115,7 +116,7 @@ public class GameProfileCache {
|
|
}
|
|
|
|
private static boolean usesAuthentication() {
|
|
- return GameProfileCache.usesAuthentication;
|
|
+ return com.destroystokyo.paper.PaperConfig.isProxyOnlineMode(); // Paper
|
|
}
|
|
|
|
public synchronized void add(GameProfile profile) { // Paper - synchronize
|
|
diff --git a/src/main/java/net/minecraft/server/players/OldUsersConverter.java b/src/main/java/net/minecraft/server/players/OldUsersConverter.java
|
|
index f6cb864c45f960811acc02829d1f7883b916de29..8703f97dc2f392b136c6851aa09b607cbfdfa5de 100644
|
|
--- a/src/main/java/net/minecraft/server/players/OldUsersConverter.java
|
|
+++ b/src/main/java/net/minecraft/server/players/OldUsersConverter.java
|
|
@@ -66,7 +66,8 @@ public class OldUsersConverter {
|
|
return new String[i];
|
|
});
|
|
|
|
- if (server.usesAuthentication() || org.spigotmc.SpigotConfig.bungee) { // Spigot: bungee = online mode, for now.
|
|
+ if (server.usesAuthentication()
|
|
+ || (com.destroystokyo.paper.PaperConfig.isProxyOnlineMode())) { // Spigot: bungee = online mode, for now. // Paper - Handle via setting
|
|
server.getProfileRepository().findProfilesByNames(astring, Agent.MINECRAFT, callback);
|
|
} else {
|
|
String[] astring1 = astring;
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
index 0f30b58e047c1bc034b2e34ed8fc3823cddaaf7f..e83a8e5c190d3d9906c343b14d44af47f23b3414 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -1589,7 +1589,7 @@ public final class CraftServer implements Server {
|
|
// Spigot Start
|
|
GameProfile profile = null;
|
|
// Only fetch an online UUID in online mode
|
|
- if ( this.getOnlineMode() || org.spigotmc.SpigotConfig.bungee )
|
|
+ if ( this.getOnlineMode() || com.destroystokyo.paper.PaperConfig.isProxyOnlineMode() ) // Paper - Handle via setting
|
|
{
|
|
profile = this.console.getProfileCache().get(name).orElse(null);
|
|
}
|