SSKulls.java 文件源码

java
阅读 17 收藏 0 点赞 0 评论 0

项目:BlockBall 作者:
public static ItemStack activateHeadByURL(String skinUrl, ItemStack itemStack) {
    if (itemStack.getType() == Material.SKULL_ITEM) {
        SkullMeta meta = (SkullMeta) itemStack.getItemMeta();
        try {
            final Class<?> cls = ReflectionLib.getClassFromName("org.bukkit.craftbukkit.VERSION.inventory.CraftMetaSkull");
            final Object real = cls.cast(meta);
            final Field field = real.getClass().getDeclaredField("profile");
            field.setAccessible(true);
            field.set(real, getNonPlayerProfile(skinUrl));
            meta = SkullMeta.class.cast(real);
            itemStack.setItemMeta(meta);
            itemStack = new ItemStackBuilder(itemStack).setDisplayName("TMP");
        } catch (IllegalArgumentException | IllegalAccessException | NoSuchFieldException | SecurityException e) {
            Bukkit.getLogger().log(Level.WARNING, "Failed to set url of itemstack.", e);
        }
    }
    return itemStack;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号