MFF

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

    Aide pour liquide

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.8
    18 Messages 4 Publieurs 3.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.
    • EryahE Hors-ligne
      Eryah
      dernière édition par

      Oui, ça je sais, mais l’erreur est provoquée par quoi ?

      Envoyé de mon SM-G357FZ en utilisant Tapatalk

      Membre fantôme
      Je développe maintenant un jeu sur UnrealEngine4


      Contact :…

      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 quelques choses de null, le mieux est de séparer en plusieurs lignes pour trouver d’où ça vient.

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

          OK je ferais ça demain, mon c est eteint :S
          J’ai regarder un tuto en 1.6 (vidéo) et il y a ub ordre très precit pour register les trucs.

          Envoyé de mon SM-G357FZ en utilisant Tapatalk

          Membre fantôme
          Je développe maintenant un jeu sur UnrealEngine4


          Contact :…

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

            Déso pour le double post 😕
            C’est bon, j’ai suivi le tuto vidéo en 1.6, j’ai adapté le code en 1.8, et ça fonctionne.
            Enfin, a moitié, enfin, au quart. Je crash quand je pose le block 😕
            Et le bloc n’a pas encore sa texture, et son seau, et sans oublier, son nom, mais ça, je pense que ça va être simple 🙂

            ( Pourquoi as-tu enlever ma yoli présentation robin ? ;( )

            Crash :

            –-- Minecraft Crash Report ----
            // Would you like a cupcake?
            
            Time: 13/08/15 13:57
            Description: Exception while ticking a block
            
            java.lang.ClassCastException: net.minecraft.block.state.BlockState$StateImplementation cannot be cast to net.minecraft.block.Block
            at eryah.galratech.liquids.BlockYourFluid.canDisplace(BlockYourFluid.java:25)
            at net.minecraftforge.fluids.BlockFluidClassic.updateTick(BlockFluidClassic.java:138)
            at net.minecraft.world.WorldServer.tickUpdates(WorldServer.java:660)
            at net.minecraft.world.WorldServer.tick(WorldServer.java:226)
            at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:763)
            at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669)
            at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540)
            at java.lang.Thread.run(Unknown Source)
            
            A detailed walkthrough of the error, its code path and all known details is as follows:
            ---------------------------------------------------------------------------------------
            
            -- Head --
            Stacktrace:
            at eryah.galratech.liquids.BlockYourFluid.canDisplace(BlockYourFluid.java:25)
            at net.minecraftforge.fluids.BlockFluidClassic.updateTick(BlockFluidClassic.java:138)
            
            -- Block being ticked --
            Details:
            Block: galratech:galratech_yourFluid_block[level=0]
            Block location: World: (598,4,-30), Chunk: (at 6,0,2 in 37,-2; contains blocks 592,0,-32 to 607,255,-17), Region: (1,-1; contains chunks 32,-32 to 63,-1, blocks 512,0,-512 to 1023,255,-1)
            Stacktrace:
            at net.minecraft.world.WorldServer.tickUpdates(WorldServer.java:660)
            at net.minecraft.world.WorldServer.tick(WorldServer.java:226)
            
            – Affected level --
            Details:
            Level name: GalraTech Structures
            All players: 1 total; [EntityPlayerMP['Eryah'/144, l='GalraTech Structures', x=600,72, y=4,00, z=-30,96]]
            Chunk stats: ServerChunkCache: 305 Drop: 0
            Level seed: 3092709139775028757
            Level generator: ID 01 - flat, ver 0\. Features enabled: false
            Level generator options: 3;minecraft:bedrock,2*minecraft:dirt,minecraft:grass;1;village
            Level spawn location: 619,00,4,00,-16,00 - World: (619,4,-16), Chunk: (at 11,0,0 in 38,-1; contains blocks 608,0,-16 to 623,255,-1), Region: (1,-1; contains chunks 32,-32 to 63,-1, blocks 512,0,-512 to 1023,255,-1)
            Level time: 110221 game time, 1056 day time
            Level dimension: 0
            Level storage version: 0x04ABD - Anvil
            Level weather: Rain time: 602 (now: false), thunder time: 110155 (now: false)
            Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true
            Stacktrace:
            at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:763)
            at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669)
            at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540)
            at java.lang.Thread.run(Unknown Source)
            
            – System Details --
            Details:
            Minecraft Version: 1.8
            Operating System: Windows 8.1 (amd64) version 6.3
            Java Version: 1.8.0_51, Oracle Corporation
            Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
            Memory: 826295736 bytes (788 MB) / 1056309248 bytes (1007 MB) up to 1056309248 bytes (1007 MB)
            JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
            IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
            FML: MCP v9.10 FML v8.99.8.1412 Minecraft Forge 11.14.1.1412 4 mods loaded, 4 mods active
            mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
            FML{8.99.8.1412} [Forge Mod Loader] (forgeSrc-1.8-11.14.1.1412.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
            Forge{11.14.1.1412} [Minecraft Forge] (forgeSrc-1.8-11.14.1.1412.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
            galratech{ALPHA 0.1} [GalraTech] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available
            Loaded coremods (and transformers):
            GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
            Profiler Position: N/A (disabled)
            Player Count: 1 / 8; [EntityPlayerMP['Eryah'/144, l='GalraTech Structures', x=600,72, y=4,00, z=-30,96]]
            Type: Integrated Server (map_client.txt)
            Is Modded: Definitely; Client brand changed to 'fml,forge
            

            Block

            package eryah.galratech.liquids;
            
            import net.minecraft.block.Block;
            import net.minecraft.block.material.Material;
            import net.minecraft.creativetab.CreativeTabs;
            import net.minecraft.util.BlockPos;
            import net.minecraft.world.IBlockAccess;
            import net.minecraft.world.World;
            import net.minecraftforge.fluids.BlockFluidClassic;
            import net.minecraftforge.fluids.Fluid;
            import eryah.galratech.GalraTechMod;
            
            public class BlockYourFluid extends BlockFluidClassic {
            
                    public BlockYourFluid(Fluid fluid, Material material) {
                            super(fluid, GalraTechMod.materialAcid);
                            setCreativeTab(CreativeTabs.tabMisc);
                    }
            
                    @Override
                    public boolean canDisplace(IBlockAccess world, BlockPos pos) {
                            if (((Block) world.getBlockState(pos)).getMaterial().isLiquid()) return false;
                            return super.canDisplace(world, pos);
                    }
            
                    @Override
                    public boolean displaceIfPossible(World world, BlockPos pos) {
                            if (((Block) world.getBlockState(pos)).getMaterial().isLiquid()) return false;
                            return super.displaceIfPossible(world, pos);
                    }
            
            }
            

            Membre fantôme
            Je développe maintenant un jeu sur UnrealEngine4


            Contact :…

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

              @‘Crash Report’:

              java.lang.ClassCastException: net.minecraft.block.state.BlockState$StateImplementation cannot be cast to net.minecraft.block.Block

              –> Tu a un problème avec une fonction de cast

              @‘Crash Report’:

              at eryah.galratech.liquids.BlockYourFluid.canDisplace(BlockYourFluid.java:25)

              –> Tu a l’erreur a la ligne 25.

              @‘Ton code (L25)’:

              if (((Block) world.getBlockState(pos)).getMaterial().isLiquid()) return false;

              –> ton ((Block) world.getBlockState(pos)) ne fonctionne pas

              BlockState une classe différente de Block. Tu ne peu donc pas la casté comme ca, en revanche, tu peu ajouter “.getBlock()” pour obtenir le block. ta condition devient alors :
              if (world.getBlockState(pos).getBlock().getMaterial().isLiquid()) return false;

              p.s : tu aura la même erreur a la ligne 31 si tu ne la modifie pas aussi

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

                Merci beaucoup 🙂
                j’avais déja régler le problème du crash, et m’appretait a faire un edit du message, car la, le bloc ne se pose pas

                Membre fantôme
                Je développe maintenant un jeu sur UnrealEngine4


                Contact :…

                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 mit quoi à la place de if (((Block) world.getBlockState(pos)).getMaterial().isLiquid()) return false; ?
                  Et j’ai retiré les barres textes car ça foutait la merde mélangé avec les balises codes et spoiler.

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

                    j’ai mis ce qu’a mis Jodge, mais avant j’ai retiré .getMaterial().isLiquid() , et j’ai mis le quick fix ( != null )Oui c’est con, mais je voulais essayer

                    Membre fantôme
                    Je développe maintenant un jeu sur UnrealEngine4


                    Contact :…

                    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 ne vois pas ce qui peut causer problème, envoie tout le code complet.

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

                        MainClass

                        package eryah.galratech;
                        
                        import net.minecraft.block.Block;
                        import net.minecraft.block.material.MapColor;
                        import net.minecraft.block.material.Material;
                        import net.minecraft.block.material.MaterialLiquid;
                        import net.minecraft.item.Item;
                        import net.minecraft.util.ResourceLocation;
                        import net.minecraftforge.fluids.Fluid;
                        import net.minecraftforge.fluids.FluidRegistry;
                        import net.minecraftforge.fml.common.Mod;
                        import net.minecraftforge.fml.common.Mod.EventHandler;
                        import net.minecraftforge.fml.common.SidedProxy;
                        import net.minecraftforge.fml.common.event.FMLInitializationEvent;
                        import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
                        import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
                        import net.minecraftforge.fml.common.registry.GameRegistry;
                        import eryah.galratech.blocks.RustyMetalBlock;
                        import eryah.galratech.items.GalraTechGlove;
                        import eryah.galratech.items.Lens;
                        import eryah.galratech.liquids.GaloraidAcidBlock;
                        import eryah.galratech.proxy.CommonProxy;
                        
                        @Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.VERSION)
                        public class GalraTechMod
                        {
                        
                        @SidedProxy(clientSide = Reference.CLIENT_PROXY_CLASS, serverSide = Reference.SERVER_PROXY_CLASS)
                        public static CommonProxy proxy;
                        
                        public static final CreativeTab GalraTab = new CreativeTab("GalraTab");
                        
                        @Mod.Instance(Reference.MOD_ID)
                        public static GalraTechMod instance;
                        
                        //Déclaration
                        
                        //Items
                        public static Item galratech_glove;
                        
                        //Matériaux
                        public static Item lens;
                        
                        //Blocks
                        
                        //Déco
                        public static Block rusty_iron_block;
                        
                        //Fluids
                        public static Fluid galor_acid;
                        public static Block galor_acid_block;
                        
                        //Matériaux
                        //Liquids
                        public static Material materialGalorAcid;
                        
                        @EventHandler
                        public void preInit(FMLPreInitializationEvent event)
                        {
                        
                        galor_acid = new Fluid("galor_acid").setLuminosity(15).setDensity(40000).setTemperature(310).setViscosity(2500);
                        
                        FluidRegistry.registerFluid(galor_acid);
                        
                        materialGalorAcid = new MaterialLiquid(MapColor.emeraldColor);
                        
                        galor_acid_block = new GaloraidAcidBlock(galor_acid, materialGalorAcid).setUnlocalizedName("galor_acid");
                        
                        galor_acid.setUnlocalizedName(galor_acid.getUnlocalizedName());
                        
                        GameRegistry.registerBlock(galor_acid_block, Reference.MOD_ID + "_" + galor_acid.getUnlocalizedName().substring(5));
                        
                        //UnlocalizedName
                        galratech_glove = new GalraTechGlove().setUnlocalizedName("galratech_glove").setCreativeTab(GalraTechMod.GalraTab);
                        
                        //Items
                        
                        //Matériaux
                        lens = new Lens().setUnlocalizedName("lens").setCreativeTab(GalraTechMod.GalraTab);
                        
                        //Blocs
                        
                        //Déco
                        rusty_iron_block = new RustyMetalBlock(Material.iron).setUnlocalizedName("rusty_iron_block").setCreativeTab(GalraTechMod.GalraTab);
                        
                        //Fluids
                        
                        //Register
                        
                        //Fluids
                        
                        //Items
                        
                        GameRegistry.registerItem(galratech_glove, "galratech_glove");
                        
                        //Matériaux
                        GameRegistry.registerItem(lens, "lens");
                        
                        //Blocks
                        
                        //Déco
                        GameRegistry.registerBlock(rusty_iron_block, "rusty_iron_block");
                        
                        proxy.registerRenders();
                        }
                        
                        @EventHandler
                        public void init(FMLInitializationEvent event)
                        {
                        //Register Texture
                        //Blocks
                        
                        //Déco
                        proxy.registerBlockTexture(rusty_iron_block, "rusty_iron_block");
                        }
                        
                        @EventHandler
                        public void postInit(FMLPostInitializationEvent event)
                        {
                        
                        }
                        
                        private static Block getRegisteredBlock(String p_180383_0_)
                        {
                        return (Block)Block.blockRegistry.getObject(new ResourceLocation(p_180383_0_));
                        }
                        }
                        

                        Block

                        package eryah.galratech.liquids;
                        
                        import net.minecraft.block.Block;
                        import net.minecraft.block.material.Material;
                        import net.minecraft.creativetab.CreativeTabs;
                        import net.minecraft.util.BlockPos;
                        import net.minecraft.world.IBlockAccess;
                        import net.minecraft.world.World;
                        import net.minecraftforge.fluids.BlockFluidClassic;
                        import net.minecraftforge.fluids.Fluid;
                        import eryah.galratech.GalraTechMod;
                        
                        public class GaloraidAcidBlock extends BlockFluidClassic {
                        
                        public GaloraidAcidBlock(Fluid fluid, Material material) {
                        super(fluid, GalraTechMod.materialGalorAcid);
                        setCreativeTab(CreativeTabs.tabMisc);
                        }
                        
                        @Override
                        public boolean canDisplace(IBlockAccess world, BlockPos pos) {
                        if (world.getBlockState(pos).getBlock().getMaterial().isLiquid()) return false;
                        return super.canDisplace(world, pos);
                        }
                        
                        @Override
                        public boolean displaceIfPossible(World world, BlockPos pos) {
                        if (world.getBlockState(pos).getBlock().getMaterial().isLiquid()) return false;
                        return super.displaceIfPossible(world, pos);
                        }
                        
                        }
                        

                        Membre fantôme
                        Je développe maintenant un jeu sur UnrealEngine4


                        Contact :…

                        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

                          Et si tu fais un setBlock ça fonctionne ?

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

                            Alors désolé, je me suis rendu compte que c’est juste que le fluide est invisible
                            Je l’ai vu quand la nuit est tombé sur mon monde, et que de la lumière sortait de nulle part, c’était mon liquide, qui emet de la lumière donc, voila, désolé…
                            Je pensais que si un liquide n’a pas de texture, se sera le bloc moche, mais non, il est invisible.
                            Bn, maintenant je vais tenter d’appliquer la texture, ce qui me parrait super dur, vu que le bloc n’a aps de blockstates, juste un model

                            Membre fantôme
                            Je développe maintenant un jeu sur UnrealEngine4


                            Contact :…

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

                              Bon, je galère énormément avec le rendre du fluide…
                              Entre le crash dans crash report lors du world load, et le fluide invisible…
                              Personne ne sait comment render un fluide en 1.8 ?

                              Envoyé de mon SM-G357FZ en utilisant Tapatalk

                              Membre fantôme
                              Je développe maintenant un jeu sur UnrealEngine4


                              Contact :…

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

                                Et le code de l’eau/lave ?

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

                                  Bon, alors j’ai pris le code de l’eau/lave (BlockLiquid) qui est très mal foutue, j’ai l’impression, ou bien protégée… Mais la…
                                  J’ai copier les choses dont j’avais besoin, et ma classe resemble donc cela

                                  package eryah.galratech.liquids;
                                  
                                  import java.util.Iterator;
                                  import java.util.Random;
                                  
                                  import net.minecraft.block.Block;
                                  import net.minecraft.block.BlockDynamicLiquid;
                                  import net.minecraft.block.BlockStaticLiquid;
                                  import net.minecraft.block.material.Material;
                                  import net.minecraft.block.properties.IProperty;
                                  import net.minecraft.block.properties.PropertyInteger;
                                  import net.minecraft.block.state.BlockState;
                                  import net.minecraft.block.state.IBlockState;
                                  import net.minecraft.client.Minecraft;
                                  import net.minecraft.client.renderer.WorldRenderer;
                                  import net.minecraft.client.renderer.texture.TextureAtlasSprite;
                                  import net.minecraft.client.renderer.texture.TextureMap;
                                  import net.minecraft.client.resources.model.IBakedModel;
                                  import net.minecraft.creativetab.CreativeTabs;
                                  import net.minecraft.entity.Entity;
                                  import net.minecraft.init.Blocks;
                                  import net.minecraft.item.Item;
                                  import net.minecraft.util.AxisAlignedBB;
                                  import net.minecraft.util.BlockPos;
                                  import net.minecraft.util.EnumFacing;
                                  import net.minecraft.util.EnumParticleTypes;
                                  import net.minecraft.util.EnumWorldBlockLayer;
                                  import net.minecraft.util.ResourceLocation;
                                  import net.minecraft.util.Vec3;
                                  import net.minecraft.world.IBlockAccess;
                                  import net.minecraft.world.World;
                                  import net.minecraftforge.fluids.BlockFluidClassic;
                                  import net.minecraftforge.fluids.Fluid;
                                  import net.minecraftforge.fml.relauncher.Side;
                                  import net.minecraftforge.fml.relauncher.SideOnly;
                                  import eryah.galratech.GalraTechMod;
                                  
                                  public class GaloraidAcidBlock extends BlockFluidClassic {
                                  
                                  public static final PropertyInteger LEVEL = PropertyInteger.create("level", 0, 15);
                                  
                                  public GaloraidAcidBlock(Fluid fluid, Material material) {
                                  super(fluid, GalraTechMod.materialGalorAcid);
                                  setCreativeTab(CreativeTabs.tabMisc);
                                  this.setDefaultState(this.blockState.getBaseState().withProperty(LEVEL, Integer.valueOf(0)));
                                  }
                                  
                                  @Override
                                  public boolean canDisplace(IBlockAccess world, BlockPos pos) {
                                  if (world.getBlockState(pos).getBlock().getMaterial().isLiquid()) return false;
                                  return super.canDisplace(world, pos);
                                  }
                                  
                                  @Override
                                  public boolean displaceIfPossible(World world, BlockPos pos) {
                                  if (world.getBlockState(pos).getBlock().getMaterial().isLiquid()) return false;
                                  return super.displaceIfPossible(world, pos);
                                  }
                                  
                                  @Override
                                  public int getRenderType() {
                                  // TODO Auto-generated method stub
                                  return 1;
                                  }
                                  
                                  protected int getLevel(IBlockAccess worldIn, BlockPos pos)
                                  {
                                  return worldIn.getBlockState(pos).getBlock().getMaterial() == this.blockMaterial ? ((Integer)worldIn.getBlockState(pos).getValue(LEVEL)).intValue() : -1;
                                  }
                                  
                                  protected int getEffectiveFlowDecay(IBlockAccess worldIn, BlockPos pos)
                                  {
                                  int i = this.getLevel(worldIn, pos);
                                  return i >= 8 ? 0 : i;
                                  }
                                  
                                  public boolean isFullCube()
                                  {
                                  return false;
                                  }
                                  
                                  public boolean isOpaqueCube()
                                  {
                                  return false;
                                  }
                                  
                                  public boolean canCollideCheck(IBlockState state, boolean hitIfLiquid)
                                  {
                                  return hitIfLiquid && ((Integer)state.getValue(LEVEL)).intValue() == 0;
                                  }
                                  
                                  @SideOnly(Side.CLIENT)
                                  public boolean shouldSideBeRendered(IBlockAccess worldIn, BlockPos pos, EnumFacing side)
                                  {
                                  return worldIn.getBlockState(pos).getBlock().getMaterial() == this.blockMaterial ? false : (side == EnumFacing.UP ? true : super.shouldSideBeRendered(worldIn, pos, side));
                                  }
                                  
                                  public AxisAlignedBB getCollisionBoundingBox(World worldIn, BlockPos pos, IBlockState state)
                                  {
                                  return null;
                                  }
                                  
                                  @SideOnly(Side.CLIENT)
                                  public boolean func_176364_g(IBlockAccess p_176364_1_, BlockPos p_176364_2_)
                                  {
                                  for (int i = -1; i <= 1; ++i)
                                  {
                                  for (int j = -1; j <= 1; ++j)
                                  {
                                  IBlockState iblockstate = p_176364_1_.getBlockState(p_176364_2_.add(i, 0, j));
                                  Block block = iblockstate.getBlock();
                                  Material material = block.getMaterial();
                                  
                                  if (material != this.blockMaterial && !block.isFullBlock())
                                  {
                                  return true;
                                  }
                                  }
                                  }
                                  
                                  return false;
                                  }
                                  
                                  public Item getItemDropped(IBlockState state, Random rand, int fortune)
                                  {
                                  return null;
                                  }
                                  
                                  /**
                                  * Returns the quantity of items to drop on block destruction.
                                  */
                                  public int quantityDropped(Random random)
                                  {
                                  return 0;
                                  }
                                  
                                  public Vec3 getFlowVector(IBlockAccess worldIn, BlockPos pos)
                                  {
                                  Vec3 vec3 = new Vec3(0.0D, 0.0D, 0.0D);
                                  int i = this.getEffectiveFlowDecay(worldIn, pos);
                                  Iterator iterator = EnumFacing.Plane.HORIZONTAL.iterator();
                                  EnumFacing enumfacing;
                                  BlockPos blockpos1;
                                  
                                  while (iterator.hasNext())
                                  {
                                  enumfacing = (EnumFacing)iterator.next();
                                  blockpos1 = pos.offset(enumfacing);
                                  int j = this.getEffectiveFlowDecay(worldIn, blockpos1);
                                  int k;
                                  
                                  if (j < 0)
                                  {
                                  if (!worldIn.getBlockState(blockpos1).getBlock().getMaterial().blocksMovement())
                                  {
                                  j = this.getEffectiveFlowDecay(worldIn, blockpos1.down());
                                  
                                  if (j >= 0)
                                  {
                                  k = j - (i - 8);
                                  vec3 = vec3.addVector((double)((blockpos1.getX() - pos.getX()) * k), (double)((blockpos1.getY() - pos.getY()) * k), (double)((blockpos1.getZ() - pos.getZ()) * k));
                                  }
                                  }
                                  }
                                  else if (j >= 0)
                                  {
                                  k = j - i;
                                  vec3 = vec3.addVector((double)((blockpos1.getX() - pos.getX()) * k), (double)((blockpos1.getY() - pos.getY()) * k), (double)((blockpos1.getZ() - pos.getZ()) * k));
                                  }
                                  }
                                  
                                  if (((Integer)worldIn.getBlockState(pos).getValue(LEVEL)).intValue() >= 8)
                                  {
                                  iterator = EnumFacing.Plane.HORIZONTAL.iterator();
                                  
                                  while (iterator.hasNext())
                                  {
                                  enumfacing = (EnumFacing)iterator.next();
                                  blockpos1 = pos.offset(enumfacing);
                                  
                                  if (this.isBlockSolid(worldIn, blockpos1, enumfacing) || this.isBlockSolid(worldIn, blockpos1.up(), enumfacing))
                                  {
                                  vec3 = vec3.normalize().addVector(0.0D, -6.0D, 0.0D);
                                  break;
                                  }
                                  }
                                  }
                                  
                                  return vec3.normalize();
                                  }
                                  
                                  public Vec3 modifyAcceleration(World worldIn, BlockPos pos, Entity entityIn, Vec3 motion)
                                  {
                                  return motion.add(this.getFlowVector(worldIn, pos));
                                  }
                                  
                                  public void onBlockAdded(World worldIn, BlockPos pos, IBlockState state)
                                  {
                                  this.checkForMixing(worldIn, pos, state);
                                  }
                                  
                                  @SideOnly(Side.CLIENT)
                                  public static double getFlowDirection(IBlockAccess worldIn, BlockPos pos, Material materialIn)
                                  {
                                  Vec3 vec3 = getFlowingBlock(materialIn).getFlowVector(worldIn, pos);
                                  return vec3.xCoord == 0.0D && vec3.zCoord == 0.0D ? -1000.0D : Math.atan2(vec3.zCoord, vec3.xCoord) - (Math.PI / 2D);
                                  }
                                  
                                  public void onNeighborBlockChange(World worldIn, BlockPos pos, IBlockState state, Block neighborBlock)
                                  {
                                  this.checkForMixing(worldIn, pos, state);
                                  }
                                  
                                  public boolean checkForMixing(World worldIn, BlockPos pos, IBlockState state)
                                  {
                                  if (this.blockMaterial == Material.lava)
                                  {
                                  boolean flag = false;
                                  EnumFacing[] aenumfacing = EnumFacing.values();
                                  int i = aenumfacing.length;
                                  
                                  for (int j = 0; j < i; ++j)
                                  {
                                  EnumFacing enumfacing = aenumfacing[j];
                                  
                                  if (enumfacing != EnumFacing.DOWN && worldIn.getBlockState(pos.offset(enumfacing)).getBlock().getMaterial() == Material.water)
                                  {
                                  flag = true;
                                  break;
                                  }
                                  }
                                  
                                  if (flag)
                                  {
                                  Integer integer = (Integer)state.getValue(LEVEL);
                                  
                                  if (integer.intValue() == 0)
                                  {
                                  worldIn.setBlockState(pos, Blocks.obsidian.getDefaultState());
                                  this.triggerMixEffects(worldIn, pos);
                                  return true;
                                  }
                                  
                                  if (integer.intValue() <= 4)
                                  {
                                  worldIn.setBlockState(pos, Blocks.cobblestone.getDefaultState());
                                  this.triggerMixEffects(worldIn, pos);
                                  return true;
                                  }
                                  }
                                  }
                                  
                                  return false;
                                  }
                                  
                                  protected void triggerMixEffects(World worldIn, BlockPos pos)
                                  {
                                  double d0 = (double)pos.getX();
                                  double d1 = (double)pos.getY();
                                  double d2 = (double)pos.getZ();
                                  worldIn.playSoundEffect(d0 + 0.5D, d1 + 0.5D, d2 + 0.5D, "random.fizz", 0.5F, 2.6F + (worldIn.rand.nextFloat() - worldIn.rand.nextFloat()) * 0.8F);
                                  
                                  for (int i = 0; i < 8; ++i)
                                  {
                                  worldIn.spawnParticle(EnumParticleTypes.SMOKE_LARGE, d0 + Math.random(), d1 + 1.2D, d2 + Math.random(), 0.0D, 0.0D, 0.0D, new int[0]);
                                  }
                                  }
                                  
                                  /**
                                  * Convert the given metadata into a BlockState for this Block
                                  */
                                  public IBlockState getStateFromMeta(int meta)
                                  {
                                  return this.getDefaultState().withProperty(LEVEL, Integer.valueOf(meta));
                                  }
                                  
                                  /**
                                  * Convert the BlockState into the correct metadata value
                                  */
                                  public int getMetaFromState(IBlockState state)
                                  {
                                  return ((Integer)state.getValue(LEVEL)).intValue();
                                  }
                                  
                                  protected BlockState createBlockState()
                                  {
                                  return new BlockState(this, new IProperty[] {LEVEL});
                                  }
                                  
                                  public static BlockDynamicLiquid getFlowingBlock(Material materialIn)
                                  {
                                  if(materialIn == GalraTechMod.materialGalorAcid) {
                                  return GalraTechMod.galor_acid_flowing;
                                  }
                                  else
                                  {
                                  throw new IllegalArgumentException("Invalid material");
                                  }
                                  }
                                  
                                  public static BlockStaticLiquid getStaticBlock(Material materialIn)
                                  {
                                  if(materialIn == GalraTechMod.materialGalorAcid) {
                                  return GalraTechMod.galor_acid_static;
                                  }
                                  else
                                  {
                                  throw new IllegalArgumentException("Invalid material");
                                  }
                                  }
                                  }
                                  

                                  Et j’ai une erreur ici

                                  @SideOnly(Side.CLIENT)
                                  public static double getFlowDirection(IBlockAccess worldIn, BlockPos pos, Material materialIn)
                                  {
                                  Vec3 vec3 = getFlowingBlock(materialIn).***getFlowVector***(worldIn, pos);
                                  return vec3.xCoord == 0.0D && vec3.zCoord == 0.0D ? -1000.0D : Math.atan2(vec3.zCoord, vec3.xCoord) - (Math.PI / 2D);
                                  }
                                  

                                  The method getFlowVector(IBlockAccess, BlockPos) from the type BlockLiquid is not visible
                                  Que faire ?

                                  Membre fantôme
                                  Je développe maintenant un jeu sur UnrealEngine4


                                  Contact :…

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

                                    C’est une méthode statique, donc tu peux appeler celui de l’eau

                                    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
                                    • 1 / 1
                                    • Premier message
                                      Dernier message
                                    Design by Woryk
                                    ContactMentions Légales

                                    MINECRAFT FORGE FRANCE © 2024

                                    Powered by NodeBB