MFF

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

    Hammer

    Planifier Épinglé Verrouillé Déplacé Non résolu Sans suite
    1.14.3
    21 Messages 4 Publieurs 1.7k Vues 2 Abonné
    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.
    • DailyCraftD Hors-ligne
      DailyCraft
      dernière édition par

      Beuh

      Mes créations :

      Mod en cours de développement : Personal Robot (1.15.2)

      Datapacks : DailyCraft's Craft (beta)

      Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

        Déjà tu peux tenter de reprendre quelque chose qui marche en 1.12 et tu nous dit ce qui ne pose problème

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

          Après avoir repris un code en 1.12, voila les erreurs : EntityLivingBase, getPositionEyes (ligne 3), getLook (ligne 4), addVector (ligne 5), typeOfHit (ligne 16), EnumFacing, sideHit (ligne 21) et setBlockToAir (ligne 73)

          Et voila le code ou il y a les erreurs pour que vous sachiez ou elle se trouve :

              public RayTraceResult rayTrace(double blockReachDistance, float partialTicks, World w, EntityLivingBase e)
              {
                  Vec3d vec3d = e.getPositionEyes(partialTicks);
                  Vec3d vec3d1 = e.getLook(partialTicks);
                  Vec3d vec3d2 = vec3d.addVector(vec3d1.x * blockReachDistance, vec3d1.y * blockReachDistance, vec3d1.z * blockReachDistance);
                  return w.rayTraceBlocks(vec3d, vec3d2, false, false, true);
              }
          
              @Override
              public boolean onBlockDestroyed(ItemStack breaker, World w, BlockState state, BlockPos pos, EntityLivingBase e)
              {
                  if (e instanceof PlayerEntity && !w.isRemote)
                  {
                      PlayerEntity p = (PlayerEntity) e;
                      RayTraceResult r = this.rayTrace(5.0D, 0.0F, w, e);
                      if (r.typeOfHit == RayTraceResult.Type.BLOCK)
                      {
                          int x = pos.getX();
                          int y = pos.getY();
                          int z = pos.getZ();
                          EnumFacing side = r.sideHit;
                          // Y
                          // UP - DOWN
                          if (side == EnumFacing.DOWN || side == EnumFacing.UP)
                          {
                              this.destroyAndDropBlock(w, p, breaker, x + 1, y, z - 1);
                              this.destroyAndDropBlock(w, p, breaker, x + 1, y, z);
                              this.destroyAndDropBlock(w, p, breaker, x + 1, y, z + 1);
                              this.destroyAndDropBlock(w, p, breaker, x, y, z - 1);
                              // Middle block
                              this.destroyAndDropBlock(w, p, breaker, x, y, z + 1);
                              this.destroyAndDropBlock(w, p, breaker, x - 1, y, z - 1);
                              this.destroyAndDropBlock(w, p, breaker, x - 1, y, z);
                              this.destroyAndDropBlock(w, p, breaker, x - 1, y, z + 1);
                          }
                          // Z
                          // NORTH - SOUTH
                          else if (side == EnumFacing.NORTH || side == EnumFacing.SOUTH)
                          {
                              this.destroyAndDropBlock(w, p, breaker, x + 1, y + 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x, y + 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x - 1, y + 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x + 1, y, z);
                              // Middle block
                              this.destroyAndDropBlock(w, p, breaker, x - 1, y, z);
                              this.destroyAndDropBlock(w, p, breaker, x + 1, y - 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x, y - 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x - 1, y - 1, z);
                          }
                          // X
                          // EAST - WEST
                          else if (side == EnumFacing.EAST || side == EnumFacing.WEST)
                          {
                              this.destroyAndDropBlock(w, p, breaker, x, y + 1, z + 1);
                              this.destroyAndDropBlock(w, p, breaker, x, y + 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x, y + 1, z - 1);
                              this.destroyAndDropBlock(w, p, breaker, x, y, z + 1);
                              // Middle block
                              this.destroyAndDropBlock(w, p, breaker, x, y, z - 1);
                              this.destroyAndDropBlock(w, p, breaker, x, y - 1, z + 1);
                              this.destroyAndDropBlock(w, p, breaker, x, y - 1, z);
                              this.destroyAndDropBlock(w, p, breaker, x, y - 1, z - 1);
                          }
                          return true;
                      }
                  }
                  return super.onBlockDestroyed(breaker, w, state, pos, e);
              }
              private void destroyAndDropBlock(World w, PlayerEntity p, ItemStack breaker, int x, int y, int z)
              {
                  BlockPos pos = new BlockPos(x, y, z);
                  w.getBlockState(pos).getBlock().harvestBlock(w, p, pos, w.getBlockState(pos), w.getTileEntity(pos), breaker);
                  w.setBlockToAir(pos);
              }
          

          Mes créations :

          Mod en cours de développement : Personal Robot (1.15.2)

          Datapacks : DailyCraft's Craft (beta)

          Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

            Je viens de resoudre EntityLivingBase en LivingEntity, EnumFacing en Direction, getPositionEyes en getEyePosition, setBlockToAir en isAirBlock, addVector en add, typeOfHit en getType(), getLook n’est plus détecté en tant qu’erreur

            Pouvez-vous dire si j’ai fais de bonne traduction

            J’avais oublié mais w.rayTraceBlocks ne demande que un argument pas cinq

            Mes créations :

            Mod en cours de développement : Personal Robot (1.15.2)

            Datapacks : DailyCraft's Craft (beta)

            Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

              Alors quelqu’un peut m’aider ?

              Mes créations :

              Mod en cours de développement : Personal Robot (1.15.2)

              Datapacks : DailyCraft's Craft (beta)

              Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

                isAirBlock est pas bon (cette fonction permet de savoir si le block c’est de l’aire alors que toi tu veux remplacer le block par de l’aire) (C’est peut-être setAir la méthode que tu veux). Sur rayTraceBlocks c’est quoi l’erreur exacte que tu as ?

                DailyCraftD 1 réponse Dernière réponse Répondre Citer 0
                • DailyCraftD Hors-ligne
                  DailyCraft @LeBossMax2
                  dernière édition par DailyCraft

                  oui mais quand je marque air ça me propose que ça, donc pas de setAir et pour RayTraceBlocks, il nous demande un RayTraceContext donc j’ai fais new RayTraceContext() et là il me demande un Vec3d, Vec3d, BlockMode, FluidMode, Entity donc j’ai mis :

                  return w.rayTraceBlocks(new RayTraceContext(vec3d, vec3d2, RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.NONE, e));
                  

                  PS : il reste encore sideHit comme erreur

                  Mes créations :

                  Mod en cours de développement : Personal Robot (1.15.2)

                  Datapacks : DailyCraft's Craft (beta)

                  Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

                    sideHit a peut-être été remplacé par un getter ou par autre nom. Pour setBlockToAir, c’est paut-être quelque chose comme removeBlock

                    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

                      Faut simplement faire un setBlockState avec Blocks.AIR.getDefaultState()

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

                        Ah ok merci de ses réponses mais c’est quoi un guetter (oui je vais paraitre con)

                        Mes créations :

                        Mod en cours de développement : Personal Robot (1.15.2)

                        Datapacks : DailyCraft's Craft (beta)

                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

                          up ?

                          Mes créations :

                          Mod en cours de développement : Personal Robot (1.15.2)

                          Datapacks : DailyCraft's Craft (beta)

                          Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                          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

                            Un getter c’est une fonction qui renvoies la valeur d’une variable.

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

                              Ok mais même en cherchant un getter ou un autre nom, je n’arrive pas à trouver ce qu’il faut mettre 😢

                              Mes créations :

                              Mod en cours de développement : Personal Robot (1.15.2)

                              Datapacks : DailyCraft's Craft (beta)

                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

                              MINECRAFT FORGE FRANCE © 2024

                              Powered by NodeBB