Guest User

PlayerSkinUtils

a guest
May 11th, 2024
15
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. package ponchisaohosting.xyz.pzoom.client;
  2.  
  3. import net.minecraft.client.MinecraftClient;
  4. import net.minecraft.client.texture.NativeImage;
  5. import net.minecraft.util.Identifier;
  6.  
  7. import java.io.BufferedReader;
  8. import java.io.InputStreamReader;
  9. import java.net.HttpURLConnection;
  10. import java.net.URL;
  11. import java.nio.ByteBuffer;
  12.  
  13. public class PlayerSkinUtils {
  14. private static String playerUUID; // Variable para almacenar la UUID del jugador
  15. private static NativeImage skinTexture; // Variable para almacenar la textura de la skin
  16.  
  17. public static String getPlayerUUID() {
  18. MinecraftClient client = MinecraftClient.getInstance();
  19.  
  20. // Si la UUID aún no se ha almacenado, obténla del cliente
  21. if (playerUUID == null && client.player != null) {
  22. playerUUID = client.player.getUuidAsString();
  23. NameMC(playerUUID); // Llama al método NameMC para obtener el modelo de la skin
  24. }
  25.  
  26. return playerUUID; // Devuelve la UUID del jugador
  27. }
  28.  
  29. public static NativeImage getSkinTexture() {
  30. return skinTexture; // Devuelve la textura de la skin
  31. }
  32.  
  33. public static void NameMC(String UUID) {
  34. try {
  35. // URL de la API de NameMC para obtener el modelo
  36. String url = "https://api.namemc.com/profile/{UUID}/texture";
  37.  
  38. // Reemplaza "{UUID}" con el UUID del jugador
  39. url = url.replace("{UUID}", UUID);
  40.  
  41. // Crear objeto URL
  42. URL obj = new URL(url);
  43.  
  44. // Abrir conexión
  45. HttpURLConnection con = (HttpURLConnection) obj.openConnection();
  46.  
  47. // Configurar método de solicitud
  48. con.setRequestMethod("GET");
  49.  
  50. // Leer la respuesta
  51. BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
  52. String inputLine;
  53. StringBuilder response = new StringBuilder();
  54. while ((inputLine = in.readLine()) != null) {
  55. response.append(inputLine);
  56. }
  57. in.close();
  58.  
  59. // Obtener la textura de la skin como un array de bytes
  60. byte[] textureBytes = response.toString().getBytes();
  61.  
  62. // Crear la textura de la skin desde el array de bytes
  63. skinTexture = NativeImage.read(ByteBuffer.wrap(textureBytes));
  64.  
  65. } catch (Exception e) {
  66. e.printStackTrace();
  67. }
  68. }
  69. }
  70.  
Tags: Java
Advertisement
Add Comment
Please, Sign In to add comment