MFF

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

    Blocks de portail

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.x
    23 Messages 4 Publieurs 4.6k 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Heu ? Envoie ton code ?

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

        Au lien de mettre Blocks.portals essaie de mettre leNomDeTonMod.leNomDeTonBloc

        au pire si tu ne comprends file nous ton code je pourrais te le redonner corrigé 😉

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

          Bon moi je vais vite finir mon tuto xD.

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

            @Julot10085 : Je parle de la structure du portail et non des blocs nommés ‘portal’.

            @robin4002 : Je ne suis sûr que du code soit nécessaire c’est de la théorie.

            Mes mods:

            • New Ores
            • More Dragons
            1 réponse Dernière réponse Répondre Citer 0
            • DeletedD Hors-ligne
              Deleted
              dernière édition par

              @‘MrBlockTNT’:

              @Julot10085 : Je parle de la structure du portail et non des blocs nommés ‘portal’.

              @robin4002 : Je ne suis sûr que du code soit nécessaire c’est de la théorie.

              Je prenais le block portals comme exemple, dans ma tête je pensais au bloc constituant le portail tel que l’obsidienne désolé je suis allé trop vite. Mais enfin tu peux remplacer le block constituant le portail par te tien autrement c’est pas possible

              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

                Si justement j’ai besoin de tes codes pour voir ce que tu as fait et donc conclure pourquoi ça ne fonctionne pas avec un bloc custom …

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

                  Apparemment il semble que ça marche avec des blocs (de mon mod) possédant une classe dédiée (type BlockGrass).

                  L’erreur doit être dans cette classe (le système du drop est une expérience) :
                  BlockDragonsMod.java :

                  
                  package fr.MrBlockTNT.Dragons.block;
                  
                  import java.util.Random;
                  
                  import net.minecraft.block.Block;
                  import net.minecraft.block.material.Material;
                  import net.minecraft.item.Item;
                  import fr.MrBlockTNT.Dragons.core.Dragons;
                  
                  public class BlockDragonsMod extends Block
                  {
                  Block drop;
                  
                  public BlockDragonsMod(Material material)
                  {
                  super(material);
                  drop = null;
                  this.setCreativeTab(Dragons.DragonsTab);
                  }
                  
                  public BlockDragonsMod(Block block, Material material)
                  {
                  super(material);
                  drop = block;
                  this.setCreativeTab(Dragons.DragonsTab);
                  }
                  
                  public Item getItemDropped(int a, Random b, int c)
                  {
                  return Item.getItemFromBlock(this.drop);
                  }
                  }
                  
                  

                  Mes mods:

                  • New Ores
                  • More Dragons
                  1 réponse Dernière réponse Répondre Citer 0
                  • DeletedD Hors-ligne
                    Deleted
                    dernière édition par

                    @‘MrBlockTNT’:

                    Apparemment il semble que ça marche avec des blocs (de mon mod) possédant une classe dédiée (type BlockGrass).

                    L’erreur doit être dans cette classe (le système du drop est une expérience) :
                    BlockDragonsMod.java :

                    
                    package fr.MrBlockTNT.Dragons.block;
                    
                    import java.util.Random;
                    
                    import net.minecraft.block.Block;
                    import net.minecraft.block.material.Material;
                    import net.minecraft.item.Item;
                    import fr.MrBlockTNT.Dragons.core.Dragons;
                    
                    public class BlockDragonsMod extends Block
                    {
                    Block drop;
                    
                    public BlockDragonsMod(Material material)
                    {
                    super(material);
                    drop = null;
                    this.setCreativeTab(Dragons.DragonsTab);
                    }
                    
                    public BlockDragonsMod(Block block, Material material)
                    {
                    super(material);
                    drop = block;
                    this.setCreativeTab(Dragons.DragonsTab);
                    }
                    
                    public Item getItemDropped(int a, Random b, int c)
                    {
                    return Item.getItemFromBlock(this.drop);
                    }
                    }
                    
                    

                    Euh essaie de mettre en commentaire ta ligne

                    
                    drop = null
                    
                    

                    pour voir si ça change quelque chose

                    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

                      Je vois pas de problème en rapport avec ton histoire de portail.
                      En revanche fait attention, celle classe peut déclencher un NPE …
                      Normalement tu mets TaClassePrincipale.nomDuBloc et voila.

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

                        Je pense pas étant donné que mon block “structure” possède les 2 arguments (logiquement, drop sera quand même null), mais je teste quand même.

                        EDIT : C’est bien ce que je pensais ça ne marche pas.

                        Mes mods:

                        • New Ores
                        • More Dragons
                        1 réponse Dernière réponse Répondre Citer 0
                        • DeletedD Hors-ligne
                          Deleted
                          dernière édition par

                          @‘MrBlockTNT’:

                          Je pense pas étant donné que mon block “structure” possède les 2 arguments (logiquement, drop sera quand même null), mais je teste quand même.

                          EDIT : C’est bien ce que je pensais ça ne marche pas.

                          Autant pour moi….

                          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

                            J’ai posté une réponse qui est resté inaperçu :
                            @‘robin4002’:

                            Je vois pas de problème en rapport avec ton histoire de portail.
                            En revanche fait attention, celle classe peut déclencher un NPE …
                            Normalement tu mets TaClassePrincipale.nomDuBloc et voila.

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

                              A désolé je n’avais pas vu.
                              Le rapport avec le portail c’est que c’est la classe du bloc ‘structure/container’ du portail.


                              Je ne comprends plus rien : avec deux classes différentes possédant le même code un bloc sur les deux marche… 😞

                              Mes mods:

                              • New Ores
                              • More Dragons
                              1 réponse Dernière réponse Répondre Citer 0
                              • DiangleD Hors-ligne
                                Diangle
                                dernière édition par

                                Je ne comprend pas ton problème xD.

                                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

                                  Envoie tout tes codes en rapport avec le portail.

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • bin4r1sB Hors-ligne
                                    bin4r1s
                                    dernière édition par robin4002

                                    Classe principale (Dragons.java) :

                                    fire_stone = (new BlockDragonsMod(this.fire_stone, Material.rock)).setHardness(20.0F).setResistance(2000.0F).setStepSound(Block.soundTypeStone).setBlockName("fire_stone").setBlockTextureName("dragons:fire_stone");
                                    GameRegistry.registerBlock(fire_stone, "fire_stone");
                                    

                                    IDimBlockPortal.java (non, ce n’est pas une interface 😄 (I = Ice))

                                    package fr.MrBlockTNT.Dragons.dimension.ice;
                                    
                                    import java.util.Random;
                                    
                                    import net.minecraft.block.Block;
                                    import net.minecraft.block.material.Material;
                                    import net.minecraft.entity.Entity;
                                    import net.minecraft.entity.player.EntityPlayerMP;
                                    import net.minecraft.init.Blocks;
                                    import net.minecraft.item.ItemStack;
                                    import net.minecraft.util.AxisAlignedBB;
                                    import net.minecraft.util.MovingObjectPosition;
                                    import net.minecraft.world.IBlockAccess;
                                    import net.minecraft.world.World;
                                    import cpw.mods.fml.relauncher.Side;
                                    import cpw.mods.fml.relauncher.SideOnly;
                                    import fr.MrBlockTNT.Dragons.block.BlockBase;
                                    import fr.MrBlockTNT.Dragons.core.Dragons;
                                    
                                    public class IDimBlockPortal extends BlockBase
                                    {
                                        public static Block portalMaterial = Dragons.fire_stone;
                                    
                                        public IDimBlockPortal()
                                        {
                                            super(Material.portal);
                                            this.setTickRandomly(true);
                                            this.setStepSound(Block.soundTypeGlass);
                                            this.setLightLevel(0.75F);
                                        }
                                    
                                        @Override
                                        public void setBlockBoundsBasedOnState(IBlockAccess blockaccess, int x, int y, int z)
                                        {
                                            float f;
                                            float f1;
                                    
                                            if(!blockaccess.getBlock(x - 1, y, z).equals(this) && !blockaccess.getBlock(x + 1, y, z).equals(this))
                                            {
                                                f = 0.125F;
                                                f1 = 0.5F;
                                                this.setBlockBounds(0.5F - f, 0.0F, 0.5F - f1, 0.5F + f, 1.0F, 0.5F + f1);
                                            }
                                            else
                                            {
                                                f = 0.5F;
                                                f1 = 0.125F;
                                                this.setBlockBounds(0.5F - f, 0.0F, 0.5F - f1, 0.5F + f, 1.0F, 0.5F + f1);
                                            }
                                        }
                                    
                                        @Override
                                        public void setBlockBoundsForItemRender()
                                        {
                                            float f1 = 0.125F;
                                            this.setBlockBounds(0, 0.0F, 0.5F - f1, 1F, 1.0F, 0.5F + f1);
                                        }
                                    
                                        @Override
                                        public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z)
                                        {
                                            return null;
                                        }
                                    
                                    @Override
                                    public void onNeighborBlockChange(World world, int x, int y, int z, Block block)
                                    {
                                    int y2 = y;
                                    while(world.getBlock(x, y2, z).equals(this))
                                    {
                                    y2–;
                                    }
                                    if(!world.getBlock(x, y2, z).equals(this.portalMaterial))
                                    {
                                    world.setBlockToAir(x, y, z);
                                    }
                                    int y3 = y2 + 1;
                                    boolean portalIsGood = false;
                                    if(world.getBlock(x, y3, z + 1).equals(this))
                                    {
                                    portalIsGood = (world.getBlock(x, y2, z).equals(this.portalMaterial) && world.getBlock(x, y2, z + 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 1, z + 2).equals(this.portalMaterial) && world.getBlock(x, y2 + 2, z + 2).equals(this.portalMaterial) && world.getBlock(x, y2 + 3, z + 2).equals(this.portalMaterial) && world.getBlock(x, y2 + 1, z - 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 2, z - 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 3, z - 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 4, z - 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 4, z).equals(this.portalMaterial));
                                    }
                                    else if(world.getBlock(x, y3, z - 1).equals(this))
                                    {
                                    portalIsGood = (world.getBlock(x, y2, z).equals(this.portalMaterial) && world.getBlock(x, y2, z - 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 1, z - 2).equals(this.portalMaterial) && world.getBlock(x, y2 + 2, z - 2).equals(this.portalMaterial) && world.getBlock(x, y2 + 3, z - 2).equals(this.portalMaterial) && world.getBlock(x, y2 + 1, z + 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 2, z + 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 3, z + 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 4, z + 1).equals(this.portalMaterial) && world.getBlock(x, y2 + 4, z).equals(this.portalMaterial));
                                    }
                                    else if(world.getBlock(x + 1, y3, z).equals(this))
                                    {
                                    portalIsGood = (world.getBlock(x, y2, z).equals(this.portalMaterial) && world.getBlock(x + 1, y2, z).equals(this.portalMaterial) && world.getBlock(x + 2, y2 + 1, z).equals(this.portalMaterial) && world.getBlock(x + 2, y2 + 2, z).equals(this.portalMaterial) && world.getBlock(x + 2, y2 + 3, z).equals(this.portalMaterial) && world.getBlock(x - 1, y2 + 1, z).equals(this.portalMaterial) && world.getBlock(x - 1, y2 + 2, z).equals(this.portalMaterial) && world.getBlock(x - 1, y2 + 3, z).equals(this.portalMaterial) && world.getBlock(x + 1, y2 + 4, z).equals(this.portalMaterial) && world.getBlock(x, y2 + 4, z).equals(this.portalMaterial));
                                    }
                                    else if(world.getBlock(x - 1, y3, z).equals(this))
                                    {
                                    portalIsGood = (world.getBlock(x, y2, z).equals(this.portalMaterial) && world.getBlock(x - 1, y2, z).equals(this.portalMaterial) && world.getBlock(x - 2, y2 + 1, z).equals(this.portalMaterial) && world.getBlock(x - 2, y2 + 2, z).equals(this.portalMaterial) && world.getBlock(x - 2, y2 + 3, z).equals(this.portalMaterial) && world.getBlock(x + 1, y2 + 1, z).equals(this.portalMaterial) && world.getBlock(x + 1, y2 + 2, z).equals(this.portalMaterial) && world.getBlock(x + 1, y2 + 3, z).equals(this.portalMaterial) && world.getBlock(x + 1, y2 + 4, z).equals(this.portalMaterial) && world.getBlock(x, y2 + 4, z).equals(this.portalMaterial));
                                    }
                                    
                                    if(!portalIsGood)
                                    {
                                    world.setBlockToAir(x, y, z);
                                    }
                                    }
                                    
                                        @Override
                                        public boolean isOpaqueCube()
                                        {
                                            return false;
                                        }
                                    
                                        @Override
                                        public boolean renderAsNormalBlock()
                                        {
                                            return false;
                                        }
                                    
                                        @Override
                                        public int quantityDropped(Random random)
                                        {
                                            return 0;
                                        }
                                    
                                        @Override
                                        public void onEntityCollidedWithBlock(World world, int x, int y, int z, Entity entity)
                                        {
                                            if((entity.ridingEntity == null) && (entity.riddenByEntity == null))
                                            {
                                                if(entity.dimension != Dragons.dimensionIdIce)
                                                {
                                                    if(entity instanceof EntityPlayerMP)
                                                    {
                                                        EntityPlayerMP player = (EntityPlayerMP)entity;
                                                        if(player.timeUntilPortal > 0)
                                                        {
                                                            player.timeUntilPortal = 10;
                                                        }
                                                        else
                                                        {
                                                            player.timeUntilPortal = 10;
                                                            player.mcServer.getConfigurationManager().transferPlayerToDimension(player, Dragons.dimensionIdIce, new IDimTeleporter(player.mcServer.worldServerForDimension(Dragons.dimensionIdIce)));
                                                        }
                                                    }
                                                    else
                                                    {
                                                        EntityTeleporter.teleportToDim(entity, Dragons.dimensionIdIce);
                                                    }
                                                }
                                                else
                                                {
                                                    if(entity instanceof EntityPlayerMP)
                                                    {
                                                        EntityPlayerMP player = (EntityPlayerMP)entity;
                                                        if(player.timeUntilPortal > 0)
                                                        {
                                                            player.timeUntilPortal = 10;
                                                        }
                                                        else
                                                        {
                                                            player.timeUntilPortal = 10;
                                                            player.mcServer.getConfigurationManager().transferPlayerToDimension(player, 0, new IDimTeleporter(player.mcServer.worldServerForDimension(0)));
                                                        }
                                                    }
                                                    else
                                                    {
                                                        EntityTeleporter.teleportToDim(entity, 0);
                                                    }
                                                }
                                            }
                                    
                                        }
                                    
                                        @SideOnly(Side.CLIENT)
                                        @Override
                                        public int getRenderBlockPass()
                                        {
                                            return 1;
                                        }
                                    
                                        @SideOnly(Side.CLIENT)
                                        @Override
                                        public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z)
                                        {
                                            return null;
                                        }
                                    
                                        @Override
                                        public void breakBlock(World world, int x, int y, int z, Block block, int metadata)
                                        {
                                            super.breakBlock(world, x, y, z, block, metadata);
                                            if(world.getBlock(x, y + 1, z).equals(this))
                                            {
                                                world.setBlockToAir(x, y + 1, z);
                                            }
                                            if(world.getBlock(x, y - 1, z).equals(this))
                                            {
                                                world.setBlockToAir(x, y - 1, z);
                                            }
                                            if(world.getBlock(x + 1, y, z).equals(this))
                                            {
                                                world.setBlockToAir(x + 1, y, z);
                                            }
                                            if(world.getBlock(x - 1, y, z).equals(this))
                                            {
                                                world.setBlockToAir(x - 1, y, z);
                                            }
                                            if(world.getBlock(x, y, z + 1).equals(this))
                                            {
                                                world.setBlockToAir(x, y, z + 1);
                                            }
                                            if(world.getBlock(x, y, z - 1).equals(this))
                                            {
                                                world.setBlockToAir(x, y, z - 1);
                                            }
                                        }
                                    }
                                    

                                    Mes mods:

                                    • New Ores
                                    • More Dragons
                                    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

                                      Heu ? Je ne vois pas où est le problème, ça devrait très bien fonctionner non ?

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • bin4r1sB Hors-ligne
                                        bin4r1s
                                        dernière édition par robin4002

                                        Et bien apparemment non 😞

                                        Code de l’activateur ? :
                                        ItemIcePortalOpener.java :

                                        package fr.MrBlockTNT.Dragons.item;
                                        
                                        import net.minecraft.entity.player.EntityPlayer;
                                        import net.minecraft.item.Item;
                                        import net.minecraft.item.ItemStack;
                                        import net.minecraft.world.World;
                                        import fr.MrBlockTNT.Dragons.core.Dragons;
                                        import fr.MrBlockTNT.Dragons.dimension.ice.IDimBlockPortal;
                                        
                                        public class ItemIcePortalOpener extends Item
                                        {
                                            public ItemIcePortalOpener()
                                            {
                                                super();
                                            }
                                        
                                            public boolean onItemUse(ItemStack stack, EntityPlayer player, World par3World, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
                                            {
                                                if(!par3World.isRemote && par3World.getBlock(x, y, z).equals(IDimBlockPortal.portalMaterial))
                                                {
                                                    if(par3World.getBlock(x, y, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 1, y, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 2, y + 1, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 2, y + 2, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 2, y + 3, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 1, y + 1, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 1, y + 2, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 1, y + 3, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 1, y + 4, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 4, z).equals(IDimBlockPortal.portalMaterial))
                                                    {
                                                        for(int i = 0; i < 3; i++)
                                                        {
                                                            par3World.setBlock(x, y + 1 + i, z, Dragons.ice_portal);
                                                            par3World.setBlock(x - 1, y + 1 + i, z, Dragons.ice_portal);
                                                        }
                                                        if(!player.capabilities.isCreativeMode)
                                                        {
                                                            stack.stackSize–;
                                                        }
                                                        return true;
                                                    }
                                        
                                                    if(par3World.getBlock(x, y, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 1, y, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 2, y + 1, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 2, y + 2, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 2, y + 3, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 1, y + 1, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 1, y + 2, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x - 1, y + 3, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x + 1, y + 4, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 4, z).equals(IDimBlockPortal.portalMaterial))
                                                    {
                                                        for(int i = 0; i < 3; i++)
                                                        {
                                                            par3World.setBlock(x, y + 1 + i, z, Dragons.ice_portal);
                                                            par3World.setBlock(x + 1, y + 1 + i, z, Dragons.ice_portal);
                                                        }
                                                        if(!player.capabilities.isCreativeMode)
                                                        {
                                                            stack.stackSize--;
                                                        }
                                                        return true;
                                                    }
                                        
                                                    if(par3World.getBlock(x, y, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y, z - 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 1, z - 2).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 2, z - 2).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 3, z - 2).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 1, z + 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 2, z + 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 3, z + 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 4, z - 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 4, z).equals(IDimBlockPortal.portalMaterial))
                                                    {
                                                        for(int i = 0; i < 3; i++)
                                                        {
                                                            par3World.setBlock(x, y + 1 + i, z, Dragons.ice_portal);
                                                            par3World.setBlock(x, y + 1 + i, z - 1, Dragons.ice_portal);
                                                        }
                                                        if(!player.capabilities.isCreativeMode)
                                                        {
                                                            stack.stackSize--;
                                                        }
                                                        return true;
                                                    }
                                        
                                                    if(par3World.getBlock(x, y, z).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y, z + 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 1, z + 2).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 2, z + 2).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 3, z + 2).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 1, z - 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 2, z - 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 3, z - 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 4, z + 1).equals(IDimBlockPortal.portalMaterial) && par3World.getBlock(x, y + 4, z).equals(IDimBlockPortal.portalMaterial))
                                                    {
                                                        for(int i = 0; i < 3; i++)
                                                        {
                                                            par3World.setBlock(x, y + 1 + i, z, Dragons.ice_portal);
                                                            par3World.setBlock(x, y + 1 + i, z + 1, Dragons.ice_portal);
                                                        }
                                                        if(!player.capabilities.isCreativeMode)
                                                        {
                                                            stack.stackSize--;
                                                        }
                                                        return true;
                                                    }
                                                }
                                                if(par3World.isRemote)
                                                {
                                                    par3World.spawnParticle("largesmoke", x, y, z, hitX, hitY, hitZ);
                                                }
                                                return false;
                                            }
                                        }
                                        

                                        Mes mods:

                                        • New Ores
                                        • More Dragons
                                        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 le constructeur de la classe IDimBlockPortal, ajoutes :
                                          System.out.println(portalMaterial.getUnlocalizedName());

                                          ça t’affiche son nom dans la console ou le jeu crash avec un NPE ?

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • bin4r1sB Hors-ligne
                                            bin4r1s
                                            dernière édition par robin4002

                                            Ah ! NPE !

                                            Comment le solutionner ?

                                            [12:26:01] [Client thread/ERROR] [FML]: Caught exception from Dragons
                                            java.lang.NullPointerException
                                            at fr.MrBlockTNT.Dragons.dimension.ice.IDimBlockPortal.<init>(IDimBlockPortal.java:30) ~[IDimBlockPortal.class:?]
                                            at fr.MrBlockTNT.Dragons.core.Dragons.PreInit(Dragons.java:137) ~[Dragons.class:?]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_11]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513) ~[FMLModContainer.class:?]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_11]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:267) ~[guava-15.0.jar:?]
                                            at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208) ~[LoadController.class:?]
                                            at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187) ~[LoadController.class:?]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_11]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) ~[guava-15.0.jar:?]
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:267) ~[guava-15.0.jar:?]
                                            at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118) [LoadController.class:?]
                                            at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:512) [Loader.class:?]
                                            at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:239) [FMLClientHandler.class:?]
                                            at net.minecraft.client.Minecraft.startGame(Minecraft.java:522) [Minecraft.class:?]
                                            at net.minecraft.client.Minecraft.run(Minecraft.java:892) [Minecraft.class:?]
                                            at net.minecraft.client.main.Main.main(Main.java:112) [Main.class:?]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_11]
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_11]
                                            at net.minecraft.launchwrapper.Launch.launch(Launch.java:134) [launchwrapper-1.9.jar:?]
                                            at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.9.jar:?]
                                            –-- Minecraft Crash Report ----
                                            // Who set us up the TNT?
                                            
                                            Time: 30/08/14 12:26
                                            Description: Initializing game
                                            
                                            java.lang.NullPointerException: Initializing game
                                            at fr.MrBlockTNT.Dragons.dimension.ice.IDimBlockPortal.<init>(IDimBlockPortal.java:30)
                                            at fr.MrBlockTNT.Dragons.core.Dragons.PreInit(Dragons.java:137)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
                                            at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:267)
                                            at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
                                            at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
                                            at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:267)
                                            at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
                                            at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:512)
                                            at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:239)
                                            at net.minecraft.client.Minecraft.startGame(Minecraft.java:522)
                                            at net.minecraft.client.Minecraft.run(Minecraft.java:892)
                                            at net.minecraft.client.main.Main.main(Main.java:112)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at net.minecraft.launchwrapper.Launch.launch(Launch.java:134)
                                            at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
                                            
                                            A detailed walkthrough of the error, its code path and all known details is as follows:
                                            ---------------------------------------------------------------------------------------
                                            
                                            -- Head --
                                            Stacktrace:
                                            at fr.MrBlockTNT.Dragons.dimension.ice.IDimBlockPortal.<init>(IDimBlockPortal.java:30)
                                            at fr.MrBlockTNT.Dragons.core.Dragons.PreInit(Dragons.java:137)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
                                            at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:267)
                                            at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
                                            at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
                                            at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:267)
                                            at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
                                            at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:512)
                                            at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:239)
                                            at net.minecraft.client.Minecraft.startGame(Minecraft.java:522)
                                            
                                            -- Initialization --
                                            Details:
                                            Stacktrace:
                                            at net.minecraft.client.Minecraft.run(Minecraft.java:892)
                                            at net.minecraft.client.main.Main.main(Main.java:112)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at net.minecraft.launchwrapper.Launch.launch(Launch.java:134)
                                            at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
                                            
                                            -- System Details --
                                            Details:
                                            Minecraft Version: 1.7.2
                                            Operating System: Windows Vista (x86) version 6.0
                                            Java Version: 1.8.0_11, Oracle Corporation
                                            Java VM Version: Java HotSpot(TM) Client VM (mixed mode), Oracle Corporation
                                            Memory: 789954048 bytes (753 MB) / 1046937600 bytes (998 MB) up to 1046937600 bytes (998 MB)
                                            JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
                                            AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
                                            IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
                                            FML: MCP v9.03 FML v7.2.211.1121 Minecraft Forge 10.12.2.1121 4 mods loaded, 4 mods active
                                            mcp{9.03} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
                                            FML{7.2.211.1121} [Forge Mod Loader] (forgeSrc-1.7.2-10.12.2.1121.jar) Unloaded->Constructed->Pre-initialized
                                            Forge{10.12.2.1121} [Minecraft Forge] (forgeSrc-1.7.2-10.12.2.1121.jar) Unloaded->Constructed->Pre-initialized
                                            Dragons{1.0.0} [More Dungeons and Dragons - pre-alpha] (bin) Unloaded->Constructed->Errored
                                            Launched Version: 1.6
                                            LWJGL: 2.9.0
                                            OpenGL: GeForce 9300 GE/PCIe/SSE2/3DNOW! GL version 3.3.0, NVIDIA Corporation
                                            Is Modded: Definitely; Client brand changed to 'fml,forge'
                                            Type: Client (map_client.txt)
                                            Resource Packs: []
                                            Current Language: ~~ERROR~~ NullPointerException: null
                                            Profiler Position: N/A (disabled)
                                            Vec3 Pool Size: ~~ERROR~~ NullPointerException: null
                                            Anisotropic Filtering: Off (1)
                                            #@!@# Game crashed! Crash report saved to: #@!@# C:\Minecraft\More Dragons 1.7.2\mod\forge\eclipse\.\crash-reports\crash-2014-08-30_12.26.01-client.txt
                                            Java HotSpot(TM) Client VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
                                            

                                            Mes mods:

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB