Метаданная всегда равна нулю[1.7.10]

156
0
Здравствуйте уважаемые форумчане, у меня недавно возникла небольшая проблема. Хочу сделать поворот своей кастомной модели при постановке блока в зависимости от направления взгляда игрока. Собственно, саму функцию я нашел и нашел способ, как записать результат функции в метаданные. Но при вызове в классе рендера метаданной блока по координатам всегда возвращает ноль. Перерыл уже все форумы, смотрел код самого майна - ничего не помогло. Код куска рендера и блока прилагается
Класс блока
Код:
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase living, ItemStack stack) {
        byte b0 = 0;
        int l = MathHelper.floor_double((double)(living.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;

        if (l == 0)
        {
            b0 = 2;
        }

        if (l == 1)
        {
            b0 = 5;
        }

        if (l == 2)
        {
            b0 = 3;
        }

        if (l == 3)
        {
            b0 = 4;
        }

        world.setBlockMetadataWithNotify(x, y, z, (int)b0, 2);
    }

Класс рендера
Код:
public void renderTileEntityAt(TileEntityWindmill te, double x, double y, double z, float f) {
        int i = 0;

        if (te.hasWorldObj()) {
            i = te.getBlockMetadata();
        }
        
        System.out.println(i);//дебаг
        
        GL11.glPushMatrix();
        GL11.glTranslated(x, y, z);
        GL11.glTranslatef(0.5F, 0.5F, 0.5F);
        
        bindTexture(texture);
        model.renderAll();
        GL11.glPopMatrix();
    }
    
    @Override
    public void renderTileEntityAt(TileEntity te, double x, double y, double z, float f) {
        this.renderTileEntityAt((TileEntityWindmill)te, x, y, z, f);
    }
 
Faik-man, странно но у меня метадата даёт разное значение.
Liahim, нет не глупость, это лучше использовать как последний вариант.
 
Назад
Сверху