- 397
- 8
- 33
Я в растерянности... Сделал такой вот забор, но он "затемнен", и никак это не убрать. Хотя нет, как, но тогда он тупо светится ночью... Что делать?
П.С. Код для забора взят из BlockFence
П.С. Код для забора взят из BlockFence
Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Эх, да ничего там классного, 4 разных забора сделал, вот и красиво(Классный забор... Поделись сорцами : )
Ну выложи исходник, плиз)MrUser написал(а):Эх, да ничего там классного, 4 разных забора сделал, вот и красиво(Классный забор... Поделись сорцами : )
Да ради Бога)[font=Verdana, Helvetica, Arial, sans-serif]Ну выложи исходник, плиз)[/font]
public class забор extends Block {
public забор(int par1) {
super(par1, Material.rock);
setUnlocalizedName("забор");
}
public void addCollisionBoxesToList(World par1World, int par2, int par3, int par4, AxisAlignedBB par5AxisAlignedBB, List par6List, Entity par7Entity)
{
boolean flag = this.canConnectFenceTo(par1World, par2, par3, par4 - 1);
boolean flag1 = this.canConnectFenceTo(par1World, par2, par3, par4 + 1);
boolean flag2 = this.canConnectFenceTo(par1World, par2 - 1, par3, par4);
boolean flag3 = this.canConnectFenceTo(par1World, par2 + 1, par3, par4);
float f = 0.375F;
float f1 = 0.625F;
float f2 = 0.375F;
float f3 = 0.625F;
if (flag)
{
f2 = 0.0F;
}
if (flag1)
{
f3 = 1.0F;
}
if (flag || flag1)
{
this.setBlockBounds(f, 0.0F, f2, f1, 1.5F, f3);
super.addCollisionBoxesToList(par1World, par2, par3, par4, par5AxisAlignedBB, par6List, par7Entity);
}
f2 = 0.375F;
f3 = 0.625F;
if (flag2)
{
f = 0.0F;
}
if (flag3)
{
f1 = 1.0F;
}
if (flag2 || flag3 || !flag && !flag1)
{
this.setBlockBounds(f, 0.0F, f2, f1, 1.5F, f3);
super.addCollisionBoxesToList(par1World, par2, par3, par4, par5AxisAlignedBB, par6List, par7Entity);
}
if (flag)
{
f2 = 0.0F;
}
if (flag1)
{
f3 = 1.0F;
}
this.setBlockBounds(f, 0.0F, f2, f1, 1.0F, f3);
}
public void setBlockBoundsBasedOnState(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)
{
boolean flag = this.canConnectFenceTo(par1IBlockAccess, par2, par3, par4 - 1);
boolean flag1 = this.canConnectFenceTo(par1IBlockAccess, par2, par3, par4 + 1);
boolean flag2 = this.canConnectFenceTo(par1IBlockAccess, par2 - 1, par3, par4);
boolean flag3 = this.canConnectFenceTo(par1IBlockAccess, par2 + 1, par3, par4);
float f = 0.375F;
float f1 = 0.625F;
float f2 = 0.375F;
float f3 = 0.625F;
if (flag)
{
f2 = 0.0F;
}
if (flag1)
{
f3 = 1.0F;
}
if (flag2)
{
f = 0.0F;
}
if (flag3)
{
f1 = 1.0F;
}
this.setBlockBounds(f, 0.0F, f2, f1, 1.0F, f3);
}
public boolean canConnectFenceTo(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)
{
int l = par1IBlockAccess.getBlockId(par2, par3, par4);
if (l != this.blockID && l != Block.fenceGate.blockID)
{
Block block = Block.blocksList[l];
return block != null && block.blockMaterial.isOpaque() && block.renderAsNormalBlock() ? block.blockMaterial != Material.pumpkin : false;
}
else
{
return true;
}
}
public boolean isOpaqueCube()
{
return false;
}
@SideOnly(Side.CLIENT)
public void registerIcons(IconRegister tex) {
this.blockIcon = tex.registerIcon("иконка");
}
}