MFF

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

    Impossible de générer des minerais

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    6 Messages 3 Publieurs 1.1k 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.
    • F Hors-ligne
      francoKo
      dernière édition par

      Bonsoir à tous. J’ai un problème avec mon développement de mod en 1.8.8. Tout allait bien jusqu’au moment ou j’ai tenté de générer des minerais. Le bug est simple, les minerais ne se génèrent pas. Problématique, effectivement… Je vais vous montrer mes class. Et je précise aussi que je ne suis pas encore un boss dans la matière, même si je tente de me débrouiller ;).

      Class principale :

      http://pastebin.com/33z4wYfY

      Class WorldGen :

      http://pastebin.com/CqRp885A

      Class WorldRegister :

      http://pastebin.com/vBCKUmfy

      Voilà !
      Sinon, merci d’avance. Normalement, j’ai dû faire une orthographe correcte, ce que je trouve la moindre des politesses tout de même. Et désolé pour le sujet qui n’aura pas été très long et très développé, mais il est un peu tard et je pense avoir dit l’essentiel.

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

        Pourquoi enregistre-tu 3 fois ton worldGenerator ?
        (Vu le poids de génération que tu as mis je dirais que tu pense qu’il faut l’enregistrer pour chaque dimension)

        J’ai modifié ta classe WorldGen :

        
        public class WorldGeneration implements IWorldGenerator {
        
        @Override
        public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
        {
        switch(world.provider.getDimensionId())
        {
        case -1:
        GenerateNether(world, chunkX * 16, chunkZ * 16, random);
        break;
        
        case 0:
        GenerateOverWorld(world, chunkX * 16, chunkZ * 16, random);
        break;
        
        case 1:
        GenerateEnd(world, chunkX * 16, chunkZ * 16, random);
        break;
        
        }
        }
        
        private void addOre(Block block, Block blockSpawn, Random random, World world, int posX, int posZ, int minY, int maxY, int size, int spawnChance)
        {
        for(int i = 0; i < spawnChance; i++)
        {
        int defaultChunkSize = 16;
        int Xpos = posX + random.nextInt(defaultChunkSize);
        int Ypos = minY + random.nextInt(maxY - minY);
        int Zpos = posZ + random.nextInt(defaultChunkSize);
        
        IBlockState state = block.getDefaultState();
        BlockPos blockPos = new BlockPos(Xpos, Ypos, Zpos);
        
        new WorldGenMinable(state, size, BlockHelper.forBlock(blockSpawn)).generate(world, random, blockPos);
        }
        }
        
        private void GenerateNether(World world, int i, int j, Random random)
        {
        
        }
        
        private void GenerateOverWorld(World world, int i, int j, Random random)
        {
        addOre(Blocks.glass, Blocks.stone , random, world, i, j, 20, 100, 8, 500);
        }
        
        private void GenerateEnd(World world, int i, int j, Random random)
        {
        addOre(Blocks.glass, Blocks.netherrack , random, world, i, j, 20, 100, 8, 60);
        }
        
        

        J’ai changé chunkX = 16 en chunkX * 16, j’ai enlevé l’argument minV car il était inutile et j’ai aussi rajouté BlockHelper.forBlock(…) dans les argument de new WorldGenMinable pour que ça remplace le bon bloc. Voilà

        Et moi ça marche :
        :::

        :::

        Par contre j’ai pas d’image pour la seconde génération car tu remplace de la netherrack dans l’end mais il n’y en a pas, donc bon …

        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

          Le problème étant que tu n’appelles jamais la fonction MainRegistry qui se trouve dans WorldRegisterSmy.
          Et d’ailleurs en effet pourquoi l’avoir mit 3 fois ? l’int n’est pas l’id de la dimension, c’est le poids du générateur.

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

            Bonsoir, déjà merci de vos réponses. Effectivement, je pensais qu’il fallait mettre 3 fois l’int justement car je pensais que c’était comme l’id. Donc, j’ai tenté de mettre ton code modifié BrokenSwing, pourtant rien n’y fait. Ensuite, comment appeler cette fonction ? Désolé de ma noobitude mais je préfère quand même démarrer et apprendre à coder avec éclipse plutôt qu’avec MC Creator 😉 !

            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

              Dans la classe principale tu ajoutes WorldRegisterSmy.MainRegistry(); comme tu l’as fait pour tes items. C’est la base de Java appeler une fonction …

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

                Haaan ! Ca marche ! Merci 1 000 fois et 10 000 excuses pour ma nullité han ❤ !

                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