return RET_FAIL;
}
}
- if (pl.pln_nuketype < 0) {
+ if (!getnuke(nuk_on_plane(&pl), &nuke)) {
sprintf(prompt, "Nuclear device for %s: ", prplane(&pl));
p = getstarg(player->argp[2], prompt, buf);
if (!p || !*p)
nukno = atoi(p);
if (!getnuke(nukno, &nuke) || !player->owner)
return RET_FAIL;
- } else {
- if (nuk_on_plane(&nuke, pl.pln_uid) < 0) {
- CANT_REACH();
- continue;
- }
}
ncp = &nchr[nuke.nuk_type];
if (pln_load(&pl) < ncp->n_weight) {
while (nxtitem(&ni, &pl)) {
if (!player->owner)
continue;
- if (pl.pln_nuketype == -1)
+ if (!getnuke(nuk_on_plane(&pl), &nuke))
continue;
if (opt_MARKET) {
if (ontradingblock(EF_PLANE, &pl)) {
return RET_FAIL;
}
}
- if (nuk_on_plane(&nuke, pl.pln_uid) < 0) {
- CANT_REACH();
- continue;
- }
getsect(nuke.nuk_x, nuke.nuk_y, §);
if (!player->owner
&& getrel(getnatp(sect.sct_own), player->cnum) != ALLIED) {