Rewrite show_mission()'s conditional for clarity

No functional change, except oops on bad mission.
This commit is contained in:
Markus Armbruster 2008-06-03 07:27:32 +02:00
parent e0b164a283
commit 22175c1722

View file

@ -772,6 +772,7 @@ show_mission(int type, struct nstr_item *np)
int first = 1, radius; int first = 1, radius;
union empobj_storage item; union empobj_storage item;
struct empobj *gp; struct empobj *gp;
struct sctstr sect;
while (nxtitem(np, &item)) { while (nxtitem(np, &item)) {
gp = (struct empobj *)&item; gp = (struct empobj *)&item;
@ -784,35 +785,39 @@ show_mission(int type, struct nstr_item *np)
} }
pr("%-25s", obj_nameof(gp)); pr("%-25s", obj_nameof(gp));
prxy(" %3d,%-3d", gp->x, gp->y, player->cnum); prxy(" %3d,%-3d", gp->x, gp->y, player->cnum);
if (gp->mission == MI_INTERDICT || gp->mission == MI_SUPPORT || switch (gp->mission) {
gp->mission == MI_OSUPPORT || case MI_INTERDICT:
gp->mission == MI_DSUPPORT || gp->mission == MI_AIR_DEFENSE) { case MI_SUPPORT:
radius = 999; case MI_AIR_DEFENSE:
case MI_DSUPPORT:
case MI_OSUPPORT:
radius = gp->radius;
oprange(gp, &radius); oprange(gp, &radius);
prxy(" %3d,%-3d", gp->opx, gp->opy, player->cnum); prxy(" %3d,%-3d", gp->opx, gp->opy, player->cnum);
if (radius < gp->radius) pr(" %4d", radius);
pr(" %4d", radius); break;
else case MI_RESERVE:
pr(" %4d", gp->radius); radius = item.land.lnd_rad_max;
} else if (gp->mission == MI_RESERVE) {
struct sctstr sect;
int plus = 2;
getsect(gp->x, gp->y, &sect); if (radius) {
if ((sect.sct_type == SCT_HEADQ) && (sect.sct_effic >= 60)) radius += 2;
plus++; getsect(gp->x, gp->y, &sect);
if ((sect.sct_type == SCT_HEADQ) && (sect.sct_effic >= 60))
if (item.land.lnd_rad_max == 0) radius++;
plus = 0; }
else
plus += item.land.lnd_rad_max;
prxy(" %3d,%-3d", gp->x, gp->y, player->cnum); prxy(" %3d,%-3d", gp->x, gp->y, player->cnum);
pr(" %4d", plus); pr(" %4d", radius);
} else if (gp->mission == MI_ESCORT) { break;
case MI_ESCORT:
pr(" "); pr(" ");
pr(" %4d", item.plane.pln_range / 2); pr(" %4d", item.plane.pln_range / 2);
} else break;
default:
CANT_REACH();
/* fall through */
case MI_NONE:
pr(" "); pr(" ");
}
if (gp->mission) if (gp->mission)
pr(" is on %s mission\n", mission_name(gp->mission)); pr(" is on %s mission\n", mission_name(gp->mission));
else else