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.
return side == 1 ? rcc.AsphaltLine.getIcon(0, 0) : super.getIcon(side, meta);
return side == 1 ? top : super.getIcon(side, meta);
if (side == 0) return bottom; - низ,timaxa007 написал(а):Код:@SideOnly(Side.CLIENT) public IIcon getIcon(int side, int meta) { if (side == 0) return bottom; else if (side == 1) return top; else return side; }
timaxa007 написал(а):Скорее
не
аКод:return side == 1 ? rcc.AsphaltLine.getIcon(0, 0) : super.getIcon(side, meta);
Но я не знаю как ты именно хочешь.Код:return side == 1 ? top : super.getIcon(side, meta);
Но я скидывал по-лучше пример:
if (side == 0) return bottom; - низ,timaxa007 написал(а):Код:@SideOnly(Side.CLIENT) public IIcon getIcon(int side, int meta) { if (side == 0) return bottom; else if (side == 1) return top; else return side; }
else if (side == 1) return top; - верх,
else return side; - в остальных случаях, т.е. все четыре оставшихся сторон блока.
public void onBlockPlacedBy(World world, int x, int y, int z,EntityLivingBase player, ItemStack item)
{
int l = MathHelper.floor_double((double)((player.rotationYaw + 180.0F) * 8F / 360.0F) + 0.5D) & 7;
world.setBlockMetadataWithNotify(x, y, z, l, 2);
}
timaxa007 написал(а):Учитывая, что у тебя 8 поворотов, то думаю не как. Можно на 4 стороны, нужно смотреть пример от двери. Только там flip используется, а тебе нужно будет поворачивать, типа по 90 градусов и сделать две текстуры: на одной будет прямая линия, на другой диагональная.
timaxa007 написал(а):Переменная top превратить его в массив и в регистрации указать, что массив будет длиной 8 и во все 8 дать значении каждой текстуры. А в методе getIcon по метадате возращять верхушке определённый объект из массива top.
timaxa007 написал(а):Для top всё то-же, но как массив. IIcon[] top = new IIcon[8];
IIcon[] top = new IIcon[7];{
top[0] = (IIcon) new ResourceLocation(rcc.MOD_ID,"textures/block/asphaltL_0");
top[1] = (IIcon) new ResourceLocation(rcc.MOD_ID,"textures/block/asphaltL_1");
top[2] = (IIcon) new ResourceLocation(rcc.MOD_ID,"textures/block/asphaltL_2");
top[3] = (IIcon) new ResourceLocation(rcc.MOD_ID,"textures/block/asphaltL_3");
}
timaxa007 написал(а):Эм... Не думаю, что это во-обще заработает.
@SideOnly(Side.CLIENT)
private IIcon[] top = new IIcon[8];
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister ir) {
for (int i = 0; i < top.length; ++i)
top[i] = ir.registerIcon(rcc.MOD_ID +":asphaltL_" + i);
}
timaxa007 написал(а):Код:@SideOnly(Side.CLIENT) private IIcon[] top = new IIcon[8]; @SideOnly(Side.CLIENT) public void registerBlockIcons(IIconRegister ir) { for (int i = 0; i < top.length; ++i) top[i] = ir.registerIcon(rcc.MOD_ID +":asphaltL_" + i); }