private void InterfaceLowerTerrain(Object[] args)
{
int x, y, z;
int zo = (int)args[0];
for (x = 0; x < m_channel.Width; x++)
{
for (y = 0; y < m_channel.Length; y++)
{
// Move voxels down X units.
for(z=0;z<m_channel.Height;z++)
{
// just overwrite stuff that would be moved out of bounds
if(z-zo < 0)
continue;
m_channel.SetVoxel(x, y, z-zo, m_channel.GetVoxel(x,y,z));
}
}
}
CheckForTerrainUpdates();
}