Beispiel #1
0
 public void PaintFastAvoidWater(Terrain terrain, int x, int y, int z, int minX, int maxX, int minY, int maxY, int minZ, int maxZ)
 {
     Cell[] cells = Cells;
     for (int i = 0; i < cells.Length; i++)
     {
         Cell cell = cells[i];
         int  num  = cell.X + x;
         int  num2 = cell.Y + y;
         int  num3 = cell.Z + z;
         if (num >= minX && num < maxX && num2 >= minY && num2 < maxY && num3 >= minZ && num3 < maxZ && terrain.GetCellContentsFast(num, num2, num3) != 18 && terrain.GetCellContents(num - 1, num2, num3) != 18 && terrain.GetCellContents(num + 1, num2, num3) != 18 && terrain.GetCellContents(num, num2, num3 - 1) != 18 && terrain.GetCellContents(num, num2, num3 + 1) != 18 && terrain.GetCellContentsFast(num, num2 + 1, num3) != 18)
         {
             terrain.SetCellValueFast(num, num2, num3, cell.Value);
         }
     }
 }