MFF

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

    Les choses étranges du code de Minecraft

    Planifier Épinglé Verrouillé Déplacé Le salon libre
    74 Messages 21 Publieurs 2.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.
    • DiabolicaTrixD Hors-ligne
      DiabolicaTrix Correcteurs Moddeurs confirmés
      dernière édition par

      Ah, bon à savoir, il faut utiliser le premier

      1 réponse Dernière réponse Répondre Citer 0
      • jglrxavpokJ Hors-ligne
        jglrxavpok Modérateurs
        dernière édition par

        Pas forcément! MathHelper utilise ce qu’on appelle une “lookup table” et une interpolation (de mémoire, je n’ai pas le code sous les yeux) pour avoir les résultats plus rapidement, ça permet d’éviter de faire le calcul à chaque appel de cos.

        Modérateur sur MFF. 
        Mon Github: http://github.com/jglrxavpok
        Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

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

          Oui mais en attendant cette méthode fait perdre de la précision et mange de la mémoire : donc je sais pas si la gain est si important que çà au niveau des performances.

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

            net.minecraft.item.Item$ToolMaterial :

            WOOD(0, 59, 2.0F, 0.0F, 15),
            STONE(1, 131, 4.0F, 1.0F, 5),
            IRON(2, 250, 6.0F, 2.0F, 14),
            EMERALD(3, 1561, 8.0F, 3.0F, 10),
            GOLD(0, 32, 12.0F, 0.0F, 22);
            /** The level of material this tool can harvest (3 = DIAMOND, 2 = IRON, 1 = STONE, 0 = WOOD/GOLD) */
            private final int harvestLevel;
            

            Diamant ou émeraude? >.<’

            Mes mods :

            • Cookie Ore (1.7.10)

            Mod en cours : **E…

            1 réponse Dernière réponse Répondre Citer 0
            • elias54E Hors-ligne
              elias54 Administrateurs
              dernière édition par

              Emerald est bien Diamond. Le nom du field n’a juste pas changé, en fait.

              Mon site | GitHub

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

                @‘elias54’:

                Emerald est bien Diamond. Le nom du field n’a juste pas changé, en fait.

                Oui il me semble qu’en 1.9 Nathan avait parlé du fait qu’il avais enfin remplacer tout les EMERALD par diamond ^^

                Oui ce gif est drôle.

                1 réponse Dernière réponse Répondre Citer 0
                • jglrxavpokJ Hors-ligne
                  jglrxavpok Modérateurs
                  dernière édition par

                  Oui sauf que là ça vient de MinecraftForge qui n’a pas changé ses mappings.

                  Modérateur sur MFF. 
                  Mon Github: http://github.com/jglrxavpok
                  Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

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

                    @‘jglrxavpok’:

                    Oui sauf que là ça vient de MinecraftForge qui n’a pas changé ses mappings.

                    Mauvais MF ! ;o

                    Oui ce gif est drôle.

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

                      La classe BlockVine a attiré mon attention.
                      Pourquoi elle n’utilise pas un EnumFacing comme les autre classes qui nécessite un placement particulier ? A la place, elle utilise une série de PropertyBool 😮

                      –------------------------------------------------------------------------------------
                      Si tu trouves mon intervention pertinente, n'hésite pas a m…

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

                        Il me semble que c’est parce que les vignes peuvent êtres présentes sur plusieurs faces

                        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
                        • RedRelayR Hors-ligne
                          RedRelay Moddeurs confirmés
                          dernière édition par

                          J’ai trouvé. C’est parce qu’une vigne peut être soutenue soit par la vigne du dessus, soit par le bloc sur lequel elle est apposée 😉

                          –------------------------------------------------------------------------------------
                          Si tu trouves mon intervention pertinente, n'hésite pas a m…

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

                            @‘Blackout’:

                            une vigne peut être soutenue par la vigne du dessus

                            Ce qui est bizarre en soit puisque les blocs de Minecraft ne sont pas soumis à la gravité…

                            Moddeur à la retraite et développeur de trucs en Java.

                            J'aide les gens comme je peux, alors si mon message v…

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

                              Je vais plutôt parler du code Forge cette fois :

                              L’event ChunkDataEvent.Load est propagé lorsque les données NBT d’un Chunk sont chargé.
                              L’event ChunkDataEvent.Save est propagé lorsque les données NBT d’un Chunk sont sauvegardée.

                              L’event ChunkEvent.Load est propagé lorsqu’un Chunk est chargé
                              L’event ChunkEvent.Unload est propagé lorsqu’un Chunk est déchargé.

                              ChunkDataEvent.Load est propagé AVANT ChunkEvent.Load.
                              Donc dans mon handler de ChunkDataEvent.Load, je charge les données, mais j’en fais quoi ??!
                              Puis qu’imaginons que le Chunk ne soit finalement pas chargé, je n’ai aucun moyen de le savoir.
                              ChunkEvent.Load ne va pas être propagé, et ChunkEvent.Unload non plus.

                              Je pense faire un point sur le forum officiel de Forge. Si toutefois vous avez des explications, je prends ! 😄

                              –------------------------------------------------------------------------------------
                              Si tu trouves mon intervention pertinente, n'hésite pas a m…

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

                                Dans le BlockPortal :

                                
                                for (blockpos1 = pos; !World.doesBlockHaveSolidTopSurface(worldIn, blockpos1) && blockpos1.getY() > 0; blockpos1 = blockpos1.down())
                                {
                                ;
                                }
                                
                                

                                Ça aurait pas été mieux une boucle while ?

                                1 réponse Dernière réponse Répondre Citer 0
                                • jglrxavpokJ Hors-ligne
                                  jglrxavpok Modérateurs
                                  dernière édition par

                                  Une boucle for pour ça est valide.

                                  En passant c’était surement une boucle while au début et Fernflower a du mal décompiler, c’est possible.

                                  Modérateur sur MFF. 
                                  Mon Github: http://github.com/jglrxavpok
                                  Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

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

                                    Mojang fait des API pour ensuite faire des conditions uniques dans les classes mères, voici un exemple pour le rendu du beacon, de la table d’enchantement et du coffre :
                                    (TileEntity:399)

                                    
                                    @SideOnly(Side.CLIENT)
                                    public AxisAlignedBB getRenderBoundingBox()
                                    {
                                    AxisAlignedBB bb = INFINITE_EXTENT_AABB; // On prend un truc infini pour le beacon (la condition est plus bas)
                                    Block type = getBlockType();
                                    if (type == Blocks.enchanting_table) // Si c'est une table d'enchant
                                    {
                                    bb = AxisAlignedBB.getBoundingBox(xCoord, yCoord, zCoord, xCoord + 1, yCoord + 1, zCoord + 1);
                                    }
                                    else if (type == Blocks.chest || type == Blocks.trapped_chest) // Si c'est un coffre
                                    {
                                    bb = AxisAlignedBB.getBoundingBox(xCoord - 1, yCoord, zCoord - 1, xCoord + 2, yCoord + 2, zCoord + 2);
                                    }
                                    else if (type != null && type != Blocks.beacon) // Si le bloc n'est pas null et que ce n'est pas un beacon
                                    {
                                    AxisAlignedBB cbb = type.getCollisionBoundingBoxFromPool(worldObj, xCoord, yCoord, zCoord); // On prend la boîte de collision
                                    if (cbb != null)
                                    {
                                    bb = cbb;
                                    }
                                    }
                                    return bb;
                                    }
                                    
                                    

                                    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
                                    • robin4002R Hors-ligne
                                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                      dernière édition par

                                      Du-coup comme dit dans la shoutbox c’est Forge qui ajoute ça et non Mojang et Forge fait ça pour éviter d’avoir trop de patch.

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

                                        A moi a moi, je ne ses pas si c’est forge ou minecraft mais dans le code de l’endercrystal:

                                        
                                        public boolean attackEntityFrom(DamageSource p_70097_1_, float p_70097_2_)
                                           {
                                               if (this.isEntityInvulnerable())
                                               {
                                                   return false;
                                               }
                                               else
                                               {
                                                   if (!this.isDead && !this.worldObj.isRemote)
                                                   {
                                                       this.health = 0;
                                        
                                                       if (this.health <= 0)
                                                       {
                                                           this.setDead();
                                        
                                                           if (!this.worldObj.isRemote)
                                                           {
                                                               this.worldObj.createExplosion((Entity)null, this.posX, this.posY, this.posZ, 6.0F, true);
                                                           }
                                                       }
                                                   }
                                        
                                                   return true;
                                               }
                                           }
                                        
                                        
                                        1 réponse Dernière réponse Répondre Citer 0
                                        • Superloup10S Hors-ligne
                                          Superloup10 Modérateurs
                                          dernière édition par

                                          Je vois aucun problème dans le code que tu as donné.

                                          Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                                          Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points 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

                                            Mettre la vie a 0 puis check si elle est inférieur ou égal à 0. Normal.

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB