diff --git a/src/lib/subs/plnsub.c b/src/lib/subs/plnsub.c index 6d7006b2..2532b10e 100644 --- a/src/lib/subs/plnsub.c +++ b/src/lib/subs/plnsub.c @@ -608,6 +608,7 @@ pln_equip(struct plist *plp, struct ichrstr *ip, int flags, s_char mission) int rval; short *item; int own; + int abandon_needed; pp = &plp->plane; pcp = plp->pcp; @@ -694,7 +695,8 @@ pln_equip(struct plist *plp, struct ichrstr *ip, int flags, s_char mission) plp->plane.pln_y, I_SHELL, needed); #endif - if (item[itype] < needed) { + abandon_needed = would_abandon(§, itype, needed, NULL); + if (item[itype] < needed + abandon_needed) { pr("Not enough %s for %s\n", ichr[itype].i_name, prplane(pp)); return -1; }