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

    Résolu [1.10.2] Compatibilité de mod

    1.9.x et 1.10.x
    1.10.2
    3
    11
    529
    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.
    • Le Bourguignon
      Le Bourguignon dernière édition par

      Bonjour,
      J’ai créé un mod qui rajoute des blocs de deco. Je l’ai installer à mon serveur de modpack ( le mod dans le launcher et le source dans le serve ). Et là le problème arrive, je ne peux pas craft les blocks avec ae2 ou regarder les recettes avec NEI ou encore posait les blocks avec RFtools? Comment faire?

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

        Faut exécuter la commande gradlew build, prendre le .jar généré dans le dossier build/libs et tu mets ce .jar dans le dossier mods de ton serveur et de ton client.

        1 réponse Dernière réponse Répondre Citer 0
        • uiytt
          uiytt dernière édition par

          Pour JEI regarde ça : https://github.com/mezz/JustEnoughItems/wiki/Recipe-Categories

          Et peux tu nous passer ton code de ton block, recette, etc… car sinon dur de voir le problème 🤔

          Le Bourguignon 1 réponse Dernière réponse Répondre Citer 0
          • Le Bourguignon
            Le Bourguignon @uiytt dernière édition par

            @uiytt
            Class block:

            package fr.lebourguignon.bourguimod.block;
            
            import net.minecraft.block.material.Material;
            import net.minecraft.block.properties.IProperty;
            import net.minecraft.block.properties.PropertyEnum;
            import net.minecraft.block.state.BlockStateContainer;
            import net.minecraft.block.state.IBlockState;
            import net.minecraft.creativetab.CreativeTabs;
            import net.minecraft.init.Blocks;
            import net.minecraft.block.Block;
            import net.minecraft.item.Item;
            import net.minecraft.item.ItemStack;
            import net.minecraft.util.IStringSerializable;
            import scala.tools.ant.sabbus.Break;
            
            import java.util.List;
            
            public class UniformBlock extends Block
            {
                public static final String NAME = "uniform_block";
                
                public static final PropertyEnum<UniformBlock.EnumType> VARIANT = PropertyEnum.<UniformBlock.EnumType>create("variant", UniformBlock.EnumType.class);
                
                public UniformBlock(Material material)
                {
                    super(material);
                 
                    BourguiModBlocks.setBlockName(this, NAME);
                    setDefaultState(this.blockState.getBaseState().withProperty(VARIANT, UniformBlock.EnumType.FIRST));
            
                    setLightOpacity(255);
                    setLightLevel(1);
                    setResistance(5.0F);
                    setHardness(3.0F);
                    setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
                    setSoundType(blockSoundType.GLASS);
                }
            
                @Override
                public int damageDropped(IBlockState state)
                {
                    return state.getValue(VARIANT).getMetadata();
                }
             
                @Override
                public void getSubBlocks(Item itemIn, CreativeTabs tab, List <ItemStack> list)
                {
                    for (UniformBlock.EnumType type : UniformBlock.EnumType.values())
                    {
                        list.add(new ItemStack(itemIn, 1, type.getMetadata()));
                    }
                }
             
                @Override
                public IBlockState getStateFromMeta(int meta)
                {
                    return this.getDefaultState().withProperty(VARIANT, UniformBlock.EnumType.byMetadata(meta));
                }
             
                @Override
                public int getMetaFromState(IBlockState state)
                {
                    return ((UniformBlock.EnumType)state.getValue(VARIANT)).getMetadata();
                }
             
                @Override
                protected BlockStateContainer createBlockState()
                {
                    return new BlockStateContainer(this, new IProperty[] {VARIANT});
                }
             
                public static enum EnumType implements IStringSerializable
                {
                    FIRST(0, "uniform", "uniform_block_white"),
                    SECOND(1, "uniform2", "uniform_block_orange"),
                    THIRD(2,"uniform3", "uniform_block_magenta"),
                    FOURTH(3,"uniform4", "uniform_block_lightblue"),
                    FIFTH(4,"uniform5", "uniform_block_yellow"),
                    SIXTH(5,"uniform6", "uniform_block_lime"),
                    SEVENTH(6,"uniform7", "uniform_block_pink"),
                    EIGHTH(7,"uniform8", "uniform_block_gray"),
                    NINTH(8,"uniform9", "uniform_block_silver"),
                    TENTH(9,"uniform10", "uniform_block_cyan"),
                    ELEVENTH(10,"uniform11", "uniform_block_purple"),
                    TWELFTH(11,"uniform12", "uniform_block_blue"),
                    THIRTEENTH(12,"uniform13", "uniform_block_brown"),
                    FOURTEENTH(13,"uniform14", "uniform_block_green"),
                    FIFTEENTH(14,"uniform15", "uniform_block_red"),
                    SIXTEENTH(15,"uniform16", "uniform_block_black"),
                    ;
             
                    private static final UniformBlock.EnumType[] META_LOOKUP = new UniformBlock.EnumType[values().length];
                    private final int meta;
                    private final String name;
                    private final String unlocalizedName;
             
                    private EnumType(int metaIn, String nameIn, String unlocalizedIn)
                    {
                        this.meta = metaIn;
                        this.name = nameIn;
                        this.unlocalizedName = unlocalizedIn;
                    }
             
                    public static String[] getUnlocalizedNames()
                    {
                        String[] names = new String[values().length];
                        
                        for (int i = 0; i < META_LOOKUP.length; i++)
                            names[i] = META_LOOKUP[i].unlocalizedName;
                     
                        return names;
                    }
             
                    public int getMetadata()
                    {
                        return this.meta;
                    }
             
                    public static UniformBlock.EnumType byMetadata(int meta)
                    {
                        if (meta < 0 || meta >= META_LOOKUP.length)
                        {
                            meta = 0;
                        }
                     
                        return META_LOOKUP[meta];
                    }
             
                    public String toString()
                    {
                        return this.name;
                    }
             
                    @Override
                    public String getName()
                    {
                        return this.name;
                    }
                    static
                    {
                        for (UniformBlock.EnumType type : values())
                        {
                            META_LOOKUP[type.getMetadata()] = type;
                        }
                    }
                }
                
            }
            

            Recette:

            @SubscribeEvent
                public void registerRecipes(RegistryEvent.Register <Item> event) 
                {
                    for (int i =0; i < 16; i++)
                    {    
                        GameRegistry.addRecipe(new ItemStack(BourguiModItems.BLOCK_UNIFORM_BLOCK_ITEM, 4, 15-i), new Object[]{
                                "XYX",
                                "YZY",
                                "XYX",
                                'X', Blocks.STONE,'Y', Blocks.GLOWSTONE,'Z', new ItemStack(Items.DYE, 1, i)});
                    }
            
                    for (int i =0; i < 16; i++)
                    {
                        GameRegistry.addRecipe(new ItemStack(BourguiModItems.BLOCK_UNIFORM_BLOCK_ITEM, 8, 15-i), new Object[]{
                                "UUU",
                                "UDU",
                                "UUU",
                                'U', new ItemStack(BourguiModItems.BLOCK_UNIFORM_BLOCK_ITEM, 8, Short.MAX_VALUE),'D', new ItemStack(Items.DYE, 1, i)});
                    }
                }
            

            J’ai entendu parler d’api? Est-ce une bonne direction?

            1 réponse Dernière réponse Répondre Citer 0
            • uiytt
              uiytt dernière édition par

              pour que JEI trouve ta recette il faut que au lieu de faire .addRecipe tu fasse tu le register en tant que “ShapedRecipes”

              Le Bourguignon 2 réponses Dernière réponse Répondre Citer 0
              • Le Bourguignon
                Le Bourguignon @uiytt dernière édition par

                @uiytt Excuse moi de prendre autant de temps pour répondre j’avais pas mon pc sous la main mais Eclipse ne reconnait pas “ShapedRecipes”
                649673e7-e4da-47b6-976d-7a68c2ee3ce5-image.png

                1 réponse Dernière réponse Répondre Citer 0
                • Le Bourguignon
                  Le Bourguignon @uiytt dernière édition par

                  @uiytt ah non c’est pas plutôt .addShapedRecipe ? Car là, Eclipse le reconnais!

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

                    Bonsoir,
                    Les recettes ne sont pas censées être enregistrés dans cette event qui est là pour enregistrer des items (ils doivent être mis directement dans une fonction appelé lors d’init) mais je ne sais pas sûr que cela à quelque chose à voir avec ton problème.

                    Tu peux toujours essayer de les déplacer au bon endroit.

                    Le Bourguignon 1 réponse Dernière réponse Répondre Citer 0
                    • Le Bourguignon
                      Le Bourguignon @robin4002 dernière édition par

                      @robin4002 Voila j’ai tout refait correctement et il y a tjr le même problème… J’ai beau cherché dans les log je ne vois rien…
                      2019-08-10_15.26.27.png 2019-08-10_15.26.21.png
                      Je ne peux pas craft mes blocks

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

                        L’item est dans la table de craft mais tu ne peux pas le prendre ? Si oui c’est signe que le mod n’est pas installé sur le serveur.
                        Et ça n’a rien à voir avec un problème de compatabilité de mod …

                        Le Bourguignon 1 réponse Dernière réponse Répondre Citer 0
                        • Le Bourguignon
                          Le Bourguignon @robin4002 dernière édition par

                          @robin4002 tu peux me dire comment l’installer car ce que j ai fait ne fonctionne pas ( explique à partir du moment où j ai mon mode source et normal )

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

                            Faut exécuter la commande gradlew build, prendre le .jar généré dans le dossier build/libs et tu mets ce .jar dans le dossier mods de ton serveur et de ton client.

                            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