public void CompressLight(ref byte[] lightdata, bool sky, int x, int y, int z, byte val)
{
int index = GetBlockIndex(x, y, z);
int lightval = lightdata[index >> 1];
if ((y % 2) !=0)
{
if (sky)
{
lightval &= 0x0f;
lightval |= val << 4;
} else {
lightval &= 0xf;
lightval |= val << 4;
}
}
else
{
if (sky)
{
lightval &= 0xf0;
lightval |= val;
} else {
lightval &= 0xf0;
lightval |= val;
}
}
lightdata[index >> 1] = val;
}