MFF

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

    Problème onBlockDestroyed

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    19 Messages 5 Publieurs 4.6k 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      up -> y + 1
      down -> y - 1
      south -> x + 1
      north -> x - 1
      est -> z + 1
      west -> z - 1
      (de tête, pas sûr).

      1 réponse Dernière réponse Répondre Citer 0
      • 2 Hors-ligne
        20cents34
        dernière édition par

        J’ai essayé le code de Robin4002 mais j’ai une erreur sur

        this.dropBlockAsItem(world, x, y - 1, z, new ItemStack(Item.getItemFromBlock(b), 1, meta));
        

        Eclipse me dis que dropBlockAsItem est indéfinie pour ma classe.
        Et Eclipse ne trouve pas non plus player ici

        this.cutWood(world, x, y, z, player.inventory.getCurrentItem(), player);
        
        
        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

          ​
          private void dropBlockAsItem(World world, int x, int y, int z, ItemStack stack)
          {
          if(!world.isRemote && world.getGameRules().getGameRuleBooleanValue("doTileDrops"))
          {
          float f = 0.7F;
          double d0 = world.rand.nextFloat() * f + (1.0F - f) * 0.5D;
          double d1 = world.rand.nextFloat() * f + (1.0F - f) * 0.5D;
          double d2 = world.rand.nextFloat() * f + (1.0F - f) * 0.5D;
          EntityItem entityitem = new EntityItem(world, x + d0, y + d1, z + d2, stack);
          entityitem.delayBeforeCanPickup = 10;
          world.spawnEntityInWorld(entityitem);
          }
          }
          

          Il manquant cette fonction.

          1 réponse Dernière réponse Répondre Citer 0
          • 2 Hors-ligne
            20cents34
            dernière édition par

            Merci mais j’ai toujours le problème du player. En gros il me le trouve pas et me propose de créer une variable.

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

              Ajoutes cette variable dans ta méthode
              EntityPlayer entityplayer = (EntityPlayer)player;

              1 réponse Dernière réponse Répondre Citer 0
              • 2 Hors-ligne
                20cents34
                dernière édition par

                J’ai une erreur sur le cast : (EntityPlayer)player et onBlockDestroyed me demande un return non présent dans le code de robin4002.

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

                  @‘20cents34’:

                  Merci, tu supposais bien c’était mon intention 🙂 Sinon l’équivalent de BlockPos en 1.7.10 est x,y,z mais je vois pas trop comment faire pour adapter ton code . Surtout les fonctions pos.south() etc… A moins que pos.up() ) soit égale à y+1 , pos.down() à y -1 mais alors je vois pas se que peut représenter pos.north() et pos.south(). Bref si tu as une idée donne la moi sinon je mettrais mon mod à jour. Et encore merci pour le code.

                  BlockPos est une classe qui existait déjà avant la 1.8, il te suffit donc de faire BlockPos pos = new BlockPos(x,y,z); et le reste sera adapté, dont le pos.south() etc.

                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                  Pas de demandes de support par MP ni par skype SVP.
                  Je n'accepte sur skype que l…

                  1 réponse Dernière réponse Répondre Citer 0
                  • 2 Hors-ligne
                    20cents34
                    dernière édition par

                    Euh non eclipse le trouve nul part et je suis en 1.7.10

                    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

                      @‘20cents34’:

                      J’ai une erreur sur le cast :  (EntityPlayer)player et onBlockDestroyed me demande un return non présent dans le code de robin4002.

                      C’est de ma faute, j’ai édité mon message, maintenant ça devrait être bon.

                      @‘SCAREX’:

                      BlockPos est une classe qui existait déjà avant la 1.8, il te suffit donc de faire BlockPos pos = new BlockPos(x,y,z); et le reste sera adapté, dont le pos.south() etc.

                      Non, elle n’existe pas en 1.7.10

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

                        @‘robin4002’:

                        @‘20cents34’:

                        J’ai une erreur sur le cast :  (EntityPlayer)player et onBlockDestroyed me demande un return non présent dans le code de robin4002.

                        C’est de ma faute, j’ai édité mon message, maintenant ça devrait être bon.

                        @‘SCAREX’:

                        BlockPos est une classe qui existait déjà avant la 1.8, il te suffit donc de faire BlockPos pos = new BlockPos(x,y,z); et le reste sera adapté, dont le pos.south() etc.

                        Non, elle n’existe pas en 1.7.10

                        Effectivement mais le principe est le même que ce que robin disait, tu fait x + 1 (east) puis x - 1 (west) puis z + 1 (south) puis z - 1 (north) puis y + 1 (up) (puis y - 1 (down) si tu veux aller vers le bas)

                        Je peux vite fait adapter le code si tu veux pour la 1.7 ?

                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                        Pas de demandes de support par MP ni par skype SVP.
                        Je n'accepte sur skype que l…

                        1 réponse Dernière réponse Répondre Citer 0
                        • 2 Hors-ligne
                          20cents34
                          dernière édition par

                          Merci a tous et surtout à robin4002 ça marche parfaitement maintenant  🙂

                          Ça ira merci SCAREX j’utiliserai ton code quand je passerai en 1.8.

                          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