MFF

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

    La hauteur du puit d'un village

    Planifier Épinglé Verrouillé Déplacé Résolu 1.11.x
    1.11.x
    12 Messages 4 Publieurs 2.5k 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.
    • A Hors-ligne
      aypristyle
      dernière édition par

      La hauteur d’un puit que tu sélectionne d’une quelconque manière ou la hauteur du puit le plus proche du joueur ?

      **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

        @‘aypristyle’:

        La hauteur d’un puit que tu sélectionne d’une quelconque manière ou la hauteur du puit le plus proche du joueur ?

        En fait, ma fonction est éxécutée à chaque création d’un nouveau village, je détecte où est le puit (avec le point start qui est sur un bloc du puit), et j’aimerai ensuite l’embellir en quelque sorte. Ca marche bien mais la valeur Y du start (ou directement du puit en prenant List<structurecomponent>[0]) est toujours à 64 et ne dépend pas de la hauteur réelle du puit</structurecomponent>

        Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

          Tu as essaye d’ajouter une fonction qui détecte combien il y a de blocs d’air en dessous de ton point start et te retourne cette valeur ?

          **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

            @‘aypristyle’:

            Tu as essaye d’ajouter une fonction qui détecte combien il y a de blocs d’air en dessous de ton point start et te retourne cette valeur ?

            Je vois pas trop comment faire ça sans avoir accès à World, dans ce cas ça revient à faire :
            int y = worldIn.getHeight(sbbIn.minX, sbbIn.minZ) ;

            Ce que je recherche avant tout c’est comprendre comment minecraft spawn le puit à la bonne hauteur en ayant comme Y 64 (alors que le Y réel est différent), que je puisse faire la même chose !

            Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

              Ceci est un extrait des sources minecraft sur les puits ça pourrait t’intéresser

                public static class Well extends StructureVillagePieces.Village
                      {
                          public Well()
                          {
                          }
              
                          public Well(StructureVillagePieces.Start start, int type, Random rand, int x, int z)
                          {
                              super(start, type);
                              this.setCoordBaseMode(EnumFacing.Plane.HORIZONTAL.random(rand));
              
                              if (this.getCoordBaseMode().getAxis() == EnumFacing.Axis.Z)
                              {
                                  this.boundingBox = new StructureBoundingBox(x, 64, z, x + 6 - 1, 78, z + 6 - 1);
                              }
                              else
                              {
                                  this.boundingBox = new StructureBoundingBox(x, 64, z, x + 6 - 1, 78, z + 6 - 1);
                              }
                          }
              

              **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

                @‘aypristyle’:

                Ceci est un extrait des sources minecraft sur les puits ça pourrait t’intéresser

                  public static class Well extends StructureVillagePieces.Village
                        {
                            public Well()
                            {
                            }
                
                            public Well(StructureVillagePieces.Start start, int type, Random rand, int x, int z)
                            {
                                super(start, type);
                                this.setCoordBaseMode(EnumFacing.Plane.HORIZONTAL.random(rand));
                
                                if (this.getCoordBaseMode().getAxis() == EnumFacing.Axis.Z)
                                {
                                    this.boundingBox = new StructureBoundingBox(x, 64, z, x + 6 - 1, 78, z + 6 - 1);
                                }
                                else
                                {
                                    this.boundingBox = new StructureBoundingBox(x, 64, z, x + 6 - 1, 78, z + 6 - 1);
                                }
                            }
                

                Oui c’est ce que j’utilise actuellement, justemment je comprends pas comment en déclarant une boundingbox avec y = 64 à 78, le puit spawn au sol, que le y soit supérieur ou inférieur

                Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

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

                  Alors c’est ce code ```java
                                 if (this.field_143015_k < 0)
                                 {
                                     this.field_143015_k = this.getAverageGroundLevel(p_74875_1_, p_74875_3_);

                  if (this.field_143015_k < 0)
                                     {
                                         return true;
                                     }

                  this.boundingBox.offset(0, this.field_143015_k - this.boundingBox.maxY + 3, 0);
                                 }

                  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
                  • DylemD Hors-ligne
                    Dylem
                    dernière édition par

                    @‘AymericRed’:

                    Alors c’est ce code ```java
                                   if (this.field_143015_k < 0)
                                   {
                                       this.field_143015_k = this.getAverageGroundLevel(p_74875_1_, p_74875_3_);

                    if (this.field_143015_k < 0)
                                       {
                                           return true;
                                       }

                    this.boundingBox.offset(0, this.field_143015_k - this.boundingBox.maxY + 3, 0);
                                   }

                    niquel merci, j’ai du passer à côté 🙂
                    C’est ce que je cherchais

                    Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

                    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

                      Cette discussion concernait quelle version de minecraft ?

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

                        @‘robin4002’:

                        Cette discussion concernait quelle version de minecraft ?

                        Mon minecraft tournait en 1.11 lorsque je l’ai posée, mais je pense qu’elle concerne toutes les versions.

                        Si je t'ai aidé, n'hésite pas à cliquer sur le nombre vert en dessous de mon image de profil, pour me le faire savoir. Ca me motive pour continuer …

                        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 code pouvant être différent dans les anciennes versions je préfère déplacer ici.

                          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