• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Un extends BlockWall avec Metadata ?

    1.7.x
    1.7.x
    2
    3
    1075
    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.
    • N
      Noxon dernière édition par

      Yo,
      depuis ce début d’après-midi je cherche des solutions afin de retourner les textures d’un block et son metadata sur un blockWall custom.
      Voici la classe de mon bloc sans les metadata (un simple extends vers BlockWall) :

      
      package com.mvmc.mvmcmod.blocks;
      
      import java.util.List;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.block.Block;
      import net.minecraft.block.BlockWall;
      import net.minecraft.creativetab.CreativeTabs;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemStack;
      import net.minecraft.util.IIcon;
      
      public class BlockmvmcWall extends BlockWall {
      
          private Block block1;
      
          public BlockmvmcWall(Block block) {
              super(block);
              this.block1 = block;
          }
      
          @SideOnly(Side.CLIENT)
          public IIcon getIcon(int side, int meta)
          {
              return block1.getBlockTextureFromSide(side);
          }
      
          public void getSubBlocks(Item item, CreativeTabs tab, List list)
          {
              list.add(new ItemStack(item, 1, 0));
          }
      }
      

      Voilà, même en ayant joué de nombreuses fois avec le getIcon et son return, je n’ai pas réussi à mettre en place les textures d’un block selon son
      metadata. Il retourne toujours automatiquement à celles du block1 : 0 (ce qui est logique, car c’est dans le premier constructeur). 
      En fait le mieux ça serait carrément de pouvoir intégrer le Metadata dans le constructeur, un peu comme ça :

      public BlockmvmcWall(Block block, Metadata meta)
      

      Mais c’est impossible … 😞
      Quelqu’un aurait une solution pour faire un Wall qui prend les textures d’un block et son metadata ?
      Par exemple un Mur de bois de Sapin.

      Merci d’avance…

      1 réponse Dernière réponse Répondre Citer 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

        package com.mvmc.mvmcmod.blocks;
        
        import java.util.List;
        
        import cpw.mods.fml.relauncher.Side;
        import cpw.mods.fml.relauncher.SideOnly;
        import net.minecraft.block.Block;
        import net.minecraft.block.BlockWall;
        import net.minecraft.creativetab.CreativeTabs;
        import net.minecraft.item.Item;
        import net.minecraft.item.ItemStack;
        import net.minecraft.util.IIcon;
        
        public class BlockmvmcWall extends BlockWall {
        
            private Block block1;
        private int metadata;
        
            public BlockmvmcWall(Block block, int metadata) {
                super(block);
                this.block1 = block;
        this.metadata = metadata;
            }
        
            @SideOnly(Side.CLIENT)
            public IIcon getIcon(int side, int meta)
            {
                return block1.getIcon(side, this.metadata);
            }
        
            public void getSubBlocks(Item item, CreativeTabs tab, List list)
            {
                list.add(new ItemStack(item, 1, 0));
            }
        }
        
        1 réponse Dernière réponse Répondre Citer 0
        • N
          Noxon dernière édition par

          Alors c’était juste le “this.” avant le meta qui me manquait durant tout les tests …
          Merci je vais essayer ça

          EDIT : Ah non, j’aurai jamais pensé pouvoir utiliser ce paramètre dans le constructeur principal directement.
          Merci ça fonctionne. 🙂 Il me reste bien des choses à apprendre ! …

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

          MINECRAFT FORGE FRANCE © 2018

          Powered by NodeBB