From b1b072448df95dfd7b5ff4cb0ed5d750da6dbcaf Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sun, 28 Dec 2014 22:43:47 +0100 Subject: [PATCH] navigate: Don't disclose whether unfriendly canal is navigable When you try to navigate a ship without canal capability into an unfriendly canal, you get "can't go" when it's below 2%, else "too large to fit". Always report "can't go" for unfriendly sectors. Signed-off-by: Markus Armbruster --- src/lib/subs/shpsub.c | 4 +++- tests/navi-march/01-navigate-1 | 1 - tests/navi-march/journal.log | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/lib/subs/shpsub.c b/src/lib/subs/shpsub.c index b343951f8..cabe59d13 100644 --- a/src/lib/subs/shpsub.c +++ b/src/lib/subs/shpsub.c @@ -793,7 +793,9 @@ shp_nav_one_sector(struct emp_qelem *list, int dir, natid actor) if (stuck != SHP_STUCK_NOT || (sect.sct_own && relations_with(sect.sct_own, actor) < FRIENDLY)) { - if (stuck == SHP_STUCK_CANAL) + if (stuck == SHP_STUCK_CANAL && + (!sect.sct_own + || relations_with(sect.sct_own, actor) >= FRIENDLY)) sprintf(dp, "is too large to fit into the canal system at %s", xyas(newx, newy, actor)); diff --git a/tests/navi-march/01-navigate-1 b/tests/navi-march/01-navigate-1 index f9ae3e9fd..a1da27195 100644 --- a/tests/navi-march/01-navigate-1 +++ b/tests/navi-march/01-navigate-1 @@ -63,7 +63,6 @@ h | enter unfriendly canal -10,2 navi 65 bX h -| BUG: reports "too large" | enter unowned bridge 10,0, friendly -6,0, unfriendly bridge -10,0 navi 70 gh navi 71 gh diff --git a/tests/navi-march/journal.log b/tests/navi-march/journal.log index c3cca2c95..d325f0f38 100644 --- a/tests/navi-march/journal.log +++ b/tests/navi-march/journal.log @@ -291,7 +291,7 @@ Play#1 input navi 65 bX Play#1 command navigate Play#1 output Play#1 1 Flagship is cs cargo ship (#65) - Play#1 output Play#1 1 is too large to fit into the canal system at -10,2 + Play#1 output Play#1 1 can't go to -10,2 Play#1 output Play#1 1 = . Play#1 output Play#1 1 h h h Play#1 output Play#1 1 c c -- 2.43.0