MFF

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

    Bloc (type machine) ne fonctionne pas

    Planifier Épinglé Verrouillé Déplacé Résolu 1.12.x
    1.12.2
    17 Messages 3 Publieurs 831 Vues 3 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.
    • Gollum1erG Hors-ligne
      Gollum1er
      dernière édition par

      J’ai changé la fonction en create TileEntity mais toujours rien :

      	@Override
      	public TileEntity createTileEntity(World world, IBlockState state)  {
      
      	    return new TileEntityUpgradeArmorMachine();
      
      	}
      

      My name is Gollum1er :)

      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 as cassé puis reposé le bloc ?

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

          Bonjour je suis dans la même situation que toi mais je crois avoir trouvé la solution , dans ta TileEntity tu as Normalement Update si tu as suivie le tuto du four 1.11 , 1.12 mais le problème c’est qu’en 1.12.2 je crois que Update s appelle en faite tick() et pas update() mais moi la je peux pas tester donc je ne sais pas si ça marche :)EDIT: je suis bete j avais juste mal extends mon ITickable 😧 il faut mettre

          import  net.minecraft.util.ITickable;
          

          Edit , moi ca marche soluce trouvé
          dans la classe de ton block met juste ca

          @Override
              public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
          
                  if (world.isRemote) {
                      return true;
                  } else {
                      player.openGui(NugarMod.instance, 0, world, pos.getX(), pos.getY(), pos.getZ());
                      return true;
                  }
          
              }
          
          1 réponse Dernière réponse Répondre Citer 0
          • Gollum1erG Hors-ligne
            Gollum1er
            dernière édition par

            Je l’avais déjà mise dans ma classe mais merci quand même !

            My name is Gollum1er :)

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

              non enfaite dans tas classe y a

              if (tileentity instanceof TileEntityUpgradeArmorMachine) {
               
              	            player.openGui(DragoniaMod.instance, 0, world, pos.getX(),
               
              	                    pos.getY(), pos.getZ());
               
              	        }
              

              et la condition if bloque tout faut juste le mettre dans else 🙂

              Edit car sinon je peux pas de répondre:
              tu as extend ta classe a BlockContainer ?

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

                Ca ne fonctionne pas non plus

                My name is Gollum1er :)

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

                  tu a bien extends ta classe a BlockContainer et si oui et que ca marche toujours pas bah tu met
                  ca dans la classe de ton block

                  @Override
                      public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
                  
                          if (world.isRemote) {
                              return true;
                          } else {
                              player.openGui(NugarMod.instance, 1, world, pos.getX(), pos.getY(), pos.getZ());
                              return true;
                          }
                  
                      }
                  

                  et ca c est ton nouveau GuiHandler :

                  public class GuiHandler implements IGuiHandler {
                  
                      @Override
                  
                      public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
                          switch(ID) {
                  
                              case 1:
                              TileEntity te = world.getTileEntity(new BlockPos(x, y, z));
                  
                              if (te instanceof TileEntityUpgradeArmorMachine) {
                                  return new ContainerUpgradeArmorMachine((TileEntityUpgradeArmorMachine) te, player.inventory);
                              }
                              default:
                                  return null;
                          }
                      }
                  
                  
                  
                      @Override
                  
                      public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
                          switch (ID) {
                  
                              case 1:
                                  TileEntity te = world.getTileEntity(new BlockPos(x, y, z));
                  
                                  if (te instanceof TileEntityUpgradeArmorMachine) {
                                      return new GuiUpgradeArmorMachine((TileEntityUpgradeArmorMachine) te, player.inventory);
                                  }
                              default:
                                  return null;
                  
                          }
                      }
                  }
                  
                  1 réponse Dernière réponse Répondre Citer 0
                  • Gollum1erG Hors-ligne
                    Gollum1er
                    dernière édition par

                    BlockContainer ou Container ?

                    My name is Gollum1er :)

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

                      non au lieu d extend la classe de ton block a Block tu remplace pas extends BlockContainer

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

                        Toujours pas je renvoie les classes modifiées ?

                        My name is Gollum1er :)

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

                          Classe du bloc:

                          
                          import com.Nugarium.NuagrMod.NugarMod;
                          import com.Nugarium.NuagrMod.init.BlockMod;
                          import net.minecraft.block.Block;
                          import net.minecraft.block.BlockContainer;
                          import net.minecraft.block.material.Material;
                          
                          
                          
                          import net.minecraft.block.Block;
                          import net.minecraft.block.material.Material;
                          import net.minecraft.block.state.IBlockState;
                          import net.minecraft.entity.player.EntityPlayer;
                          import net.minecraft.inventory.InventoryHelper;
                          import net.minecraft.tileentity.TileEntity;
                          import net.minecraft.util.EnumBlockRenderType;
                          import net.minecraft.util.EnumFacing;
                          import net.minecraft.util.EnumHand;
                          import net.minecraft.util.math.BlockPos;
                          import net.minecraft.world.World;
                          
                          import javax.annotation.Nullable;
                          
                          public class BlockUpgradeArmorMachine extends BlockContainer {
                              public static final String UPGRADE_ARMOR_MACHINE = "NUGARMACHINE";
                              public BlockUpgradeArmorMachine(Material materialIn) {
                                  super(materialIn);
                          
                                  BlockMod.setBlockName(this, UPGRADE_ARMOR_MACHINE);
                          
                                  setResistance(5.0F);
                          
                                  setHardness(15.0F);
                          
                                  setCreativeTab(NugarMod.NUGAR);
                              }
                          
                              @Override
                              public boolean hasTileEntity() {
                          
                                  return true;
                          
                              }
                          
                          
                              @Nullable
                              @Override
                              public TileEntity createNewTileEntity(World worldIn, int meta) {
                                  return new TileEntityUpgradeArmorMachine();
                              }
                          
                              @Override
                          
                              public void breakBlock(World worldIn, BlockPos pos, IBlockState state) {
                          
                                  TileEntity tileentity = worldIn.getTileEntity(pos);
                          
                          
                          
                                  if (tileentity instanceof TileEntityUpgradeArmorMachine) {
                          
                                      InventoryHelper.dropInventoryItems(worldIn, pos, (TileEntityUpgradeArmorMachine) tileentity);
                          
                                  }
                          
                          
                          
                                  super.breakBlock(worldIn, pos, state);
                          
                              }
                          
                              @Override
                              public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
                          
                                  if (world.isRemote) {
                                      return true;
                                  } else {
                                      player.openGui(NugarMod.instance, 1, world, pos.getX(), pos.getY(), pos.getZ());
                                      return true;
                                  }
                          
                              }
                          
                              @Override
                          
                              public EnumBlockRenderType getRenderType(IBlockState state) {
                          
                                  return EnumBlockRenderType.MODEL;
                          
                              }
                          
                          
                          
                          }
                          
                          

                          GuiHandler:

                          
                          import com.Nugarium.NuagrMod.machine.ContainerUpgradeArmorMachine;
                          import com.Nugarium.NuagrMod.machine.GuiUpgradeArmorMachine;
                          import com.Nugarium.NuagrMod.machine.TileEntityUpgradeArmorMachine;
                          import net.minecraft.entity.player.EntityPlayer;
                          import net.minecraft.tileentity.TileEntity;
                          import net.minecraft.util.math.BlockPos;
                          import net.minecraft.world.World;
                          import net.minecraftforge.fml.common.network.IGuiHandler;
                          
                          public class GuiHandler implements IGuiHandler {
                          
                              @Override
                          
                              public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
                                  switch(ID) {
                          
                                      case 1:
                                      TileEntity te = world.getTileEntity(new BlockPos(x, y, z));
                          
                                      if (te instanceof TileEntityUpgradeArmorMachine) {
                                          return new ContainerUpgradeArmorMachine((TileEntityUpgradeArmorMachine) te, player.inventory);
                                      }
                                      default:
                                          return null;
                                  }
                              }
                          
                          
                          
                              @Override
                          
                              public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
                                  switch (ID) {
                          
                                      case 1:
                                          TileEntity te = world.getTileEntity(new BlockPos(x, y, z));
                          
                                          if (te instanceof TileEntityUpgradeArmorMachine) {
                                              return new GuiUpgradeArmorMachine((TileEntityUpgradeArmorMachine) te, player.inventory);
                                          }
                                      default:
                                          return null;
                          
                                  }
                              }
                          }
                          
                          
                          1 réponse Dernière réponse Répondre Citer 1
                          • Gollum1erG Hors-ligne
                            Gollum1er
                            dernière édition par

                            Oww !!! SUPER MERCI !! + 1 de réputation !

                            My name is Gollum1er :)

                            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