Search in sources :

Example 31 with CraftServer

use of org.bukkit.craftbukkit.v1_10_R1.CraftServer in project Denizen-For-Bukkit by DenizenScript.

the class Handler method fillPlayerProfile.

@Override
public PlayerProfile fillPlayerProfile(PlayerProfile playerProfile) {
    try {
        if (playerProfile != null) {
            GameProfile gameProfile = new GameProfile(playerProfile.getUniqueId(), playerProfile.getName());
            gameProfile.getProperties().get("textures").clear();
            if (playerProfile.getTextureSignature() != null) {
                gameProfile.getProperties().put("textures", new Property("textures", playerProfile.getTexture(), playerProfile.getTextureSignature()));
            } else {
                gameProfile.getProperties().put("textures", new Property("textures", playerProfile.getTexture()));
            }
            MinecraftServer minecraftServer = ((CraftServer) Bukkit.getServer()).getServer();
            GameProfile gameProfile1 = null;
            if (gameProfile.getId() != null) {
                gameProfile1 = minecraftServer.getProfileCache().get(gameProfile.getId()).orElse(null);
            }
            if (gameProfile1 == null && gameProfile.getName() != null) {
                gameProfile1 = minecraftServer.getProfileCache().get(gameProfile.getName()).orElse(null);
            }
            if (gameProfile1 == null) {
                gameProfile1 = gameProfile;
            }
            if (playerProfile.hasTexture()) {
                gameProfile1.getProperties().get("textures").clear();
                if (playerProfile.getTextureSignature() != null) {
                    gameProfile1.getProperties().put("textures", new Property("textures", playerProfile.getTexture(), playerProfile.getTextureSignature()));
                } else {
                    gameProfile1.getProperties().put("textures", new Property("textures", playerProfile.getTexture()));
                }
            }
            if (Iterables.getFirst(gameProfile1.getProperties().get("textures"), null) == null) {
                gameProfile1 = minecraftServer.getSessionService().fillProfileProperties(gameProfile1, true);
            }
            Property property = Iterables.getFirst(gameProfile1.getProperties().get("textures"), null);
            return new PlayerProfile(gameProfile1.getName(), gameProfile1.getId(), property != null ? property.getValue() : null, property != null ? property.getSignature() : null);
        }
    } catch (Exception e) {
        if (Debug.verbose) {
            Debug.echoError(e);
        }
    }
    return null;
}
Also used : GameProfile(com.mojang.authlib.GameProfile) PlayerProfile(com.denizenscript.denizen.nms.util.PlayerProfile) CraftServer(org.bukkit.craftbukkit.v1_18_R1.CraftServer) Property(com.mojang.authlib.properties.Property) MinecraftServer(net.minecraft.server.MinecraftServer)

Aggregations

GameProfile (com.mojang.authlib.GameProfile)14 ResourceLocation (net.minecraft.resources.ResourceLocation)8 CraftServer (org.bukkit.craftbukkit.v1_17_R1.CraftServer)8 CraftServer (org.bukkit.craftbukkit.v1_18_R1.CraftServer)8 Property (com.mojang.authlib.properties.Property)7 PlayerProfile (net.aufdemrand.denizen.nms.util.PlayerProfile)4 MinecraftServer (net.minecraft.server.MinecraftServer)4 PlayerProfile (com.denizenscript.denizen.nms.util.PlayerProfile)3 UUID (java.util.UUID)3 CraftServer (org.bukkit.craftbukkit.v1_10_R1.CraftServer)3 CraftServer (org.bukkit.craftbukkit.v1_11_R1.CraftServer)3 CraftServer (org.bukkit.craftbukkit.v1_16_R3.CraftServer)3 CraftServer (org.bukkit.craftbukkit.v1_8_R3.CraftServer)3 Player (org.bukkit.entity.Player)3 BukkitRunnable (org.bukkit.scheduler.BukkitRunnable)3 ClientboundAddPlayerPacket (net.minecraft.network.protocol.game.ClientboundAddPlayerPacket)2 ClientboundPlayerInfoPacket (net.minecraft.network.protocol.game.ClientboundPlayerInfoPacket)2 ClientboundRemoveEntitiesPacket (net.minecraft.network.protocol.game.ClientboundRemoveEntitiesPacket)2 ServerLevel (net.minecraft.server.level.ServerLevel)2 ServerPlayer (net.minecraft.server.level.ServerPlayer)2