Rewrite show_mission()'s conditional for clarity
No functional change, except oops on bad mission.
This commit is contained in:
parent
e0b164a283
commit
22175c1722
1 changed files with 27 additions and 22 deletions
|
@ -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, §);
|
if (radius) {
|
||||||
if ((sect.sct_type == SCT_HEADQ) && (sect.sct_effic >= 60))
|
radius += 2;
|
||||||
plus++;
|
getsect(gp->x, gp->y, §);
|
||||||
|
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
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue