From 6f3f78481dc5f88d0a274095122269e6066cd4da Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Mon, 4 Jan 2021 09:58:52 +0100 Subject: [PATCH] mission: Don't permit SAMs on escort missions The mission code doesn't treat SAMs specially: they take off, fly out, maybe fight, fly home, and land. Landing triggers the oops in pln_put1(). Letting SAMs escort makes no sense. Fix the mission command to reject them. Signed-off-by: Markus Armbruster --- src/lib/commands/miss.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/lib/commands/miss.c b/src/lib/commands/miss.c index 0e49a055c..52b3919b9 100644 --- a/src/lib/commands/miss.c +++ b/src/lib/commands/miss.c @@ -29,7 +29,7 @@ * Known contributors to this file: * Thomas Ruschak, 1992 * Steve McClure, 2000 - * Markus Armbruster, 2005-2016 + * Markus Armbruster, 2005-2021 */ #include @@ -222,6 +222,12 @@ mission(void) struct plchrstr *pcp; pcp = &plchr[(int)gp->type]; + if (pcp->pl_flags & P_M) { + pr("Missiles can't escort.\n" + "%s #%d is ineligible\n", + pcp->pl_name, gp->uid); + continue; + } if (!(pcp->pl_flags & P_ESC) && !(pcp->pl_flags & P_F)) { pr("Only planes with the escort or intercept abilities can escort.\n" "%s #%d is ineligible\n", -- 2.43.0