From 8e75b22e0dc0a2badb731a007f7f2a441d83b1cd Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Wed, 26 Jan 2011 19:41:28 +0100 Subject: [PATCH] Use relations_with() for US==THEM || getrel(getnatp(US), THEM) Replacing getrel(getnatp(US), THEM) by relations_with(US, THEM) makes a difference only when US equals THEM. Replace patterns like "us == them || getrel(getnatp(us), them)..." by "relations_with(us, them)...". --- src/lib/commands/drop.c | 3 +-- src/lib/commands/foll.c | 3 +-- src/lib/commands/scut.c | 3 +-- src/lib/commands/shar.c | 2 +- src/lib/commands/upgr.c | 9 +++------ src/lib/subs/list.c | 3 +-- src/lib/subs/lndsub.c | 8 +++----- src/lib/subs/plnsub.c | 21 +++++++-------------- src/lib/subs/retreat.c | 4 ++-- src/lib/subs/shpsub.c | 3 +-- src/lib/update/land.c | 3 +-- src/lib/update/plane.c | 6 ++---- src/lib/update/ship.c | 3 +-- 13 files changed, 25 insertions(+), 46 deletions(-) diff --git a/src/lib/commands/drop.c b/src/lib/commands/drop.c index fbe78f451..1ed7facd7 100644 --- a/src/lib/commands/drop.c +++ b/src/lib/commands/drop.c @@ -74,8 +74,7 @@ drop(void) return RET_SYN; getsect(tx, ty, &target); - if (target.sct_own == player->cnum - || getrel(getnatp(target.sct_own), player->cnum) == ALLIED) { + if (relations_with(target.sct_own, player->cnum) == ALLIED) { /* own or allied sector: cargo drop */ if (ip->i_uid == I_CIVIL && target.sct_own != target.sct_oldown) { pr("Can't drop civilians into occupied sectors.\n"); diff --git a/src/lib/commands/foll.c b/src/lib/commands/foll.c index 0e95bc23a..246494771 100644 --- a/src/lib/commands/foll.c +++ b/src/lib/commands/foll.c @@ -60,8 +60,7 @@ foll(void) if (!good) return RET_SYN; getship(leader, &ship); - if (ship.shp_own != player->cnum && - getrel(getnatp(ship.shp_own), player->cnum) < FRIENDLY) { + if (relations_with(ship.shp_own, player->cnum) < FRIENDLY) { pr("That ship won't let you follow.\n"); return RET_FAIL; } diff --git a/src/lib/commands/scut.c b/src/lib/commands/scut.c index 570cb89aa..ce9c6146b 100644 --- a/src/lib/commands/scut.c +++ b/src/lib/commands/scut.c @@ -165,8 +165,7 @@ scuttle_tradeship(struct shpstr *sp, int interactive) mp = &mchr[(int)sp->shp_type]; getsect(sp->shp_x, sp->shp_y, §); if (sect.sct_own && sect.sct_type == SCT_HARBR && sect.sct_effic >= 2 - && (sect.sct_own == sp->shp_own - || getrel(getnatp(sect.sct_own), sp->shp_own) >= FRIENDLY)) { + && relations_with(sect.sct_own, sp->shp_own) >= FRIENDLY) { dist = mapdist(sp->shp_x, sp->shp_y, sp->shp_orig_x, sp->shp_orig_y); /* Don't disclose distance to to pirates */ diff --git a/src/lib/commands/shar.c b/src/lib/commands/shar.c index 4f2190181..8d90019d4 100644 --- a/src/lib/commands/shar.c +++ b/src/lib/commands/shar.c @@ -47,7 +47,7 @@ shar(void) if (to < 0) return RET_SYN; - if (to != player->cnum && getrel(getnatp(to), player->cnum) < FRIENDLY) { + if (relations_with(to, player->cnum) < FRIENDLY) { pr("%s does not have friendly relations towards you\n", cname(to)); return RET_FAIL; } diff --git a/src/lib/commands/upgr.c b/src/lib/commands/upgr.c index 33278ff8c..960e04131 100644 --- a/src/lib/commands/upgr.c +++ b/src/lib/commands/upgr.c @@ -100,8 +100,7 @@ lupgr(void) continue; if (sect.sct_type != SCT_HEADQ || sect.sct_effic < 60) continue; - if (land.lnd_own != sect.sct_own - && getrel(getnatp(land.lnd_own), sect.sct_own) < FRIENDLY) { + if (relations_with(land.lnd_own, sect.sct_own) < FRIENDLY) { pr("You are not on friendly terms with the owner of unit %d!\n", land.lnd_uid); continue; @@ -181,8 +180,7 @@ supgr(void) continue; if (sect.sct_type != SCT_HARBR || sect.sct_effic < 60) continue; - if (ship.shp_own != sect.sct_own - && getrel(getnatp(ship.shp_own), sect.sct_own) < FRIENDLY) { + if (relations_with(ship.shp_own, sect.sct_own) < FRIENDLY) { pr("You are not on friendly terms with the owner of ship %d!\n", ship.shp_uid); continue; @@ -261,8 +259,7 @@ pupgr(void) continue; if (sect.sct_type != SCT_AIRPT || sect.sct_effic < 60) continue; - if (plane.pln_own != sect.sct_own - && getrel(getnatp(plane.pln_own), sect.sct_own) < FRIENDLY) { + if (relations_with(plane.pln_own, sect.sct_own) < FRIENDLY) { pr("You are not on friendly terms with the owner of plane %d!\n", plane.pln_uid); continue; diff --git a/src/lib/subs/list.c b/src/lib/subs/list.c index 781011e56..d18e61ba4 100644 --- a/src/lib/subs/list.c +++ b/src/lib/subs/list.c @@ -102,8 +102,7 @@ carriersatxy(coord x, coord y, natid own) while (nxtitem(&ni, &ship)) { if (ship.shp_effic < SHIP_MINEFF || ship.shp_own == 0) continue; - if (ship.shp_own != own - && getrel(getnatp(ship.shp_own), own) != ALLIED) + if (relations_with(ship.shp_own, own) != ALLIED) continue; if ((carrier_planes(&ship, 0) & (P_L | P_K)) == 0) continue; diff --git a/src/lib/subs/lndsub.c b/src/lib/subs/lndsub.c index d7218c32f..c6bc43360 100644 --- a/src/lib/subs/lndsub.c +++ b/src/lib/subs/lndsub.c @@ -501,8 +501,7 @@ lnd_mar(struct emp_qelem *list, double *minmobp, double *maxmobp, lnd_stays(actor, "has no mil on it to guide it", llp); continue; } - if (sect.sct_own != actor && - getrel(getnatp(sect.sct_own), actor) != ALLIED && + if (relations_with(sect.sct_own, actor) != ALLIED && !(lchr[(int)llp->unit.land.lnd_type].l_flags & L_SPY) && sect.sct_own) { sprintf(mess, "has been kidnapped by %s", cname(sect.sct_own)); @@ -782,8 +781,7 @@ lnd_fort_interdiction(struct emp_qelem *list, while (nxtsct(&ns, &fsect)) { if (fsect.sct_own == 0) continue; - if (fsect.sct_own == victim - || getrel(getnatp(fsect.sct_own), victim) >= NEUTRAL) + if (relations_with(fsect.sct_own, victim) >= NEUTRAL) continue; range = roundrange(fortrange(&fsect)); trange = mapdist(newx, newy, fsect.sct_x, fsect.sct_y); @@ -1170,7 +1168,7 @@ has_helpful_engineer(coord x, coord y, natid cn) snxtitem_xy(&ni, EF_LAND, x, y); while (nxtitem(&ni, &land)) { - if (land.lnd_own != cn && getrel(getnatp(land.lnd_own), cn) != ALLIED) + if (relations_with(land.lnd_own, cn) != ALLIED) continue; if (lchr[(int)land.lnd_type].l_flags & L_ENGINEER) return 1; diff --git a/src/lib/subs/plnsub.c b/src/lib/subs/plnsub.c index 5e7e8023b..ed15058c9 100644 --- a/src/lib/subs/plnsub.c +++ b/src/lib/subs/plnsub.c @@ -102,8 +102,7 @@ get_assembly_point(char *input, struct sctstr *ap_sect, char *buf) return NULL; /* over own or allied sector is fine */ - if (ap_sect->sct_own == player->cnum - || getrel(getnatp(ap_sect->sct_own), player->cnum) == ALLIED) + if (relations_with(ap_sect->sct_own, player->cnum) == ALLIED) return ap_sect; /* over own or allied ship is fine */ @@ -111,8 +110,7 @@ get_assembly_point(char *input, struct sctstr *ap_sect, char *buf) while (nxtitem(&ni, &ship)) { if (ship.shp_effic < SHIP_MINEFF || ship.shp_own == 0) continue; - if (ship.shp_own == player->cnum - || getrel(getnatp(ship.shp_own), player->cnum) == ALLIED) + if (relations_with(ship.shp_own, player->cnum) == ALLIED) return ap_sect; } @@ -170,8 +168,7 @@ pln_onewaymission(struct sctstr *target, int *shipno, int *flagp) } /* try to land at sector */ - if (target->sct_own != player->cnum - && getrel(getnatp(target->sct_own), player->cnum) != ALLIED) { + if (relations_with(target->sct_own, player->cnum) != ALLIED) { pr("Nowhere to land at sector %s!\n", xyas(target->sct_x, target->sct_y, player->cnum)); return -1; @@ -285,8 +282,7 @@ pln_dropoff(struct emp_qelem *list, struct ichrstr *ip, coord tx, coord ty, pr("Your %s vanish without a trace.\n", ip->i_name); return; } - if (sect.sct_own != player->cnum - && getrel(getnatp(sect.sct_own), player->cnum) != ALLIED) { + if (relations_with(sect.sct_own, player->cnum) != ALLIED) { pr("You don't own %s! Cargo jettisoned...\n", xyas(tx, ty, player->cnum)); return; @@ -461,8 +457,7 @@ pln_airbase_ok(struct plnstr *pp, int oneway, int noisy) CANT_REACH(); return 0; } - if (ship.shp_own != pp->pln_own - && getrel(getnatp(ship.shp_own), pp->pln_own) != ALLIED) { + if (relations_with(ship.shp_own, pp->pln_own) != ALLIED) { if (noisy) pr("(note) An ally does not own the ship %s is on\n", prplane(pp)); @@ -477,8 +472,7 @@ pln_airbase_ok(struct plnstr *pp, int oneway, int noisy) CANT_REACH(); return 0; } - if (land.lnd_own != pp->pln_own - && getrel(getnatp(land.lnd_own), pp->pln_own) != ALLIED) { + if (relations_with(land.lnd_own, pp->pln_own) != ALLIED) { if (noisy) pr("(note) An ally does not own the unit %s is on\n", prplane(pp)); @@ -496,8 +490,7 @@ pln_airbase_ok(struct plnstr *pp, int oneway, int noisy) return 0; } - if (sect.sct_own != pp->pln_own - && getrel(getnatp(sect.sct_own), pp->pln_own) != ALLIED) { + if (relations_with(sect.sct_own, pp->pln_own) != ALLIED) { if (noisy) pr("(note) An ally does not own the sector %s is in\n", prplane(pp)); diff --git a/src/lib/subs/retreat.c b/src/lib/subs/retreat.c index 75c6d984c..09b53a0e9 100644 --- a/src/lib/subs/retreat.c +++ b/src/lib/subs/retreat.c @@ -249,8 +249,8 @@ retreat_ship1(struct shpstr *sp, char code, int orig) getsect(newx, newy, §); if (shp_check_nav(§, sp) != CN_NAVIGABLE || - (sect.sct_own && sect.sct_own != sp->shp_own && - getrel(getnatp(sect.sct_own), sp->shp_own) < FRIENDLY)) { + (sect.sct_own + && relations_with(sect.sct_own, sp->shp_own) < FRIENDLY)) { wu(0, sp->shp_own, "%s %s,\nbut could not retreat to %s!\n", prship(sp), conditions[findcondition(code)].desc[orig], xyas(newx, newy, sp->shp_own)); diff --git a/src/lib/subs/shpsub.c b/src/lib/subs/shpsub.c index 07fe00b29..5883d2ba5 100644 --- a/src/lib/subs/shpsub.c +++ b/src/lib/subs/shpsub.c @@ -750,8 +750,7 @@ shp_nav_one_sector(struct emp_qelem *list, int dir, natid actor, navigate = shp_check_nav(§, &mlp->unit.ship); if (navigate != CN_NAVIGABLE || (sect.sct_own - && sect.sct_own != actor - && getrel(getnatp(sect.sct_own), actor) < FRIENDLY)) { + && relations_with(sect.sct_own, actor) < FRIENDLY)) { if (dchr[sect.sct_type].d_nav == NAV_CANAL && !(((struct mchrstr *)mlp->chrp)->m_flags & M_CANAL) && navigate == CN_LANDLOCKED) diff --git a/src/lib/update/land.c b/src/lib/update/land.c index 6fedf64e2..90d02e600 100644 --- a/src/lib/update/land.c +++ b/src/lib/update/land.c @@ -224,8 +224,7 @@ landrepair(struct lndstr *land, struct natstr *np, struct bp *bp, int etus) /* land is ok; no repairs needed */ return; } - if ((sp->sct_own != land->lnd_own) && - (getrel(getnatp(sp->sct_own), land->lnd_own) != ALLIED)) + if (relations_with(sp->sct_own, land->lnd_own) != ALLIED) return; if (!player->simulation) diff --git a/src/lib/update/plane.c b/src/lib/update/plane.c index 1269447f4..f6a1c7900 100644 --- a/src/lib/update/plane.c +++ b/src/lib/update/plane.c @@ -148,12 +148,10 @@ planerepair(struct plnstr *pp, struct natstr *np, struct bp *bp, int etus) return; if (carrier->shp_off) return; - if ((carrier->shp_own != pp->pln_own) && - (getrel(getnatp(carrier->shp_own), pp->pln_own) != ALLIED)) + if (relations_with(carrier->shp_own, pp->pln_own) != ALLIED) return; } else { - if ((sp->sct_own != pp->pln_own) && - (getrel(getnatp(sp->sct_own), pp->pln_own) != ALLIED)) + if (relations_with(sp->sct_own, pp->pln_own) != ALLIED) return; } diff --git a/src/lib/update/ship.c b/src/lib/update/ship.c index 39f22c0e2..2feff4364 100644 --- a/src/lib/update/ship.c +++ b/src/lib/update/ship.c @@ -268,8 +268,7 @@ shiprepair(struct shpstr *ship, struct natstr *np, struct bp *bp, int etus) sp = getsectp(ship->shp_x, ship->shp_y); if (sp->sct_own != 0 - && sp->sct_own != ship->shp_own - && getrel(getnatp(sp->sct_own), ship->shp_own) < FRIENDLY) + && relations_with(sp->sct_own, ship->shp_own) < FRIENDLY) return; /* only military can work on a military boat */ -- 2.43.0