| 18 | staticfn void miniwalk(coordxy, coordxy); |
| 19 | |
| 20 | staticfn void |
| 21 | roguejoin(coordxy x1, coordxy y1, coordxy x2, coordxy y2, int horiz) |
| 22 | { |
| 23 | coordxy x, y, middle; |
| 24 | |
| 25 | if (horiz) { |
| 26 | middle = x1 + rn2(x2 - x1 + 1); |
| 27 | for (x = min(x1, middle); x <= max(x1, middle); x++) |
| 28 | corr(x, y1); |
| 29 | for (y = min(y1, y2); y <= max(y1, y2); y++) |
| 30 | corr(middle, y); |
| 31 | for (x = min(middle, x2); x <= max(middle, x2); x++) |
| 32 | corr(x, y2); |
| 33 | } else { |
| 34 | middle = y1 + rn2(y2 - y1 + 1); |
| 35 | for (y = min(y1, middle); y <= max(y1, middle); y++) |
| 36 | corr(x1, y); |
| 37 | for (x = min(x1, x2); x <= max(x1, x2); x++) |
| 38 | corr(x, middle); |
| 39 | for (y = min(middle, y2); y <= max(middle, y2); y++) |
| 40 | corr(x2, y); |
| 41 | } |
| 42 | } |
| 43 | |
| 44 | staticfn void |
| 45 | roguecorr(coordxy x, coordxy y, int dir) |