From cc0c3e4f3fb4da8b0a70516ca10e63de0c7de989 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Fri, 23 Dec 2005 19:37:52 +0000 Subject: [PATCH] (drop): A mining mission targeting land called pln_dropoff() instead of pln_mine(). pln_dropoff() happens to do pretty much the right thing, but... (pln_mine): Refuse to mine land. --- src/lib/commands/drop.c | 3 +-- src/lib/subs/plnsub.c | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/commands/drop.c b/src/lib/commands/drop.c index f4da45833..bb2c4d7e8 100644 --- a/src/lib/commands/drop.c +++ b/src/lib/commands/drop.c @@ -135,8 +135,7 @@ drop(void) pr("No planes got through fighter defenses\n"); } else { getsect(tx, ty, &target); - if (target.sct_type == SCT_WATER && (mission_flags & P_MINE) - && ip->i_vtype == I_SHELL) + if (wantflags & P_MINE) pln_mine(&bomb_list, &target); else pln_dropoff(&bomb_list, ip, tx, ty, &target, EF_SECTOR); diff --git a/src/lib/subs/plnsub.c b/src/lib/subs/plnsub.c index ab7f6cf48..cfdc28743 100644 --- a/src/lib/subs/plnsub.c +++ b/src/lib/subs/plnsub.c @@ -355,6 +355,10 @@ pln_mine(struct emp_qelem *list, struct sctstr *sectp) } if (amt > 0) { + if (sectp->sct_type != SCT_WATER) { + pr("Your seamines have no effect here.\n"); + return; + } sectp->sct_mines = min(sectp->sct_mines + amt, MINES_MAX); pr("%d mines laid in %s.\n", amt, xyas(sectp->sct_x, sectp->sct_y, player->cnum)); -- 2.43.0