MFF

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

    Probleme résolu + explication a bush à XP

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    118 Messages 5 Publieurs 16.3k 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.
    • YukiShuY Hors-ligne
      YukiShu
      dernière édition par

      oki je suis en train de regarder le tuto de robin 😉
      Mais j’aurais surment besoin d’aide pour laisser l’acces au clic droit + l’action

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

        ça y est je viens de fini j’ai mon block avec mes 4 metadata !

        Maintenant je doit faire quoi pour lui dire que tout les “X” tick le block change de metadata ?
        Et ensuite pour lui dire que a la 4 eme metadata on peux faire un clic droit dessus( ET PAS AVANT !) pour recuperer un item ?
        Et ensuite dire au block de repartir a la metadata numero 1 ?

        Merci de votre aides !

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

          Malheureusement les blocks ne sont pas tickés, ils peuvent seulement êtres tickés de façon aléatoire, donc tu as 2 options :

          • faire ticker ton block de façon aléatoire
          • lui ajouter une TileEntity qui elle peut être tickée

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

            Si je le fait ticker de façon aléatoire le lapse de temps est compris entre combien de tick ? y’a forcement une valeur butée je me trompe ?

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

              Alors en fait c’est plus compliqué (j’avais oublié) : je crois que tu dois indiqué dans ton constructeur que ton block doit être tické de façon aléatoire, ensuite tu dois ré-écrire les fonctions tickRate qui indique le nombre de ticks entre chaque mise à jour et updateTick qui sera appelée lors de la mise à jour, mais tu dois aussi rajouter dans la fonction updateTick la fonction World.scheduleBlockUpdate(x, y, z, block, tickRate) pour mettre à jour ton block dans le futur (de façon non-aléatoire)

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

                Bon autant dire que c’est impossible a mon niveau……___quelqu’un pour reelement m’aider ? Je suis débutant j’ai besoin de savoir quoi mettre ou.

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

                  Si toujours personne demain, je te montre.
                  Et sinon pour faire que le clic droit ne soit que quand tu as plus de 4 en méta, tu dois récrire la fonction onBlockActivated dans ton block et faire if(world.getBlockMetadata(X, y, z) >= 4) puis faire drop ce que tu veux.

                  Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk

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

                    oui ça je savais mais c’est pour dire au block de tout les “X” temps de changer de metadata 🙂

                    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

                      Toutes les plantes de Minecraft utilise le tick aléatoire.

                      Dans le constructeur du bloc il faut ajouter :
                      this.setTickRandomly(true);
                      Ensuite il faut utiliser la fonction suivante :

                      public void updateTick(World world, int x, int y, int z, Random rand)
                      {
                      
                      }
                      

                      Dans ton cas il suffit de faire un world.setBlock(x, y, z, this, world.getBlockMetadata(x, y, z) + 1, 3);

                      Tu peux utiliser la fonction :

                      public int tickRate(World world)
                      {
                      return 10; // nombre à changer ici
                      }
                      

                      pour influencer la fréquence du tick.

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

                        Merci beaucoup Robin !
                        Et maintenant pour dire que quand le block et a la metadata 4 que je peux faire un clic droit ?

                        EDIT: je me rend compte d’une chose : la meta data 4 passe a 1 alors que j’aimerais qu’elle repasse a 1 que lorsque je fait un clic droit dessus

                        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 fonction onBlockActivated il suffit de faire une condition if(world.getBlockMetadata(x, y, z) >= 4)

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

                            oui ça je le sais mais le fait que la metadata passe de 4 a 1 sans que je clic. Mon but est de faire un bush et si on peux recolter que a la 4eme metadata on perd du farm.

                            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

                              Tu es sur que ça repasse à un 1 et non que ça passe à 5 puis 6 etc …
                              Ajoutes :
                              if(world.getBlockMetadata(x, y, z) < 4)
                              avant :
                              world.setBlock(x, y, z, this, world.getBlockMetadata(x, y, z) + 1, 3);

                              dans la fonction updateTick

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

                                Je vais voir si sa reste a 4 désormais.
                                Je le savais pck la texture de ma 4 eme metadata est diferente des 3 autre présedente 😉
                                Et je n’en est mis que 4

                                EDIT : la metadata change encore

                                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

                                  Envoies ton code actuelle.

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

                                    Voila voila 😄

                                    package fr.xperiaonline.xperiamod.common;
                                    
                                    import java.util.List;
                                    import java.util.Random;
                                    
                                    import javax.swing.Icon;
                                    
                                    import cpw.mods.fml.relauncher.Side;
                                    import cpw.mods.fml.relauncher.SideOnly;
                                    import net.minecraft.block.Block;
                                    import net.minecraft.block.material.Material;
                                    import net.minecraft.client.renderer.texture.IIconRegister;
                                    import net.minecraft.creativetab.CreativeTabs;
                                    import net.minecraft.item.Item;
                                    import net.minecraft.item.ItemStack;
                                    import net.minecraft.util.IIcon;
                                    import net.minecraft.world.World;
                                    
                                    public class BlockModBush extends Block
                                    {
                                       public static String[] subBlock = new String[]{"block1", "block2"};
                                       public IIcon[] iconArray = new IIcon[subBlock.length];
                                       protected BlockModBush()
                                    
                                       {
                                    super(Material.rock);
                                    this.setTickRandomly(true);
                                       }
                                       public void updateTick(World world, int x, int y, int z, Random rand)
                                       {
                                    if(world.getBlockMetadata(x, y, z) < 2)
                                    world.setBlock(x, y, z, this, world.getBlockMetadata(x, y, z) + 1, 1);
                                       }
                                       public int tickRate(World world)
                                       {
                                           return 1; // nombre à changer ici
                                       }
                                    
                                       public int damageDropped(int metadata)
                                       {
                                    return metadata;
                                       }
                                    
                                       public void getSubBlocks(Item item, CreativeTabs tabs, List list)
                                       {
                                    for(int i = 0; i < subBlock.length; i++)
                                    {
                                       list.add(new ItemStack(item, 1, i));
                                    }
                                    
                                       }
                                       public void registerBlockIcons(IIconRegister iconRegister)
                                       {
                                    for(int i = 0; i < subBlock.length; i++)
                                    {
                                           this.iconArray* = iconRegister.registerIcon("xperiamod:"+ subBlock*);
                                           }
                                       }
                                    
                                       public IIcon getIcon(int side, int metadata)
                                       {
                                    if(metadata >= 0 && metadata < subBlock.length)
                                    {
                                       return this.iconArray[metadata];
                                    }
                                    return this.iconArray[0];
                                       }
                                    
                                    }
                                    
                                    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

                                      étrange, il n’y a pas de raison pour que le metadata passe au dessus de 3 …

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

                                        Non mais elle reste entre 1 et 2 sauf que elle repasse de 2 a 1… j’aimerais que ça ne se fasse pas. Et que ça se fasse seulement quand on fait un clic droit.

                                        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

                                          ça ne devrait le faire non plus, c’est ça qui est étrange.

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

                                            Pourtant j’ai suivie ton code parfaitement…

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB