mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-12 15:08:27 +02:00
Upstream has released updates that appears 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: 6a4242cb #468: Allow delegation of certain elements to Vanilla when using a custom ChunkGenerator c6697f90 SPIGOT-5559: Add EntityPotionEffectEvent causes for PATROL_CAPTAIN and WITHER_ROSE 9c1fa040 #467: Add method to remove a recipe by its key 3961d1aa Add nb-configuration.xml to .gitignore CraftBukkit Changes:d70084e5
Remove unused seed in CustomChunkGenerator8a66d4c7
#619: Allow delegation of certain elements to Vanilla when using a custom ChunkGeneratorc2dc19d3
Craftbukkit -> CraftBukkitae45e092
SPIGOT-5559: Add EntityPotionEffectEvent causes for bee, raiders and wither rose00980376
#618: Add method to remove a recipe by its key Spigot Changes: c574e08b Rebuild patches 13c24cc4 Rebuild patches
45 lines
1.7 KiB
Diff
45 lines
1.7 KiB
Diff
From efb1975e4adc557e74ebf67a23ce8edb8651e459 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Thu, 22 Mar 2018 01:40:24 -0400
|
|
Subject: [PATCH] getPlayerUniqueId API
|
|
|
|
Gets the unique ID of the player currently known as the specified player name
|
|
In Offline Mode, will return an Offline UUID
|
|
|
|
This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
index e68b40be6..eecb5353f 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -1380,6 +1380,26 @@ public final class CraftServer implements Server {
|
|
return recipients.size();
|
|
}
|
|
|
|
+ // Paper start
|
|
+ @Nullable
|
|
+ public UUID getPlayerUniqueId(String name) {
|
|
+ Player player = Bukkit.getPlayerExact(name);
|
|
+ if (player != null) {
|
|
+ return player.getUniqueId();
|
|
+ }
|
|
+ GameProfile profile;
|
|
+ // Only fetch an online UUID in online mode
|
|
+ if (net.minecraft.server.MinecraftServer.getServer().getOnlineMode()
|
|
+ || (org.spigotmc.SpigotConfig.bungee && com.destroystokyo.paper.PaperConfig.bungeeOnlineMode)) {
|
|
+ profile = console.getUserCache().getProfile( name );
|
|
+ } else {
|
|
+ // Make an OfflinePlayer using an offline mode UUID since the name has no profile
|
|
+ profile = new GameProfile(UUID.nameUUIDFromBytes(("OfflinePlayer:" + name).getBytes(Charsets.UTF_8)), name);
|
|
+ }
|
|
+ return profile != null ? profile.getId() : null;
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
@Override
|
|
@Deprecated
|
|
public OfflinePlayer getOfflinePlayer(String name) {
|
|
--
|
|
2.25.0
|
|
|