unicorn horn produced by revived monster will polymorph as if non-magic
stone-to-flesh on any golem statue or golem figurine creates flesh golem
stone-to-flesh which activates shop-owned figurine entails shop charges
+make giants be less likely to be randomly generated in Sokoban
Platform- and/or Interface-Specific Fixes
*/
int tryct = 0; /* maybe there are no good choices */
struct monst fakemon;
+
do {
if(!(ptr = rndmonst())) {
#ifdef DEBUG
return((struct monst *) 0); /* no more monsters! */
}
fakemon.data = ptr; /* set up for goodpos */
- } while(!goodpos(x, y, &fakemon, gpflags) && tryct++ < 50);
+ } while (++tryct <= 50 &&
+ /* in Sokoban, don't accept a giant on first try;
+ after that, boulder carriers are fair game */
+ ((tryct == 1 && throws_rocks(ptr) && In_sokoban(&u.uz)) ||
+ !goodpos(x, y, &fakemon, gpflags)));
mndx = monsndx(ptr);
}
(void) propagate(mndx, countbirth, FALSE);