Fix two cases of missed conversion of an alignment to an align mask.
Change induced_align()'s return type to unsigned int since it returns
an align mask (unsigned), not an align type (signed).
extern void goto_hell(boolean, boolean);
extern void assign_level(d_level *, d_level *);
extern void assign_rnd_level(d_level *, d_level *, int);
-extern int induced_align(int);
+extern unsigned int induced_align(int);
extern boolean Invocation_lev(d_level *);
extern xchar level_difficulty(void);
extern schar lev_by_name(const char *);
dest->dlevel = 1;
}
-int
+/* return an alignment mask */
+unsigned int
induced_align(int pct)
{
s_level *lev = Is_special(&u.uz);
struct monst *mtmp;
xchar x, y;
char class;
- aligntyp amask;
+ unsigned int amask;
coord cc;
struct permonst *pm;
unsigned g_mvflags;
? Align2amask(noncoalignment(u.ualignbase[A_ORIGINAL]))
: (m->align == AM_SPLEV_RANDOM)
? induced_align(80)
- : m->align;
+ : Align2amask(m->align);
if (!class)
pm = (struct permonst *) 0;
{
schar sproom;
xchar x = -1, y = -1;
- aligntyp amask;
+ unsigned int amask;
boolean croom_is_temple = TRUE;
int oldtyp;
? Align2amask(noncoalignment(u.ualignbase[A_ORIGINAL]))
: (a->align == AM_SPLEV_RANDOM)
? induced_align(80)
- : a->align;
+ : Align2amask(a->align);
levl[x][y].typ = ALTAR;
levl[x][y].altarmask = amask;