(navi): Change switch_flagship() to call switch_leader() instead.
(switch_flagship): Remove, not needed, replaced with switch_leader().
extern int want_to_abandon(struct sctstr *, i_type, int, struct lndstr *);
extern int would_abandon(struct sctstr *, i_type, int, struct lndstr *);
extern int nav_map(int, int, int);
+extern void switch_leader(struct emp_qelem *list, int uid);
extern int count_pop(int);
extern int scuttle_tradeship(struct shpstr *, int);
extern void scuttle_ship(struct shpstr *);
#include "unit.h"
static int set_leader(struct emp_qelem *list, struct lndstr **leaderp);
-static void switch_leader(struct emp_qelem *list, int land_uid);
int
march(void)
return 1;
}
-static void
-switch_leader(struct emp_qelem *list, int land_uid)
+void
+switch_leader(struct emp_qelem *list, int uid)
{
struct emp_qelem *qp, *save;
- struct ulist *llp;
+ struct ulist *ulp;
if (QEMPTY(list))
return;
emp_remque(qp);
emp_insque(qp, list);
qp = list->q_back;
- llp = (struct ulist *)qp;
- if (llp->unit.land.lnd_uid == land_uid || land_uid == -1)
+ ulp = (struct ulist *)qp;
+ if (ulp->unit.gen.uid == uid || uid == -1)
break;
} while (list->q_back != save);
}
#include "unit.h"
static int set_flagship(struct emp_qelem *list, struct shpstr **flagshipp);
-static void switch_flagship(struct emp_qelem *list, int ship_uid);
int
navi(void)
break;
case 'f':
if (ac <= 1)
- switch_flagship(&ship_list, -1);
+ switch_leader(&ship_list, -1);
else
- switch_flagship(&ship_list, atoi(player->argp[1]));
+ switch_leader(&ship_list, atoi(player->argp[1]));
set_flagship(&ship_list, &shp);
break;
case 'i':
pr("%s\n", prship(&mlp->unit.ship));
return 1;
}
-
-static void
-switch_flagship(struct emp_qelem *list, int ship_uid)
-{
- struct emp_qelem *qp, *save;
- struct ulist *mlp;
-
- if (QEMPTY(list))
- return;
-
- save = qp = list->q_back;
- do {
- emp_remque(qp);
- emp_insque(qp, list);
- qp = list->q_back;
- mlp = (struct ulist *)qp;
- if (mlp->unit.ship.shp_uid == ship_uid || ship_uid == -1)
- break;
- } while (list->q_back != save);
-}
-