MFF

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

    Scanner les blocks allentour

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    44 Messages 4 Publieurs 8.7k 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.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      this.setTickRandomly(true); dans le constructeur pour indiquer que le jeu doit ticker ton block.
      Et ensuite ré-écris la fonction updateTick et rajoute ce que tu veux dedans, mais évite de l’appeler tous les ticks si possible.

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

        public void updateTick(World p_149674_1_, int p_149674_2_, int p_149674_3_, int p_149674_4_, Random p_149674_5_){
        }
        

        es-que sa équivaut a sa ?

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

        Avec world , x , y , z pour la position de mon bloc ?

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

          Ve sont des noms de variables, tu peux mettre tout ce que tu veux. Mais c’est mieux de respecter la convention java.

          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

            On pourrait même mettre :
            public void updateTick(World world, int robinEstUnAdminTresPuissant, int ScarexCodeTresBien, int albanninouAEncoreBesoinDaide, Random rand){
            ça serait la même chose.
            Bon en général on met plutôt des noms de variable qui vont avec la situation.

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

              la question est pas si je peut les renommer mais si elle correspond bien a sa (si c’est bien les coordonnés de mon block)

              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

                Oui c’est ça. En général quand tu as world et 3 int après c’est toujours world, x, y, z

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

                  et le rand c’est quoi ?

                  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

                    Une instance de Random.

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

                      Du coup j’ai fait sa :

                      public void updateTick(World world, int x, int y, int z, Random rand){
                      Block block;
                      Material Materiaux;
                      for(int a = x -4;a!=8;a++){
                      for(int b = y -4;b!=8;b++){
                      for(int c = z-4;c!=8;c++){
                      block = world.getBlock(a,b,c);
                      Materiaux = block.getMaterial();
                      if(Materiaux == Material.plants){
                      // fonction pour faire poussez la plante
                      
                      }
                      }
                      }
                      }
                      
                      }
                      

                      mais je ne trouve pas la méthode pour faire pousser la plante

                      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

                        Regarde ce que fait le bonne meal quand on fait un clic droit (ItemDye)

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

                          j’y comprend rien –’ pour quoi ils on pas écrit comme tout le monde (en anglais bien sur ) parce que leur func_2656287_8 c’est du charabia incompréhensible

                          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

                            ​        if (block instanceof IGrowable)
                                   {
                                       IGrowable igrowable = (IGrowable)block;
                            
                                       if (igrowable.func_149851_a(world, a, b, c, world.isRemote))
                                       {
                                           if (!world.isRemote)
                                           {
                                               if (igrowable.func_149852_a(world, world.rand, a, b, c))
                                               {
                                                   igrowable.func_149853_b(world, world.rand, a, b, c);
                                               }
                                           }
                                       }
                                   }
                            

                            Les func_xxxx c’est parce que les noms de fonctions n’ont pas été traduites.

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

                              D’accord un grand merci je test sa dessuite

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

                                c’est possible de faire une pause sans créer un tread ?

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

                                  j’ai un problème je viens de me rendre compte que sa tick pas –’
                                  voila le code :

                                  package com.Albanninou.Testmod.Blocks;
                                  
                                  import java.util.Random;
                                  
                                  import com.Albanninou.Testmod.CreativeTab;
                                  import com.Albanninou.Testmod.Blocks.TileEntity.TileEntityLampOfGrowth;
                                  import com.Albanninou.Testmod.Items.DropOfBlood;
                                  import com.Albanninou.Testmod.Items.Luminite;
                                  
                                  import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                                  import cpw.mods.fml.common.registry.GameRegistry;
                                  import net.minecraft.block.Block;
                                  import net.minecraft.block.IGrowable;
                                  import net.minecraft.block.material.Material;
                                  import net.minecraft.init.Blocks;
                                  import net.minecraft.init.Items;
                                  import net.minecraft.item.ItemStack;
                                  import net.minecraft.tileentity.TileEntity;
                                  import net.minecraft.world.World;
                                  
                                  public class LampForGrowth extends Block {
                                  public static Block LampForGrowth;
                                  private int a = 8;
                                  
                                  protected LampForGrowth(Material material) {
                                  super(material);
                                  setTickRandomly(true);
                                  }
                                  
                                  public static void Registery() {
                                  
                                  LampForGrowth = new LampForGrowth(Material.glass).setBlockName("LampForGrowth")
                                  .setBlockTextureName("TestMod:LampForGrowth").setCreativeTab(CreativeTab.CreativeTabs).setHardness(3.0f)
                                  .setLightLevel(1.0f);
                                  GameRegistry.registerBlock(LampForGrowth, "LampForGrowth");
                                  GameRegistry.addRecipe(new ItemStack(LampForGrowth, 1), new Object[] { "AXZ", "XYX", "ZXA", 'X',
                                  Luminite.Luminite, 'Y', Items.iron_ingot, 'A', DropOfBlood.DropOfBlood, 'Z', Items.bone });
                                  GameRegistry.addRecipe(new ItemStack(LampForGrowth, 1), new Object[] { "AXZ", "XYX", "ZXA", 'X',
                                  Luminite.Luminite, 'Y', Items.iron_ingot, 'Z', DropOfBlood.DropOfBlood, 'A', Items.bone });
                                  }
                                  
                                  @Override
                                  public TileEntity createTileEntity(World world, int metadata) {
                                  return new TileEntityLampOfGrowth(world);
                                  }
                                  
                                  @Override
                                  public boolean hasTileEntity(int metadata) {
                                  return true;
                                  }
                                  
                                  public void updateTick(World world, int x, int y, int z, Random rand) {
                                         System.out.println("tick");
                                  Block block;
                                  Material Materiaux;
                                  if (a == 8) {
                                  System.out.println("On rentre dans la boucle");
                                  for (a = x - 4; a != 8; a++) {
                                  for (int c = z - 4; c != 8; c++) {
                                  block = world.getBlock(a, y, c);
                                  Materiaux = block.getMaterial();
                                  if (Materiaux == Material.plants) {
                                  // fonction pour faire poussez la plante
                                  if (block instanceof IGrowable)
                                         {
                                             IGrowable igrowable = (IGrowable)block;
                                  
                                             if (igrowable.func_149851_a(world, a, y, c, world.isRemote))
                                             {
                                                 if (!world.isRemote)
                                                 {
                                                     if (igrowable.func_149852_a(world, world.rand, a, y, c))
                                                     {
                                                         igrowable.func_149853_b(world, world.rand, a, y, c);
                                                     }
                                                 }
                                             }
                                         }
                                  
                                  }
                                  
                                  }
                                  
                                  }
                                  }
                                  }
                                  
                                  }
                                  
                                  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

                                    Pourtant ça devrait, tu as le setTickRandomly(true);
                                    Ajoute
                                    @Override au dessus de updateTick

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

                                      je viens d’essailler , vous été d’accord que je devrait avoir écrit tick dans la console a chaque vois que sa tick (désoler pour le jeu de mot). Mais la sa écrit jamais tick pour temps le bloc est poser juste devant moi

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

                                        j’ai attendus plus longtemps , sa tick au bout de 5 min par contre sa fait crash minecraft (les mob bouge plus et impossible de rentrer dans un coffre)

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

                                          Si tu as une tileEntity, utilise la fonction updateEntity de la tileEntity plutôt.

                                          Pour le tick : tu dois avoir une boucle infinie quelque part.

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

                                            c’est a dire pour le tileEntity ?

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB