MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Récupération lien texture

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    10 Messages 5 Publieurs 1.2k Vues 1 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • lesfreresdemonL Hors-ligne
      lesfreresdemon
      dernière édition par

      Bonjour/Bonsoir,
      Je cherche absolument a trouver un lien viable vers la texture de terre (par exemple), soit dirt.png qui est actuellement chargé par le jeu (donc que ce soit celle de base ou celle d’un resourcepack).
      J’ai déjà essayé de nombreux lien: 
      Par exemple:

      
      File texturedirt = new File("texture:dirt.png");
      File texturedirt = new File("assets/textures/blocks/dirt.png");
      File texturedirt = new File("texture:blocks/dirt.png");
      
      

      Voila 😕 Si vous avez des idées je suis preneur 😄

      Merci d’avance, Pierre

      1 réponse Dernière réponse Répondre Citer 0
      • Z Hors-ligne
        Zoulette
        dernière édition par

        tu cherche la texture de la dirt en fichier.png sur ton pc? car j’ai pas très bien compris ta reqête

        1 réponse Dernière réponse Répondre Citer 0
        • P Hors-ligne
          PlayFlop_
          dernière édition par

          Normalement ça devrait être sa:
          File texturedirt = new File(MODID + “:textures/blocks/dirt.png”);
          ou
          [size=smallFile texturedirt = new File(“minecraft:textures/blocks/dirt.png”);]
          pour la texture de minecraft directement

          1 réponse Dernière réponse Répondre Citer 0
          • Superloup10S Hors-ligne
            Superloup10 Modérateurs
            dernière édition par

            Il faut passer par la classe RessourceLocation et non par la classe File.

            Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

            Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

            1 réponse Dernière réponse Répondre Citer 0
            • lesfreresdemonL Hors-ligne
              lesfreresdemon
              dernière édition par

              Merci c’est exactement ce que je cherchais, comment ai-je pu être aussi stupide 😄


              Et donc si je veux imaginons copier ce fichier qui est la texture de la terre, et que je ne peut utiliser que la resourcelocation, comment est ce que je peux procéder?

              1 réponse Dernière réponse Répondre Citer 0
              • DeletedD Hors-ligne
                Deleted
                dernière édition par

                Tu peux récupérer le FileInputStream d’un ResourceLocation, de mémoire, et donc ensuite avec un FileWriter en récrire une copie.

                1 réponse Dernière réponse Répondre Citer 0
                • lesfreresdemonL Hors-ligne
                  lesfreresdemon
                  dernière édition par

                  Ok, mais je suis vraiment pas bon pour ça 😕
                  J’ai fait cela:

                  
                  BufferedReader readIn = new BufferedReader(new InputStreamReader(getClass().getClassLoader()
                       .getResourceAsStream("minecraft:textures/blocks/dirt.png"), "UTF-8"));
                  
                  @SuppressWarnings("resource")
                  FileWriter fw = new FileWriter(Minecraft.getMinecraft().mcDataDir + "/Flan/dirt.png");
                  
                  

                  Mais ça ne marche pas 😕

                  1 réponse Dernière réponse Répondre Citer 0
                  • DeletedD Hors-ligne
                    Deleted
                    dernière édition par

                    Commence par écouter mes conseils, à savoir faire le lien entre un InputStream puis un ResourceLocation, je n’ai à aucun moment mentionner le BufferedReader.
                    Une piste:
                    Minecraft.getMinecraft().getResourceManager().getResource(location).getInputStream()

                    1 réponse Dernière réponse Répondre Citer 0
                    • lesfreresdemonL Hors-ligne
                      lesfreresdemon
                      dernière édition par

                      Merci pour cette réponse Plaigon,
                      J’ai donc réussi à réaliser ce que je souhaitais, je me permet de mettre mon code pour que ceux qui chercheraient une solution soient servi 😄

                      A déclarer avant le void

                      
                      private static final ResourceLocation dirt = new ResourceLocation("minecraft:textures/blocks/dirt.png");
                      
                      

                      Dans la fonction
                      (A choisir)

                      
                      File destination = new File(Minecraft.getMinecraft().mcDataDir + "/textures/terre.png");
                      
                      

                      Puis la récupération de la texture:

                      
                      FileUtils.copyInputStreamToFile(Minecraft.getMinecraft().getResourceManager().getResource(dirt).getInputStream(), destination );
                      
                      
                      1 réponse Dernière réponse Répondre Citer 0
                      • Superloup10S Hors-ligne
                        Superloup10 Modérateurs
                        dernière édition par

                        Tu n’as pas besoin de mettre minecraft: quand tu veux avoir une texture de Minecraft.

                        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

                        1 réponse Dernière réponse Répondre Citer 0
                        • 1 / 1
                        • Premier message
                          Dernier message
                        Design by Woryk
                        ContactMentions Légales

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB