extern int fly_map(coord, coord);
/* mslsub.c */
extern int msl_intercept(coord, coord, natid, int, int, int, int);
-extern int msl_equip(struct plnstr *);
+extern int msl_equip(struct plnstr *, char);
extern int msl_hit(struct plnstr *, int, int, int, int, char *,
coord, coord, int);
extern void msl_sel(struct emp_qelem *, coord, coord, natid, int,
int dam, nukedam;
natid oldown;
- if (msl_equip(pp) < 0) {
+ if (msl_equip(pp, 'p') < 0) {
pr("%s not enough petrol or shells!\n", prplane(pp));
return RET_FAIL;
}
pr("Range too great; try again!\n");
return RET_FAIL;
}
- if (msl_equip(pp) < 0) {
+ if (msl_equip(pp, 'p') < 0) {
pr("%s not enough shells!\n", prplane(pp));
return RET_FAIL;
}
return RET_SYN;
if (!check_plane_ok(pp))
return RET_FAIL;
+ if (msl_equip(pp, 'r') < 0) {
+ pr("%s not enough petrol!\n", prplane(pp));
+ return RET_FAIL;
+ }
pp->pln_theta = 0;
pp->pln_flags |= PLN_SYNCHRONOUS;
if (*p == 0 || *p == 'n')
needed = load;
}
break;
+ case 'r': /* reconnaissance */
case 0: /* plane interception */
break;
default:
#include "xy.h"
int
-msl_equip(struct plnstr *pp)
+msl_equip(struct plnstr *pp, char mission)
{
struct plist pl;
memset(&pl, 0, sizeof(struct plist));
pl.pcp = plchr + pp->pln_type;
pl.plane = *pp;
- return mission_pln_equip(&pl, 0, 0, 'p');
+ return mission_pln_equip(&pl, 0, 0, mission);
}
int