MFF

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

    .2 : energy mechanic / api / "cable"

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.11.x
    39 Messages 6 Publieurs 6.4k 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.
    • SpyManS Hors-ligne
      SpyMan
      dernière édition par

      ya pas juste une petite solution ??

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

        Il te manque ces fonctions :

        public IBlockState withRotation(IBlockState state, Rotation rot)
        {
        return state.withProperty(FACING, rot.rotate((EnumFacing)state.getValue(FACING)));
        }
        
        /**
        * Returns the blockstate with the given mirror of the passed blockstate. If inapplicable, returns the passed
        * blockstate.
        */
        public IBlockState withMirror(IBlockState state, Mirror mirrorIn)
        {
        return state.withRotation(mirrorIn.toRotation((EnumFacing)state.getValue(FACING)));
        }
        
        /**
        * Called by ItemBlocks just before a block is actually set in the world, to allow for adjustments to the
        * IBlockstate
        */
        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());
        }
        
        /**
        * Convert the given metadata into a BlockState for this Block
        */
        public IBlockState getStateFromMeta(int meta)
        {
        return this.getDefaultState().withProperty(FACING, EnumFacing.getHorizontal(meta));
        }
        
        /**
        * Convert the BlockState into the correct metadata value
        */
        public int getMetaFromState(IBlockState state)
        {
        return ((EnumFacing)state.getValue(FACING)).getHorizontalIndex();
        }
        
        protected BlockStateContainer createBlockState()
        {
        return new BlockStateContainer(this, new IProperty[] {FACING});
        }
        
        1 réponse Dernière réponse Répondre Citer 0
        • SpyManS Hors-ligne
          SpyMan
          dernière édition par

          Ok merci je savais pas quil fallait toutes ces fonctions et aussi quand on casse le block il y a des particles sauf que je les ai sur l’un de mes blocks mais pas sur lautre, sur lautre cest le rose/noir de la texture buggé
          y a t-il un moyen de changer cela ?

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

            Regardes dans le fichier json, normalement il faut ajouter un truc du genre “particle”:“la texture”.

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

              C’est un peu particulier pour les blocs en 1.10+

              Il faut désormais un ItemBlock, voilà quelques bouts de codes que j’utilise

              Ceci dans le constructeur d’un block “mère” en gros ta classe mère pour tout tes blocs

              
              setBlockName(this, unlocalizedName);
              final ItemBlock itemBlock = new ItemBlock(this);
              itemBlock.setRegistryName(this.getRegistryName());
               GameRegistry.register(this);
              GameRegistry.register(itemBlock);
              
              

              Et pour la fonction setBlockName()

              public static void setBlockName(Block blockIn, String unlocalizedName) {
                      blockIn.setRegistryName("tonModID", unlocalizedName);
                      blockIn.setUnlocalizedName(unlocalizedName);
                  }
              

              Ensuite tu déclare tes blocs de la plus simple des manières:

              
              public static final Block testBlock= new BlockTest("nom_Unlocalized");
              
              

              Et voilà tu enregistre les rendu pour les .json avec normalement:

                 Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register();
              

              Et paf tu as de beaux chocapics avec le nouveau système de registry() de forge

              Si je t'ai filé un coup de main n'oublie pas le + / -
              Par contre évite les demandes d'aides en MP, tu sera sympa'

              La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

              Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                Ok merci jai mes paticles maintenant 😄
                et aussi quelqun sait-t-il comment creer des “cable” ? car moi j’en n’ai absolument aucunes idées

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

                  Même pas une petite idée ?

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

                    Pas besoin de double post, on est pas ici h24.
                    Et si j’ai une petite vu que j’en ait déjà fait, mais cest long et relativement compliqué et il y a plusieurs manières, plus ou moins bien, déjà il te faut des blocks avec tile entity, et pour la manière la plus simple, tu fait une variable qtenergie, et dans la fonction update tu regarde si ya des câbles autour, si oui tu leur donne.

                    Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                    AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                    Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                      Désolé pour le double post
                      Mais en fait la partie energy ne me dérange pas trop car c’est juste une boolean “ca passe ou ca passe pas” mais en fait c’est plus pour la partie graphique les conecxions, etc…
                      C’est cela que je ne sais pas faire

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

                        Ah ok, dans la classe block, il existe une fonction qui retourne le BlockState actuel en fonction des blocks autour (je sais malheuresement plus son nom), après tu fais un block state avec un boolean pour chaque face, et dans tes jsons, tu fais le rendu en fonction des booleans (et si tu veux pas passer ta vie dessus, y’a des logiciels pour en faire).

                        Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                        AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                        Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                          c’est quoi le nom du programme en question car oui ca va me souler sinon ?
                          et aussi faire le rendu via un json en fonction d"un boolean dsl mais je sais pas trop comment mit prendre 😕

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

                            MrCrayfish je sais plus quoi il me semble, mais je regarde ce WE vu que je compte me repencher sur le mod que j’avais commencé y’a longtemps

                            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                              avec Model Creator ?

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

                                Oui c’est ça.

                                Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                  T’es sur car je vois pas trop comment le faire avec ce logiciel
                                  après je ne suis pas un expert des jsons

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

                                    Sais pas jamais utilisé, j’avais tout fait à la main (sauf que y’a une espèce de ligne blanche de glitch aux coins).
                                    Sinon t’a d’autres programmes ici : http://minecraft.gamepedia.com/Programs_and_editors/3D_modeling.

                                    Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                    AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                    Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                      tu sais pas ou je pourrais trouver des exemples de jsons qui font ce genre de chose histoire d’ apprendre mieux leur fonctionnement ?

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

                                        Je t’en donne ce we

                                        Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                        AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                        Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                          Ok merci 🙂

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

                                            Déjà il te faudra un property boolean pour chaque face du block, de la forme java /** Whether this fence connects in the northern direction */ public static final PropertyBool NORTH = PropertyBool.create("north"); que tu devras enregistrer comme nimporte quel blockstate, ensuite il faut mettre la fontion pour retourner le blockstate actuel donc : ```java
                                            public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos)
                                            {
                                            return worldIn.getTileEntity(pos) instanceof IPipes;
                                            }
                                            @Override
                                            public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos)
                                            {
                                            return state.withProperty(NORTH, Boolean.valueOf(this.canConnectTo(worldIn, pos.north())))
                                            .withProperty(EAST, Boolean.valueOf(this.canConnectTo(worldIn, pos.east())))
                                            .withProperty(SOUTH, Boolean.valueOf(this.canConnectTo(worldIn, pos.south())))
                                            .withProperty(WEST, Boolean.valueOf(this.canConnectTo(worldIn, pos.west())))
                                            .withProperty(UP, Boolean.valueOf(this.canConnectTo(worldIn, pos.up())))
                                            .withProperty(DOWN, Boolean.valueOf(this.canConnectTo(worldIn, pos.down())));
                                            }

                                            Ensuite, il faudra le fichier json du blockstate (le mien fait 83 lignes :'(, et il faut que je le debug, vu que certaines connections marchent pas bien), regardes celui des fences (je m'en suis inspiré), il faut ajouter le haut et le bas), et pour les fichiers de model, il en faut un pour chaque nombre de connections, de 0 à 6 inclus.

                                            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB