Skip to content

Commit ef6a1a5

Browse files
authored
Revert to old createProfile(UUID, String) logic (#7723)
1 parent c449f6a commit ef6a1a5

12 files changed

+117
-45
lines changed

patches/api/0058-Basic-PlayerProfile-API.patch

Lines changed: 74 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -289,10 +289,10 @@ index 0000000000000000000000000000000000000000..7b3b6ef533d32169fbeca389bd61cfc6
289289
+ }
290290
+}
291291
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
292-
index ece84330d2700db8708d2ae2ab7badf4acb428a8..621420d35378e0038c33892c185216894912f023 100644
292+
index ece84330d2700db8708d2ae2ab7badf4acb428a8..90c875ad60e473c3ec25f209933d48615d0fd6c0 100644
293293
--- a/src/main/java/org/bukkit/Bukkit.java
294294
+++ b/src/main/java/org/bukkit/Bukkit.java
295-
@@ -2092,6 +2092,50 @@ public final class Bukkit {
295+
@@ -2092,6 +2092,83 @@ public final class Bukkit {
296296
public static boolean suggestPlayerNamesWhenNullTabCompletions() {
297297
return server.suggestPlayerNamesWhenNullTabCompletions();
298298
}
@@ -301,7 +301,7 @@ index ece84330d2700db8708d2ae2ab7badf4acb428a8..621420d35378e0038c33892c18521689
301301
+ * Creates a PlayerProfile for the specified uuid, with name as null.
302302
+ *
303303
+ * If a player with the passed uuid exists on the server at the time of creation, the returned player profile will
304-
+ * be populated with the properties of said player.
304+
+ * be populated with the properties of said player (including their uuid and name).
305305
+ *
306306
+ * @param uuid UUID to create profile for
307307
+ * @return A PlayerProfile object
@@ -315,7 +315,12 @@ index ece84330d2700db8708d2ae2ab7badf4acb428a8..621420d35378e0038c33892c18521689
315315
+ * Creates a PlayerProfile for the specified name, with UUID as null.
316316
+ *
317317
+ * If a player with the passed name exists on the server at the time of creation, the returned player profile will
318-
+ * be populated with the properties of said player.
318+
+ * be populated with the properties of said player (including their uuid and name).
319+
+ * <p>
320+
+ * E.g. if the player 'jeb_' is currently playing on the server, calling {@code createProfile("JEB_")} will
321+
+ * yield a profile with the name 'jeb_', their uuid and their textures.
322+
+ * To bypass this pre-population on a case-insensitive name match, see {@link #createProfileExact(UUID, String)}.
323+
+ * <p>
319324
+ *
320325
+ * @param name Name to create profile for
321326
+ * @return A PlayerProfile object
@@ -330,7 +335,15 @@ index ece84330d2700db8708d2ae2ab7badf4acb428a8..621420d35378e0038c33892c18521689
330335
+ *
331336
+ * Both UUID and Name can not be null at same time. One must be supplied.
332337
+ * If a player with the passed uuid or name exists on the server at the time of creation, the returned player
333-
+ * profile will be populated with the properties of said player.
338+
+ * profile will be populated with the properties of said player (including their uuid and name).
339+
+ * <p>
340+
+ * E.g. if the player 'jeb_' is currently playing on the server, calling {@code createProfile(null, "JEB_")} will
341+
+ * yield a profile with the name 'jeb_', their uuid and their textures.
342+
+ * To bypass this pre-population on an case-insensitive name match, see {@link #createProfileExact(UUID, String)}.
343+
+ * <p>
344+
+ *
345+
+ * The name comparison will compare the {@link String#toLowerCase()} version of both the passed name parameter and
346+
+ * a players name to honour the case-insensitive nature of a mojang profile lookup.
334347
+ *
335348
+ * @param uuid UUID to create profile for
336349
+ * @param name Name to create profile for
@@ -339,15 +352,35 @@ index ece84330d2700db8708d2ae2ab7badf4acb428a8..621420d35378e0038c33892c18521689
339352
+ @NotNull
340353
+ public static com.destroystokyo.paper.profile.PlayerProfile createProfile(@Nullable UUID uuid, @Nullable String name) {
341354
+ return server.createProfile(uuid, name);
355+
+ }
356+
+
357+
+ /**
358+
+ * Creates an exact PlayerProfile for the specified name/uuid
359+
+ *
360+
+ * Both UUID and Name can not be null at same time. One must be supplied.
361+
+ * If a player with the passed uuid or name exists on the server at the time of creation, the returned player
362+
+ * profile will be populated with the properties of said player.
363+
+ * <p>
364+
+ * Compared to {@link #createProfile(UUID, String)}, this method will never mutate the passed uuid or name.
365+
+ * If a player with either the same uuid or a matching name (case-insensitive) is found on the server, their
366+
+ * properties, such as textures, will be pre-populated in the profile, however the passed uuid and name stay intact.
367+
+ *
368+
+ * @param uuid UUID to create profile for
369+
+ * @param name Name to create profile for
370+
+ * @return A PlayerProfile object
371+
+ */
372+
+ @NotNull
373+
+ public static com.destroystokyo.paper.profile.PlayerProfile createProfileExact(@Nullable UUID uuid, @Nullable String name) {
374+
+ return server.createProfileExact(uuid, name);
342375
+ }
343376
// Paper end
344377

345378
@NotNull
346379
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
347-
index 3c987b2fb0f748ce92a87c4ee54a4e9722e1910e..58c8e74b61dd4d952919a854a374ae7b4c3e02c0 100644
380+
index 3c987b2fb0f748ce92a87c4ee54a4e9722e1910e..9796ae6fcf605af88c1e5c1d29d77ea6857632cc 100644
348381
--- a/src/main/java/org/bukkit/Server.java
349382
+++ b/src/main/java/org/bukkit/Server.java
350-
@@ -1838,5 +1838,43 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
383+
@@ -1838,5 +1838,74 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
351384
* @return true if player names should be suggested
352385
*/
353386
boolean suggestPlayerNamesWhenNullTabCompletions();
@@ -356,7 +389,7 @@ index 3c987b2fb0f748ce92a87c4ee54a4e9722e1910e..58c8e74b61dd4d952919a854a374ae7b
356389
+ * Creates a PlayerProfile for the specified uuid, with name as null.
357390
+ *
358391
+ * If a player with the passed uuid exists on the server at the time of creation, the returned player profile will
359-
+ * be populated with the properties of said player.
392+
+ * be populated with the properties of said player (including their uuid and name).
360393
+ *
361394
+ * @param uuid UUID to create profile for
362395
+ * @return A PlayerProfile object
@@ -368,7 +401,12 @@ index 3c987b2fb0f748ce92a87c4ee54a4e9722e1910e..58c8e74b61dd4d952919a854a374ae7b
368401
+ * Creates a PlayerProfile for the specified name, with UUID as null.
369402
+ *
370403
+ * If a player with the passed name exists on the server at the time of creation, the returned player profile will
371-
+ * be populated with the properties of said player.
404+
+ * be populated with the properties of said player (including their uuid and name).
405+
+ * <p>
406+
+ * E.g. if the player 'jeb_' is currently playing on the server, calling {@code createProfile("JEB_")} will
407+
+ * yield a profile with the name 'jeb_', their uuid and their textures.
408+
+ * To bypass this pre-population on a case-insensitive name match, see {@link #createProfileExact(UUID, String)}.
409+
+ * <p>
372410
+ *
373411
+ * @param name Name to create profile for
374412
+ * @return A PlayerProfile object
@@ -381,13 +419,39 @@ index 3c987b2fb0f748ce92a87c4ee54a4e9722e1910e..58c8e74b61dd4d952919a854a374ae7b
381419
+ *
382420
+ * Both UUID and Name can not be null at same time. One must be supplied.
383421
+ * If a player with the passed uuid or name exists on the server at the time of creation, the returned player
384-
+ * profile will be populated with the properties of said player.
422+
+ * profile will be populated with the properties of said player (including their uuid and name).
423+
+ * <p>
424+
+ * E.g. if the player 'jeb_' is currently playing on the server, calling {@code createProfile(null, "JEB_")} will
425+
+ * yield a profile with the name 'jeb_', their uuid and their textures.
426+
+ * To bypass this pre-population on an case-insensitive name match, see {@link #createProfileExact(UUID, String)}.
427+
+ * <p>
428+
+ *
429+
+ * The name comparison will compare the {@link String#toLowerCase()} version of both the passed name parameter and
430+
+ * a players name to honour the case-insensitive nature of a mojang profile lookup.
385431
+ *
386432
+ * @param uuid UUID to create profile for
387433
+ * @param name Name to create profile for
388434
+ * @return A PlayerProfile object
389435
+ */
390436
+ @NotNull
391437
+ com.destroystokyo.paper.profile.PlayerProfile createProfile(@Nullable UUID uuid, @Nullable String name);
438+
+
439+
+ /**
440+
+ * Creates an exact PlayerProfile for the specified name/uuid
441+
+ *
442+
+ * Both UUID and Name can not be null at same time. One must be supplied.
443+
+ * If a player with the passed uuid or name exists on the server at the time of creation, the returned player
444+
+ * profile will be populated with the properties of said player.
445+
+ * <p>
446+
+ * Compared to {@link #createProfile(UUID, String)}, this method will never mutate the passed uuid or name.
447+
+ * If a player with either the same uuid or a matching name (case-insensitive) is found on the server, their
448+
+ * properties, such as textures, will be pre-populated in the profile, however the passed uuid and name stay intact.
449+
+ *
450+
+ * @param uuid UUID to create profile for
451+
+ * @param name Name to create profile for
452+
+ * @return A PlayerProfile object
453+
+ */
454+
+ @NotNull
455+
+ com.destroystokyo.paper.profile.PlayerProfile createProfileExact(@Nullable UUID uuid, @Nullable String name);
392456
// Paper end
393457
}

patches/api/0183-Expose-the-internal-current-tick.patch

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ Subject: [PATCH] Expose the internal current tick
55

66

77
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
8-
index c8580174d88674a8ab115976e93f225bb20b5854..af91f6cf87ad0f01370db31720fe318d84786ebd 100644
8+
index 5e145a95c1259e084aeed08a3b1d773843939e3f..070a06b1f19c663063f8803bd3698569f67549b4 100644
99
--- a/src/main/java/org/bukkit/Bukkit.java
1010
+++ b/src/main/java/org/bukkit/Bukkit.java
11-
@@ -2162,6 +2162,10 @@ public final class Bukkit {
12-
public static com.destroystokyo.paper.profile.PlayerProfile createProfile(@Nullable UUID uuid, @Nullable String name) {
13-
return server.createProfile(uuid, name);
11+
@@ -2195,6 +2195,10 @@ public final class Bukkit {
12+
public static com.destroystokyo.paper.profile.PlayerProfile createProfileExact(@Nullable UUID uuid, @Nullable String name) {
13+
return server.createProfileExact(uuid, name);
1414
}
1515
+
1616
+ public static int getCurrentTick() {
@@ -20,13 +20,13 @@ index c8580174d88674a8ab115976e93f225bb20b5854..af91f6cf87ad0f01370db31720fe318d
2020

2121
@NotNull
2222
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
23-
index f673927df360702b07f1fd197a3de07bc47b60cd..dc119a58c02a6b4177d560b70f026db6d9e08c55 100644
23+
index e32e6b87fefa95c07a0aef58cac33c99efea2631..38312ba54a4afd61b002091a742a8c91ecda1b1c 100644
2424
--- a/src/main/java/org/bukkit/Server.java
2525
+++ b/src/main/java/org/bukkit/Server.java
26-
@@ -1898,5 +1898,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
26+
@@ -1929,5 +1929,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
2727
*/
2828
@NotNull
29-
com.destroystokyo.paper.profile.PlayerProfile createProfile(@Nullable UUID uuid, @Nullable String name);
29+
com.destroystokyo.paper.profile.PlayerProfile createProfileExact(@Nullable UUID uuid, @Nullable String name);
3030
+
3131
+ /**
3232
+ * Get the current internal server tick

patches/api/0190-Expose-MinecraftServer-isRunning.patch

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ Subject: [PATCH] Expose MinecraftServer#isRunning
66
This allows for plugins to detect if the server is actually turning off in onDisable rather than just plugins reloading.
77

88
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
9-
index a6808ead643db1833e1bb2a5f758f1e1d73059c1..61a60d02557ec83392dc9ce53ac83d8e4060d23b 100644
9+
index d93c189807ca1d22b86ed60e3eb1c1fe0a863495..ffd1c908e56fe4e09def7d7658b59e5827d8ad55 100644
1010
--- a/src/main/java/org/bukkit/Bukkit.java
1111
+++ b/src/main/java/org/bukkit/Bukkit.java
12-
@@ -2185,6 +2185,15 @@ public final class Bukkit {
12+
@@ -2218,6 +2218,15 @@ public final class Bukkit {
1313
public static int getCurrentTick() {
1414
return server.getCurrentTick();
1515
}
@@ -26,10 +26,10 @@ index a6808ead643db1833e1bb2a5f758f1e1d73059c1..61a60d02557ec83392dc9ce53ac83d8e
2626

2727
@NotNull
2828
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
29-
index 02139695e15ec52b09ccbdf6105fa2bc786cf9be..fdf88c204505efdb8bd2a51e0f7e0ad1ca803e75 100644
29+
index 81761ca547e6d2283edc5516a115c84cc48016c0..8a71aaf28eb4c38396c330e0d6eac0ed31182c94 100644
3030
--- a/src/main/java/org/bukkit/Server.java
3131
+++ b/src/main/java/org/bukkit/Server.java
32-
@@ -1920,5 +1920,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
32+
@@ -1951,5 +1951,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
3333
* @return Current tick
3434
*/
3535
int getCurrentTick();

patches/api/0200-Add-Mob-Goal-API.patch

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -523,10 +523,10 @@ index 0000000000000000000000000000000000000000..8fd399f791b45eb7fc62693ca954eea0
523523
+ @Deprecated GoalKey<Mob> UNIVERSAL_ANGER_RESET = GoalKey.of(Mob.class, NamespacedKey.minecraft("universal_anger_reset"));
524524
+}
525525
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
526-
index e86d3a012f62e87af1894bf697d496bb82cc6c02..cd175830d73b6db5388d5fcf9c37399f4ccb72e0 100644
526+
index f020e0d840ffb2d4618f226cc698f2d7c1c3858a..a300b85a475364ca5f32a01ae02a77306ea9a1c8 100644
527527
--- a/src/main/java/org/bukkit/Bukkit.java
528528
+++ b/src/main/java/org/bukkit/Bukkit.java
529-
@@ -2206,6 +2206,16 @@ public final class Bukkit {
529+
@@ -2239,6 +2239,16 @@ public final class Bukkit {
530530
public static boolean isStopping() {
531531
return server.isStopping();
532532
}
@@ -544,10 +544,10 @@ index e86d3a012f62e87af1894bf697d496bb82cc6c02..cd175830d73b6db5388d5fcf9c37399f
544544

545545
@NotNull
546546
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
547-
index dda3eb79a9687f8a6fdc9e6bdce3ecdcdfddb5f4..0e7bb5c572aa46120f85e9202dd0fe5cc7943ff5 100644
547+
index 52cb28b85e4ce6f69fea7b8f543aea00c3c7be3b..1360973d22ef5da6388863e8558ef7fe08ae7ec8 100644
548548
--- a/src/main/java/org/bukkit/Server.java
549549
+++ b/src/main/java/org/bukkit/Server.java
550-
@@ -1937,5 +1937,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
550+
@@ -1968,5 +1968,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
551551
* @return true if server is in the process of being shutdown
552552
*/
553553
boolean isStopping();

patches/api/0295-Add-basic-Datapack-API.patch

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,10 @@ index 0000000000000000000000000000000000000000..58f78d5e91beacaf710f62461cf869f7
7070
+
7171
+}
7272
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
73-
index 9f77415577a6ea3f6fda6c3077cdbf123ce47674..fd1ec52f2135914e50dcb9d61635ddab67e46f5a 100644
73+
index a4c09666c3bbb9037303a6eb85d95a2555963aad..90bf75ebd1f6105c5b943c56409d60e3ee35b6b9 100644
7474
--- a/src/main/java/org/bukkit/Bukkit.java
7575
+++ b/src/main/java/org/bukkit/Bukkit.java
76-
@@ -2260,6 +2260,14 @@ public final class Bukkit {
76+
@@ -2293,6 +2293,14 @@ public final class Bukkit {
7777
public static com.destroystokyo.paper.entity.ai.MobGoals getMobGoals() {
7878
return server.getMobGoals();
7979
}
@@ -89,10 +89,10 @@ index 9f77415577a6ea3f6fda6c3077cdbf123ce47674..fd1ec52f2135914e50dcb9d61635ddab
8989

9090
@NotNull
9191
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
92-
index b0cfe2e72d404aca204a0a1a43e4ba4e0c44ac98..da886acceb4cf7129cdc6fe1b4bea2f428597cb7 100644
92+
index afc77648a8863f9d07f89fa1d3b14e88ce4183f6..bcfa12850ace6f3deee546a573f89887cb179892 100644
9393
--- a/src/main/java/org/bukkit/Server.java
9494
+++ b/src/main/java/org/bukkit/Server.java
95-
@@ -1984,5 +1984,11 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
95+
@@ -2015,5 +2015,11 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
9696
*/
9797
@NotNull
9898
com.destroystokyo.paper.entity.ai.MobGoals getMobGoals();

patches/api/0371-Custom-Potion-Mixes.patch

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,10 @@ index 0000000000000000000000000000000000000000..cb6d93526b637946aec311bef103ad30
102102
+ }
103103
+}
104104
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
105-
index 6a5b155b4fec18d9aa906cd6cea6394a98cfe1b5..dcfd22862c79ae01ca7707d9abf0a71cc0d4ad9d 100644
105+
index 75bc84ff3280fe7ecfe684014a8865e066b699ab..5979f00d7c85b8807659f1cb40a69f2e2449ef70 100644
106106
--- a/src/main/java/org/bukkit/Bukkit.java
107107
+++ b/src/main/java/org/bukkit/Bukkit.java
108-
@@ -2319,6 +2319,15 @@ public final class Bukkit {
108+
@@ -2352,6 +2352,15 @@ public final class Bukkit {
109109
public static io.papermc.paper.datapack.DatapackManager getDatapackManager() {
110110
return server.getDatapackManager();
111111
}
@@ -122,10 +122,10 @@ index 6a5b155b4fec18d9aa906cd6cea6394a98cfe1b5..dcfd22862c79ae01ca7707d9abf0a71c
122122

123123
@NotNull
124124
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
125-
index 24c3abf0fbc05c1aa22453543be94a2360c59f01..7a3a2ff605e06e42ba2a0263e2c50eed5c24f8e9 100644
125+
index f5ea978dade76db193989f4f92a90578e1c4f67a..b26ff5864d97810202257bed466ea16d9e0a988b 100644
126126
--- a/src/main/java/org/bukkit/Server.java
127127
+++ b/src/main/java/org/bukkit/Server.java
128-
@@ -2018,5 +2018,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
128+
@@ -2049,5 +2049,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
129129
*/
130130
@NotNull
131131
io.papermc.paper.datapack.DatapackManager getDatapackManager();

patches/server/0138-Basic-PlayerProfile-API.patch

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -621,7 +621,7 @@ index c4142568c3188c89142799cc4911dd7eae32a45f..f379e108ec3c762940bddea878a0a711
621621
String s1 = name.toLowerCase(Locale.ROOT);
622622
GameProfileCache.GameProfileInfo usercache_usercacheentry = (GameProfileCache.GameProfileInfo) this.profilesByName.get(s1);
623623
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
624-
index 6f1b1191426d864719e1b5cbd42bf5699e6193e3..59f3167c276d93c36b0b36ff0e36918cf498424b 100644
624+
index 6f1b1191426d864719e1b5cbd42bf5699e6193e3..4dad4b95f263bd7cd086d87848ee8c8a862e1577 100644
625625
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
626626
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
627627
@@ -244,6 +244,9 @@ import org.yaml.snakeyaml.error.MarkedYAMLException;
@@ -642,7 +642,7 @@ index 6f1b1191426d864719e1b5cbd42bf5699e6193e3..59f3167c276d93c36b0b36ff0e36918c
642642
CraftItemFactory.instance();
643643
}
644644

645-
@@ -2574,5 +2578,29 @@ public final class CraftServer implements Server {
645+
@@ -2574,5 +2578,37 @@ public final class CraftServer implements Server {
646646
public boolean suggestPlayerNamesWhenNullTabCompletions() {
647647
return com.destroystokyo.paper.PaperConfig.suggestPlayersWhenNullTabCompletions;
648648
}
@@ -660,6 +660,14 @@ index 6f1b1191426d864719e1b5cbd42bf5699e6193e3..59f3167c276d93c36b0b36ff0e36918c
660660
+ @Override
661661
+ public com.destroystokyo.paper.profile.PlayerProfile createProfile(@Nullable UUID uuid, @Nullable String name) {
662662
+ Player player = uuid != null ? Bukkit.getPlayer(uuid) : (name != null ? Bukkit.getPlayerExact(name) : null);
663+
+ if (player != null) return new com.destroystokyo.paper.profile.CraftPlayerProfile((CraftPlayer) player);
664+
+
665+
+ return new com.destroystokyo.paper.profile.CraftPlayerProfile(uuid, name);
666+
+ }
667+
+
668+
+ @Override
669+
+ public com.destroystokyo.paper.profile.PlayerProfile createProfileExact(@Nullable UUID uuid, @Nullable String name) {
670+
+ Player player = uuid != null ? Bukkit.getPlayer(uuid) : (name != null ? Bukkit.getPlayerExact(name) : null);
663671
+ if (player == null) return new com.destroystokyo.paper.profile.CraftPlayerProfile(uuid, name);
664672
+
665673
+ if (Objects.equals(uuid, player.getUniqueId()) && Objects.equals(name, player.getName())) {

0 commit comments

Comments
 (0)