public void SetHeightsDelayLOD(int xBase, int yBase, float[,] heights)
{
if (heights == null)
{
throw new ArgumentNullException("heights");
}
int length = heights.GetLength(0);
int width = heights.GetLength(1);
if (((xBase < 0) || ((xBase + width) < 0)) || ((xBase + width) > this.heightmapWidth))
{
object[] args = new object[] { xBase, xBase + width, this.heightmapWidth };
throw new ArgumentException(UnityString.Format("X out of bounds - trying to set {0}-{1} but the terrain ranges from 0-{2}", args));
}
if (((yBase < 0) || ((yBase + length) < 0)) || ((yBase + length) > this.heightmapHeight))
{
object[] objArray2 = new object[] { yBase, yBase + length, this.heightmapHeight };
throw new ArgumentException(UnityString.Format("Y out of bounds - trying to set {0}-{1} but the terrain ranges from 0-{2}", objArray2));
}
this.Internal_SetHeightsDelayLOD(xBase, yBase, width, length, heights);
}