diff --git a/src/me/libraryaddict/disguise/utilities/DisguiseUtilities.java b/src/me/libraryaddict/disguise/utilities/DisguiseUtilities.java index 8889a42b..100b3674 100644 --- a/src/me/libraryaddict/disguise/utilities/DisguiseUtilities.java +++ b/src/me/libraryaddict/disguise/utilities/DisguiseUtilities.java @@ -358,7 +358,7 @@ public class DisguiseUtilities { return getProfileFromMojang(playerName, (Object) runnableIfCantReturn); } - private static WrappedGameProfile getProfileFromMojang(String origName, final Object runnable) { + private static WrappedGameProfile getProfileFromMojang(final String origName, final Object runnable) { final String playerName = origName.toLowerCase(); if (gameProfiles.containsKey(playerName)) { if (gameProfiles.get(playerName) != null) { @@ -379,7 +379,7 @@ public class DisguiseUtilities { Bukkit.getScheduler().runTaskAsynchronously(libsDisguises, new Runnable() { public void run() { try { - final WrappedGameProfile gameProfile = lookupGameProfile(playerName); + final WrappedGameProfile gameProfile = lookupGameProfile(origName); Bukkit.getScheduler().runTask(libsDisguises, new Runnable() { public void run() { if (gameProfiles.containsKey(playerName) && gameProfiles.get(playerName) == null) { diff --git a/src/me/libraryaddict/disguise/utilities/LibsProfileLookupCaller.java b/src/me/libraryaddict/disguise/utilities/LibsProfileLookupCaller.java index 5efe78c2..5b46e681 100644 --- a/src/me/libraryaddict/disguise/utilities/LibsProfileLookupCaller.java +++ b/src/me/libraryaddict/disguise/utilities/LibsProfileLookupCaller.java @@ -1,8 +1,5 @@ package me.libraryaddict.disguise.utilities; -import java.lang.reflect.Field; -import java.util.UUID; - import com.comphenix.protocol.wrappers.WrappedGameProfile; import net.minecraft.util.com.mojang.authlib.GameProfile; @@ -17,14 +14,6 @@ public class LibsProfileLookupCaller implements ProfileLookupCallback { @Override public void onProfileLookupFailed(GameProfile gameProfile, Exception arg1) { - try { - Field field = GameProfile.class.getDeclaredField("id"); - field.setAccessible(true); - field.set(gameProfile, UUID.randomUUID()); - } catch (Exception e) { - e.printStackTrace(); - } - this.onProfileLookupSucceeded(gameProfile); } @Override diff --git a/src/me/libraryaddict/disguise/utilities/ReflectionManager.java b/src/me/libraryaddict/disguise/utilities/ReflectionManager.java index 3df80dc5..9345582a 100644 --- a/src/me/libraryaddict/disguise/utilities/ReflectionManager.java +++ b/src/me/libraryaddict/disguise/utilities/ReflectionManager.java @@ -530,7 +530,10 @@ public class ReflectionManager { .getMethod("findProfilesByNames", String[].class, agent.getClass(), Class.forName("net.minecraft.util.com.mojang.authlib.ProfileLookupCallback")) .invoke(profileRepo, new String[] { playername }, agent, callback); - return callback.getGameProfile(); + if (callback.getGameProfile() != null) { + return callback.getGameProfile(); + } + return getGameProfile(null, playername); } } } catch (Exception ex) {