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

Résolu Problème texture bloc four

1.11.x
1.11.x
3
10
1.7k
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.
  • A
    aypristyle dernière édition par 7 juil. 2017, 08:50

    Bonjour j’essaye depuis quelques heures de créer un bloc avec les textures comme un four (c’est à dire orientable et avec des texture différentes sur le dessus le devant et les cotés) voici mes essais

    {
        "variants": {
            "facing=north": { "model": "furnace" },
            "facing=south": { "model": "furnace", "y": 180 },
            "facing=west":  { "model": "furnace", "y": 270 },
            "facing=east":  { "model": "furnace", "y": 90 }
        }
    }

    avec celui-ci j’ai réussi a obtenir ma texture d’inventaire mais pas celle du bloc posé

    {
        "multipart": [{
            "when": {
    "orientation": "north"
            },
            "apply": {
                "model": "simpleores:custom_furnace"
            }
        }]
    }

    avec celle-ci et ses dérivés mon jeu crash voici ce que me dis mes logs

    ConditionPropertyValue{key=orientation, value=north}: Definition: BlockStateContainer{block=simpleores:custom_furnace, properties=[]} has no property: orientation
    
    

    en espérant avoir été suffisament claire dans mes explications

    **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

    1 réponse Dernière réponse Répondre Citer 0
    • LeBossMax2
      LeBossMax2 dernière édition par 7 juil. 2017, 09:01

      Premièrement, tu as un problème au niveau du nom de la property : dans le premier essai du met facing alors que dans le deuxième tu met orientation. Il va donc falloir se décider pour le nom.
      Deuxièmement, tu block n’as pas de property. Dans le code du block, tu devrais avoir ça :

      @Override
      protected BlockStateContainer createBlockState()
      {
          return new BlockStateContainer(this, new IProperty[] {TA_PROPERTY});
      }
      1 réponse Dernière réponse Répondre Citer 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 7 juil. 2017, 09:08

        Salut,
        Il faut rajouter une propriété orientation dans ton bloc.

        1 réponse Dernière réponse Répondre Citer 0
        • A
          aypristyle dernière édition par 7 juil. 2017, 09:09

          Donc si j’ai bien compris ce que tu m’as dit je nomme ma propriété orientation et j’aimerais quelle est quatres valeurs possible south, north, west et east comment puis-je initialiserr cette propriété ?

          **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

          1 réponse Dernière réponse Répondre Citer 0
          • LeBossMax2
            LeBossMax2 dernière édition par 7 juil. 2017, 09:16

            Il existe déja des propriétés dans les classes de mc, que tu peux utiliser. Par Exemple dans BlockHorizontal, il y as ce que tu cherche. Par contre la propriété s’appelle facing, donc il faudra adapter le json .

            1 réponse Dernière réponse Répondre Citer 0
            • A
              aypristyle dernière édition par 8 juil. 2017, 12:00

              Bonjour j’ai utiliser la propriété facing dont tu m’as parler et j’ai réessayer avec les deux json que j’ai mis au-dessus en remplaçant orientation par facing sans succès par contre les logs ont changé voici ce que j’ai maintenant

              Don't know how to convert simpleores:custom_furnace[facing=north] back into data…
              

              Je met ma classe au cas où

              package fr.priya.simpleores.blocks;
              import fr.priya.simpleores.ModSimpleores;
              import fr.priya.simpleores.gui.TileEntityCustomFurnace;
              import net.minecraft.block.Block;
              import net.minecraft.block.BlockHorizontal;
              import net.minecraft.block.material.Material;
              import net.minecraft.block.properties.IProperty;
              import net.minecraft.block.properties.PropertyDirection;
              import net.minecraft.block.state.BlockStateContainer;
              import net.minecraft.tileentity.TileEntity;
              import net.minecraft.world.World;
              public class CustomFurnace extends Block{
              public static final String NAME = "custom_furnace";
                   public static final PropertyDirection FACING = BlockHorizontal.FACING;
              public CustomFurnace(Material material)
              {
                  super(material);
                  SimpleoresBlocks.setBlockName(this, NAME);
                  setResistance(5.0F);
                  setHardness(3.0F);
                  setCreativeTab(ModSimpleores.blocksTab);
              }
              public TileEntity createTileEntity(World world, int metadata)
              {
              return new TileEntityCustomFurnace();
              }
              public boolean hasTileEntity(int metadata)
              {
              return true;
              }
              @Override
              protected BlockStateContainer createBlockState()
                 {
                     return new BlockStateContainer(this, new IProperty[] {FACING});
                 }
              }

              je pense que mon problème se situe dans ma classe car j’ai essaye sans le json et le bug persiste

              **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

              1 réponse Dernière réponse Répondre Citer 0
              • robin4002
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 8 juil. 2017, 12:17

                Il faut ajouter les fonctions getStateFromMeta et getMetaFromState

                1 réponse Dernière réponse Répondre Citer 0
                • A
                  aypristyle dernière édition par 8 juil. 2017, 12:52

                  J’ai bien rajouté les fonctions manquantes comme tu m’as indiqué maintenant j’arrive a avoir le rendu de mon four in-game quand je le pose mais il ne s’oriente pas voici mes rajouts

                    public IBlockState getStateFromMeta(int meta)
                     {
                         EnumFacing enumfacing = EnumFacing.getFront(meta);
                         if (enumfacing.getAxis() == EnumFacing.Axis.Y)
                         {
                             enumfacing = EnumFacing.NORTH;
                         }
                         return this.getDefaultState().withProperty(FACING, enumfacing);
                     }
                  }

                  (je me suis inspirée de la classe four)
                  et voici mon json aussi inspiré de celui du four

                  {
                     "variants": {
                         "facing=north": { "model": "simpleores:custom_furnace" },
                         "facing=south": { "model": "simpleores:custom_furnace", "y": 180 },
                         "facing=west":  { "model": "simpleores:custom_furnace", "y": 270 },
                         "facing=east":  { "model": "simpleores:custom_furnace", "y": 90 }
                     }
                  }

                  **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

                  1 réponse Dernière réponse Répondre Citer 0
                  • robin4002
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 8 juil. 2017, 13:08

                    Normal, il manque encore la fonction changeant l’état du bloc en fonction de la direction du joueur lorsque tu poses le bloc.

                    Regardes le code la citrouille / autres blocs avec orientation.

                    1 réponse Dernière réponse Répondre Citer 0
                    • A
                      aypristyle dernière édition par 11 juil. 2017, 09:11

                      Merci beaucoup problème résolu je met le code complet pour ceux qui veulent

                       @Override
                      protected BlockStateContainer createBlockState()
                         {
                             return new BlockStateContainer(this, new IProperty[] {FACING});
                         }
                         public IBlockState getStateFromMeta(int meta)
                         {
                             EnumFacing enumfacing = EnumFacing.getFront(meta);
                             if (enumfacing.getAxis() == EnumFacing.Axis.Y)
                             {
                                 enumfacing = EnumFacing.NORTH;
                             }
                             return this.getDefaultState().withProperty(FACING, enumfacing);
                         }
                         public IBlockState withMirror(IBlockState state, Mirror mirrorIn)
                         {
                             return state.withRotation(mirrorIn.toRotation((EnumFacing)state.getValue(FACING)));
                         }
                         public int getMetaFromState(IBlockState state)
                         {
                             return ((EnumFacing)state.getValue(FACING)).getIndex();
                         }
                         public IBlockState getStateForPlacement(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer)
                         {
                             return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing().getOpposite());
                         }

                      **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

                      MINECRAFT FORGE FRANCE © 2018

                      Powered by NodeBB