• Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    Block direction 1 seul texture

    Sans suite
    1.7.10
    2
    4
    790
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • darkvince37
      darkvince37 last edited by

      Bonjour,

      Je cherche a refaire la Terracotta de la nouvelle snapshot. En gros je voudrai créer un block qui s’oriente avec 1 seul texture. J’ai essayé de regardé tous les block orientable (Four, Bois, Citrouille…) sauf que rient de tous sa na fonctionné. Donc la je suis revenu au code normal sans bien avancé.

      package fr.darkvince.ultrav2.snapshot;
      
      import javax.swing.Icon;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.block.Block;
      import net.minecraft.block.BlockBush;
      import net.minecraft.block.BlockContainer;
      import net.minecraft.block.BlockDirectional;
      import net.minecraft.block.material.Material;
      import net.minecraft.client.renderer.texture.IIconRegister;
      import net.minecraft.entity.EntityLivingBase;
      import net.minecraft.init.Blocks;
      import net.minecraft.item.ItemStack;
      import net.minecraft.nbt.NBTTagCompound;
      import net.minecraft.tileentity.TileEntity;
      import net.minecraft.tileentity.TileEntityFurnace;
      import net.minecraft.util.Facing;
      import net.minecraft.util.IIcon;
      import net.minecraft.util.MathHelper;
      import net.minecraft.world.IBlockAccess;
      import net.minecraft.world.World;
      import net.minecraftforge.common.util.ForgeDirection;
      
      public class BlockTerracotta extends BlockDirectional
      {
      
      public BlockTerracotta(Material p_i45401_1_) {
      super(p_i45401_1_);
      // TODO Auto-generated constructor stub
      }
      
      public void onBlockPlacedBy(World par1World, int x, int y, int z, EntityLivingBase par5EntityLivingBase, ItemStack par6ItemStack)
         {
             int whichDirectionFacing = MathHelper.floor_double((double)(par5EntityLivingBase.rotationYaw * 4.0F / 360.0F) + 2.5D) & 3;
             par1World.setBlockMetadataWithNotify(x, y, z, whichDirectionFacing, 2);
         }
      
      }
      
      1 Reply Last reply Reply Quote 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

        Salut,
        Il faire comme la porte, générer d’autres textures mais avec une rotation à partir du même fichier avec les IconFlipped

        1 Reply Last reply Reply Quote 0
        • darkvince37
          darkvince37 last edited by

          @‘robin4002’:

          Salut,
          Il faire comme la porte, générer d’autres textures mais avec une rotation à partir du même fichier avec les IconFlipped

          Merci voilà se que j’ai trouvé est ce que c’est sa avant que je continu

          package fr.darkvince.ultrav2.snapshot;
          
          import javax.swing.Icon;
          
          import cpw.mods.fml.relauncher.Side;
          import cpw.mods.fml.relauncher.SideOnly;
          import net.minecraft.block.Block;
          import net.minecraft.block.BlockBush;
          import net.minecraft.block.BlockContainer;
          import net.minecraft.block.BlockDirectional;
          import net.minecraft.block.material.Material;
          import net.minecraft.client.renderer.IconFlipped;
          import net.minecraft.client.renderer.texture.IIconRegister;
          import net.minecraft.entity.EntityLivingBase;
          import net.minecraft.init.Blocks;
          import net.minecraft.item.ItemStack;
          import net.minecraft.nbt.NBTTagCompound;
          import net.minecraft.tileentity.TileEntity;
          import net.minecraft.tileentity.TileEntityFurnace;
          import net.minecraft.util.Facing;
          import net.minecraft.util.IIcon;
          import net.minecraft.util.MathHelper;
          import net.minecraft.world.IBlockAccess;
          import net.minecraft.world.World;
          import net.minecraftforge.common.util.ForgeDirection;
          
          public class BlockTerracotta extends BlockDirectional
          {
          public IIcon topDoorIcon;
          public IIcon[] flippedIcons = new IIcon[2];
          
          public BlockTerracotta(Material p_i45401_1_) {
          super(p_i45401_1_);
          // TODO Auto-generated constructor stub
          }
          
          public IIcon getBlockTexture(IBlockAccess par1IBlockAccess, int par2,
          int par3, int par4, int par5) {
          if (par5 == 1 || par5 == 0) {
          return this.blockIcon;
          }
          int meta = func_150012_g(par1IBlockAccess, par2, par3, par4);
          boolean flag = (meta & 4) != 0;
          int halfMeta = meta & 3;
          boolean flipped = false;
          
          if (flag) {
          if (halfMeta == 0 && par5 == 2)
          flipped = !flipped;
          else if (halfMeta == 1 && par5 == 5)
          flipped = !flipped;
          else if (halfMeta == 2 && par5 == 3)
          flipped = !flipped;
          else if (halfMeta == 3 && par5 == 4)
          flipped = !flipped;
          } else {
          if (halfMeta == 0 && par5 == 5)
          flipped = !flipped;
          else if (halfMeta == 1 && par5 == 3)
          flipped = !flipped;
          else if (halfMeta == 2 && par5 == 4)
          flipped = !flipped;
          else if (halfMeta == 3 && par5 == 2)
          flipped = !flipped;
          if ((meta & 16) != 0)
          flipped = !flipped;
          }
          
          if (flipped)
          return flippedIcons[(meta & 8) != 0 ? 1 : 0];
          else
          return (meta & 8) != 0 ? this.topDoorIcon : this.blockIcon;
          }
          
          private int func_150012_g(IBlockAccess par1iBlockAccess, int par2, int par3, int par4) {
          // TODO Auto-generated method stub
          return 0;
          }
          
          public IIcon getIcon(int par1, int par2) {
          return this.blockIcon;
          }
          
          public void registerIcons(IIconRegister iconRegister) {
          this.blockIcon = iconRegister.registerIcon(":ultrav2:glazed_terracotta_black");
          this.topDoorIcon = iconRegister.registerIcon("ultrav2:glazed_terracotta_black");
          this.flippedIcons[0] = new IconFlipped(blockIcon, true, false);
          this.flippedIcons[1] = new IconFlipped(topDoorIcon, true, false);
          }
          
          }
          
          1 Reply Last reply Reply Quote 0
          • robin4002
            robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

            Alors j’ai parlé du code de la porte juste pour que tu vois le IconFlipped, pour le reste faut pas tout reprendre bêtement, il faut adapter à la situation.

            1 Reply Last reply Reply Quote 0
            • 1 / 1
            • First post
              Last post
            Design by Woryk
            Contact / Mentions Légales

            MINECRAFT FORGE FRANCE © 2018

            Powered by NodeBB