Resolvido Alterar textura das cabeças

Discussão em 'Resolvidos' iniciado por ManiaGamer, 5 Outubro 2019.

  1. ManiaGamer
    Offline

    ManiaGamer Membro Conhecido

    Afiliado:
    6 Dezembro 2014
    Mensagens:
    458
    Sexo:
    Masculino
    Avaliações:
    +116 / -0
    Apelido no Minecraft:
    Mania_Gamer
    Boa noite, alguém pode me ajudar a alterar a skin das cabeças? Eu venho desde 3 semanas tentando mas nada funciona, muitos metodos da net não estão atualizados, um metodo famoso é o GameProfile, mas parece que a Mojang retirou nas novas versões, porem sei que isso é possivel pois servidores como Hypixel, Mineplex, Cubecraft manipulam texturas, alguem pode me dar uma ideia, ou até um codigo?
    Eu posso fazer por comando, mas quero que a cabeça fique em INVENTARIO não em bloco
    Observação: Tentei usar ProtocolLib, porem não estou conseguindo (Abaixo minha ultima tentativa)
    upload_2019-10-5_4-47-22.png
    Eu não sei mais o que fazer kkk
    Observação²: Estou querendo fazer tanto na 1.8 quanto na 1.14
    Se algum que entenda de programação realmente poder me ajudar ficarei grato
    @Edit:
    Aqui está um codigo por command blcok, inspecionando o codigo é possivel ver que ele seta uma textura personalizada de alguma conta da internet
    [​IMG]
     
  2. Cael
    Offline

    Cael Veterano Veterano VIP Sabotador.com VIP Sabotador.com Ex-Staff

    Afiliado:
    8 Setembro 2014
    Mensagens:
    1,267
    Avaliações:
    +1,777 / -4
    Apelido no Minecraft:
    Cael
    Você esta criando o profile certo, mas está aplicando errado.
    Pelo que eu vi, você tem que usar reflection pra pegar o Field "profile" da SkullMeta e setar isso para o GameProfile que você criou
     
  3. ManiaGamer
    Offline

    ManiaGamer Membro Conhecido

    Afiliado:
    6 Dezembro 2014
    Mensagens:
    458
    Sexo:
    Masculino
    Avaliações:
    +116 / -0
    Apelido no Minecraft:
    Mania_Gamer
    Então por isso o compilador ta dando erro? Com ficaria este metodo?
     
  4. WizardlyBump17
    Offline

    WizardlyBump17 Membro Ativo

    Afiliado:
    11 Março 2018
    Mensagens:
    758
    Sexo:
    Masculino
    Avaliações:
    +224 / -2
    Apelido no Minecraft:
    WizardlyBump17
    Código (Forge Crash):

      public static ItemStack getSkull(String url) {
      ItemStack skull = new ItemStack(Material.SKULL_ITEM, 1, (short) 3);
      if (url == null || url.isEmpty())
      return new ItemStack(Material.SKULL_ITEM, (byte) 3);
      SkullMeta skullMeta = (SkullMeta) skull.getItemMeta();
      GameProfile profile = new GameProfile(UUID.randomUUID(), null);
      byte[] encodedData = Base64.encodeBase64(String.format("{textures:{SKIN:{url:\"%s\"}}}", url).getBytes());
      profile.getProperties().put("textures", new Property("textures", new String(encodedData)));
      Field profileField = null;
      try {
      profileField = skullMeta.getClass().getDeclaredField("profile");
      } catch (NoSuchFieldException | SecurityException e) {
      e.printStackTrace();
      }
      profileField.setAccessible(true);
      try {
      profileField.set(skullMeta, profile);
      } catch (IllegalArgumentException | IllegalAccessException e) {
      e.printStackTrace();
      }
      skull.setItemMeta(skullMeta);
      return skull;
      }
     
    Exemplo de uso:
    Código (Forge Crash):

    ItemStack yetiIII = getSkull("http://textures.minecraft.net/texture/c1202ea9c89dc04786192715e698d50fd51bdcf24d050b18d3123dc407564fd8");
     
     
  5. Mr. Piva
    Offline

    Mr. Piva Veterano Veterano VIP Sabotador.com VIP Sabotador.com VIP Industrial Ex-Staff

    Afiliado:
    16 Outubro 2013
    Mensagens:
    474
    Sexo:
    Masculino
    Avaliações:
    +277 / -0
    Apelido no Minecraft:
    MrPiva
    meudeus quanto try
     
  6. ManiaGamer
    Offline

    ManiaGamer Membro Conhecido

    Afiliado:
    6 Dezembro 2014
    Mensagens:
    458
    Sexo:
    Masculino
    Avaliações:
    +116 / -0
    Apelido no Minecraft:
    Mania_Gamer
    Alguem pode me ajudar? Até agora não to obtendo resultado nenhum :/
    Codigo atual:
    []: Eu sei que este codigo ainda não está sendo usado
    upload_2019-10-5_23-30-0.png
    Este codigo esta dando o seguinte erro:
    Código (Forge Crash):
    java.lang.IllegalArgumentException: Can not set com.mojang.authlib.GameProfile field org.bukkit.craftbukkit.v1_8_R3.inventory.CraftMetaSkull.profile to com.comphenix.protocol.wrappers.WrappedGameProfile
     
  7. Cael
    Offline

    Cael Veterano Veterano VIP Sabotador.com VIP Sabotador.com Ex-Staff

    Afiliado:
    8 Setembro 2014
    Mensagens:
    1,267
    Avaliações:
    +1,777 / -4
    Apelido no Minecraft:
    Cael
    Você tem que usar o GameProfile do minecraft e n do protocollib
     
  8. ManiaGamer
    Offline

    ManiaGamer Membro Conhecido

    Afiliado:
    6 Dezembro 2014
    Mensagens:
    458
    Sexo:
    Masculino
    Avaliações:
    +116 / -0
    Apelido no Minecraft:
    Mania_Gamer
    Spigot não tem mais gameprofile, porem FINALMENTE FINALMENTE DEPOIS DE 3 SEMANAS DE LUTA consegui
    algum mod pode feichar o topico
     

Compartilhe esta Página