private void drawRoad(int x0, int y0, int x1, int y1)
    {
        boolean xFirst = random.nextBoolean();

        if (xFirst)
        {
            while (x0 > x1)
            {
                data[x0][y0] = 0;
                level[x0--][y0] = TILE_ROAD;
            }
            while (x0 < x1)
            {
                data[x0][y0] = 0;
                level[x0++][y0] = TILE_ROAD;
            }
        }
        while (y0 > y1)
        {
            data[x0][y0] = 0;
            level[x0][y0--] = TILE_ROAD;
        }
        while (y0 < y1)
        {
            data[x0][y0] = 0;
            level[x0][y0++] = TILE_ROAD;
        }
        if (!xFirst)
        {
            while (x0 > x1)
            {
                data[x0][y0] = 0;
                level[x0--][y0] = TILE_ROAD;
            }
            while (x0 < x1)
            {
                data[x0][y0] = 0;
                level[x0++][y0] = TILE_ROAD;
            }
        }
    }