@Override
    public void onBlockPlacedBy(EntityLivingBase entityliving) {
        if (entityliving == null)
            return;
        if (this instanceof ITrackReversable) {
            int dir = MathHelper.floor_double((double) ((entityliving.rotationYaw * 4F) / 360F) + 0.5D) & 3;
            ((ITrackReversable) this).setReversed(dir == 0 || dir == 1);
        }
        markBlockNeedsUpdate();
    }