Fix align type mixup wth align mask
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).
This commit is contained in:
@@ -621,7 +621,7 @@ extern void find_hell(d_level *);
|
|||||||
extern void goto_hell(boolean, boolean);
|
extern void goto_hell(boolean, boolean);
|
||||||
extern void assign_level(d_level *, d_level *);
|
extern void assign_level(d_level *, d_level *);
|
||||||
extern void assign_rnd_level(d_level *, d_level *, int);
|
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 boolean Invocation_lev(d_level *);
|
||||||
extern xchar level_difficulty(void);
|
extern xchar level_difficulty(void);
|
||||||
extern schar lev_by_name(const char *);
|
extern schar lev_by_name(const char *);
|
||||||
|
|||||||
@@ -1865,7 +1865,8 @@ assign_rnd_level(d_level *dest, d_level *src, int range)
|
|||||||
dest->dlevel = 1;
|
dest->dlevel = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
/* return an alignment mask */
|
||||||
|
unsigned int
|
||||||
induced_align(int pct)
|
induced_align(int pct)
|
||||||
{
|
{
|
||||||
s_level *lev = Is_special(&u.uz);
|
s_level *lev = Is_special(&u.uz);
|
||||||
|
|||||||
@@ -1769,7 +1769,7 @@ create_monster(monster* m, struct mkroom* croom)
|
|||||||
struct monst *mtmp;
|
struct monst *mtmp;
|
||||||
xchar x, y;
|
xchar x, y;
|
||||||
char class;
|
char class;
|
||||||
aligntyp amask;
|
unsigned int amask;
|
||||||
coord cc;
|
coord cc;
|
||||||
struct permonst *pm;
|
struct permonst *pm;
|
||||||
unsigned g_mvflags;
|
unsigned g_mvflags;
|
||||||
@@ -1788,7 +1788,7 @@ create_monster(monster* m, struct mkroom* croom)
|
|||||||
? Align2amask(noncoalignment(u.ualignbase[A_ORIGINAL]))
|
? Align2amask(noncoalignment(u.ualignbase[A_ORIGINAL]))
|
||||||
: (m->align == AM_SPLEV_RANDOM)
|
: (m->align == AM_SPLEV_RANDOM)
|
||||||
? induced_align(80)
|
? induced_align(80)
|
||||||
: m->align;
|
: Align2amask(m->align);
|
||||||
|
|
||||||
if (!class)
|
if (!class)
|
||||||
pm = (struct permonst *) 0;
|
pm = (struct permonst *) 0;
|
||||||
@@ -2266,7 +2266,7 @@ create_altar(altar* a, struct mkroom* croom)
|
|||||||
{
|
{
|
||||||
schar sproom;
|
schar sproom;
|
||||||
xchar x = -1, y = -1;
|
xchar x = -1, y = -1;
|
||||||
aligntyp amask;
|
unsigned int amask;
|
||||||
boolean croom_is_temple = TRUE;
|
boolean croom_is_temple = TRUE;
|
||||||
int oldtyp;
|
int oldtyp;
|
||||||
|
|
||||||
@@ -2300,7 +2300,7 @@ create_altar(altar* a, struct mkroom* croom)
|
|||||||
? Align2amask(noncoalignment(u.ualignbase[A_ORIGINAL]))
|
? Align2amask(noncoalignment(u.ualignbase[A_ORIGINAL]))
|
||||||
: (a->align == AM_SPLEV_RANDOM)
|
: (a->align == AM_SPLEV_RANDOM)
|
||||||
? induced_align(80)
|
? induced_align(80)
|
||||||
: a->align;
|
: Align2amask(a->align);
|
||||||
|
|
||||||
levl[x][y].typ = ALTAR;
|
levl[x][y].typ = ALTAR;
|
||||||
levl[x][y].altarmask = amask;
|
levl[x][y].altarmask = amask;
|
||||||
|
|||||||
Reference in New Issue
Block a user