Fix one more batch of compiler warnings.

A few of these were potential bugs.
This commit is contained in:
John "Elwin" Edwards 2021-05-04 21:03:47 -04:00
parent 3dfd8fd09b
commit 06cad9ee1e
14 changed files with 30 additions and 27 deletions

View file

@ -770,12 +770,12 @@ wake_monster(int y, int x)
/* /*
* Every time he sees mean monster, it might start chasing him * Every time he sees mean monster, it might start chasing him
*/ */
if (on(*tp, ISMEAN) && if ((on(*tp, ISMEAN) &&
off(*tp, ISHELD) && off(*tp, ISHELD) &&
off(*tp, ISRUN) && off(*tp, ISRUN) &&
rnd(100) > 33 && rnd(100) > 33 &&
(!is_stealth(&player) || (on(*tp, ISUNIQUE) && rnd(100) > 95)) && (!is_stealth(&player) || (on(*tp, ISUNIQUE) && rnd(100) > 95)) &&
(off(player, ISINVIS) || on(*tp, CANSEE)) || (off(player, ISINVIS) || on(*tp, CANSEE))) ||
(trp != NULL && (trp->r_flags & ISTREAS))) { (trp != NULL && (trp->r_flags & ISTREAS))) {
tp->t_dest = &hero; tp->t_dest = &hero;
turn_on(*tp, ISRUN); turn_on(*tp, ISRUN);

View file

@ -1046,7 +1046,7 @@ void init_player(void);
void init_stones(void); void init_stones(void);
void init_terrain(void); void init_terrain(void);
void init_things(void); void init_things(void);
void init_weapon(struct object *weap, char type); void init_weapon(struct object *weap, int type);
char *inv_name(struct object *obj, bool drop); char *inv_name(struct object *obj, bool drop);
bool inventory(struct linked_list *list, int type); bool inventory(struct linked_list *list, int type);
bool is_current(struct object *obj); bool is_current(struct object *obj);

View file

@ -140,7 +140,7 @@ hit_monster(int y, int x, struct object *obj, struct thing *tp)
*/ */
void void
init_weapon(struct object *weap, char type) init_weapon(struct object *weap, int type)
{ {
register struct init_weps *iwp; register struct init_weps *iwp;

View file

@ -594,12 +594,12 @@ wake_monster(int y, int x)
/* /*
* Every time he sees mean monster, it might start chasing him * Every time he sees mean monster, it might start chasing him
*/ */
if (on(*tp, ISMEAN) && if ((on(*tp, ISMEAN) &&
off(*tp, ISHELD) && off(*tp, ISHELD) &&
off(*tp, ISRUN) && off(*tp, ISRUN) &&
rnd(100) > 33 && rnd(100) > 33 &&
(!is_stealth(&player) || (on(*tp, ISUNIQUE) && rnd(100) > 50)) && (!is_stealth(&player) || (on(*tp, ISUNIQUE) && rnd(100) > 50)) &&
(off(player, ISINVIS) || on(*tp, CANSEE)) || (off(player, ISINVIS) || on(*tp, CANSEE))) ||
(trp != NULL && (trp->r_flags & ISTREAS))) { (trp != NULL && (trp->r_flags & ISTREAS))) {
runto(tp, &hero); runto(tp, &hero);
} }

View file

@ -132,7 +132,8 @@ be_trapped(struct thing *th, coord *tc)
/* Make sure we were not chasing a monster here */ /* Make sure we were not chasing a monster here */
th->t_dest = &hero; th->t_dest = &hero;
if (on(*th, ISFRIENDLY), turn_off(*th, ISFLEE)); if (on(*th, ISFRIENDLY))
turn_off(*th, ISFLEE);
} }
} }
when BEARTRAP: when BEARTRAP:
@ -406,7 +407,8 @@ be_trapped(struct thing *th, coord *tc)
/* Make sure we were not chasing a monster here */ /* Make sure we were not chasing a monster here */
th->t_dest = &hero; th->t_dest = &hero;
if (on(*th, ISFRIENDLY), turn_off(*th, ISFLEE)); if (on(*th, ISFRIENDLY))
turn_off(*th, ISFLEE);
} }
else else
killed(mitem, FALSE, FALSE, FALSE); killed(mitem, FALSE, FALSE, FALSE);

View file

@ -1249,7 +1249,7 @@ void init_player(void);
void init_stones(void); void init_stones(void);
void init_terrain(void); void init_terrain(void);
void init_things(void); void init_things(void);
void init_weapon(struct object *weap, char type); void init_weapon(struct object *weap, int type);
char *inv_name(struct object *obj, bool drop); char *inv_name(struct object *obj, bool drop);
bool inventory(struct linked_list *list, int type); bool inventory(struct linked_list *list, int type);
bool is_current(struct object *obj); bool is_current(struct object *obj);

View file

@ -197,7 +197,7 @@ hit_monster(int y, int x, struct object *obj, struct thing *tp)
*/ */
void void
init_weapon(struct object *weap, char type) init_weapon(struct object *weap, int type)
{ {
register struct init_weps *iwp; register struct init_weps *iwp;

View file

@ -24,7 +24,7 @@
* Pick a monster to show up. The lower the level, * Pick a monster to show up. The lower the level,
* the meaner the monster. * the meaner the monster.
*/ */
char int
rnd_mon(bool wander, bool baddie) rnd_mon(bool wander, bool baddie)
{ {
/* baddie; TRUE when from a polymorph stick */ /* baddie; TRUE when from a polymorph stick */
@ -85,7 +85,7 @@ lev_mon(void)
* Pick a new monster and add it to the list * Pick a new monster and add it to the list
*/ */
struct linked_list * struct linked_list *
new_monster(char type, struct coord *cp, bool treas) new_monster(int indx, struct coord *cp, bool treas)
{ {
reg struct linked_list *item; reg struct linked_list *item;
reg struct thing *tp; reg struct thing *tp;
@ -97,9 +97,9 @@ new_monster(char type, struct coord *cp, bool treas)
attach(mlist, item); attach(mlist, item);
tp = THINGPTR(item); tp = THINGPTR(item);
st = &tp->t_stats; st = &tp->t_stats;
mp = &monsters[type]; /* point to this monsters structure */ mp = &monsters[indx]; /* point to this monsters structure */
tp->t_type = mp->m_show; tp->t_type = mp->m_show;
tp->t_indx = type; tp->t_indx = indx;
tp->t_pos = *cp; tp->t_pos = *cp;
tp->t_room = roomin(cp); tp->t_room = roomin(cp);
tp->t_oldch = mvwinch(cw, cp->y, cp->x) & A_CHARTEXT; tp->t_oldch = mvwinch(cw, cp->y, cp->x) & A_CHARTEXT;

View file

@ -154,7 +154,7 @@ void msg(char *fmt, ...);
char *new(int size); char *new(int size);
struct linked_list *new_item(int size); struct linked_list *new_item(int size);
void new_level(int ltype); void new_level(int ltype);
struct linked_list *new_monster(char type, struct coord *cp, bool treas); struct linked_list *new_monster(int indx, struct coord *cp, bool treas);
struct linked_list *new_thing(bool treas, int type, int which); struct linked_list *new_thing(bool treas, int type, int which);
void nohaste(int fromfuse); void nohaste(int fromfuse);
void noteth(int fromfuse); void noteth(int fromfuse);
@ -193,7 +193,7 @@ void ring_on(void);
void ringabil(void); void ringabil(void);
int ringex(int rtype); int ringex(int rtype);
int rnd(int range); int rnd(int range);
char rnd_mon(bool wander, bool baddie); int rnd_mon(bool wander, bool baddie);
struct coord *rnd_pos(struct room *rp); struct coord *rnd_pos(struct room *rp);
int rnd_room(void); int rnd_room(void);
struct coord *rndmove(struct thing *who); struct coord *rndmove(struct thing *who);

View file

@ -230,19 +230,20 @@ do_zap(bool gotdir)
tp = THINGPTR(item); tp = THINGPTR(item);
omonst = tp->t_indx; omonst = tp->t_indx;
if (wh == WS_POLYM && !curse) { if (wh == WS_POLYM && !curse) {
int newmonst;
detach(mlist, item); detach(mlist, item);
discard(item); discard(item);
oldch = tp->t_oldch; oldch = tp->t_oldch;
delta.y = y; delta.y = y;
delta.x = x; delta.x = x;
monster = rnd_mon(FALSE, TRUE); newmonst = rnd_mon(FALSE, TRUE);
item = new_monster(monster, &delta, FALSE); item = new_monster(newmonst, &delta, FALSE);
if (!(tp->t_flags & ISRUN)) if (!(tp->t_flags & ISRUN))
runto(&delta, &hero); runto(&delta, &hero);
if (isalpha(mvwinch(cw, y, x))) if (isalpha(mvwinch(cw, y, x)))
mvwaddch(cw, y, x, monsters[monster].m_show); mvwaddch(cw, y, x, monsters[newmonst].m_show);
tp->t_oldch = oldch; tp->t_oldch = oldch;
ws_know[WS_POLYM] |= (monster != omonst); ws_know[WS_POLYM] |= (newmonst != omonst);
} }
else if (wh == WS_MINVIS && !bless) { else if (wh == WS_MINVIS && !bless) {
tp->t_flags |= ISINVIS; tp->t_flags |= ISINVIS;

View file

@ -955,9 +955,9 @@ wake_monster(int y, int x)
*/ */
if (off(player, CANTRUESEE) && if (off(player, CANTRUESEE) &&
on(*tp, ISINWALL) || on(*tp, CANSURPRISE) || (on(*tp, ISINWALL) || on(*tp, CANSURPRISE) ||
(on(*tp, ISSHADOW) && rnd(100) < 80) || (on(*tp, ISSHADOW) && rnd(100) < 80) ||
(on(*tp, ISINVIS) && off(player, CANSEE))) (on(*tp, ISINVIS) && off(player, CANSEE))))
{ {
/* /*
TODO: incomplete - need to finish logic TODO: incomplete - need to finish logic

View file

@ -630,12 +630,12 @@ wake_monster(int y, int x)
/* /*
* Every time he sees mean monster, it might start chasing him * Every time he sees mean monster, it might start chasing him
*/ */
if (on(*tp, ISMEAN) && if ((on(*tp, ISMEAN) &&
off(*tp, ISHELD) && off(*tp, ISHELD) &&
off(*tp, ISRUN) && off(*tp, ISRUN) &&
rnd(100) > 35 && rnd(100) > 35 &&
(!is_stealth(&player) || (on(*tp, ISUNIQUE) && rnd(100) > 35)) && (!is_stealth(&player) || (on(*tp, ISUNIQUE) && rnd(100) > 35)) &&
(off(player, ISINVIS) || on(*tp, CANSEE)) || (off(player, ISINVIS) || on(*tp, CANSEE))) ||
(trp != NULL && (trp->r_flags & ISTREAS))) { (trp != NULL && (trp->r_flags & ISTREAS))) {
runto(tp, &hero); runto(tp, &hero);
} }

View file

@ -1347,7 +1347,7 @@ void init_player(void);
void init_stones(void); void init_stones(void);
void init_terrain(void); void init_terrain(void);
void init_things(void); void init_things(void);
void init_weapon(struct object *weap, char type); void init_weapon(struct object *weap, int type);
char *inv_name(struct object *obj, bool drop); char *inv_name(struct object *obj, bool drop);
bool inventory(struct linked_list *list, int type); bool inventory(struct linked_list *list, int type);
bool invisible(struct thing *monst); bool invisible(struct thing *monst);

View file

@ -198,7 +198,7 @@ hit_monster(int y, int x, struct object *obj, struct thing *tp)
*/ */
void void
init_weapon(struct object *weap, char type) init_weapon(struct object *weap, int type)
{ {
register struct init_weps *iwp; register struct init_weps *iwp;