In summon_specific():
The last test should be (i == 60).
Code:
/* Look for a location, allow up to 4 squares away */
for (i = 0; i < 60; ++i)
{
/* Pick a distance */
int d = (i / 15) + 1;
/* Pick a location */
scatter(&y, &x, y1, x1, d, 0);
/* Require "empty" floor grid */
if (!cave_empty_bold(y, x)) continue;
/* Hack -- no summon on glyph of warding */
if (cave->feat[y][x] == FEAT_GLYPH) continue;
/* Okay */
break;
}
/* Failure */
if (i == 20) return (0);
Comment