]> git.pond.sub.org Git - empserver/commitdiff
Fix bogus message when deity attempts to navigate foreign ship
authorMarkus Armbruster <armbru@pond.sub.org>
Sun, 13 Jun 2010 15:54:27 +0000 (17:54 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Sun, 11 Jul 2010 05:59:43 +0000 (07:59 +0200)
Much of the code assumes that only the ship's owner can navigate it.
The assumption is correct, because shp_nav() leaves foreign ships
behind with a bogus "was sunk at" message (suppressed for country #0).

It would be nice to let deities navigate foreign ships, but the
assumption is not trivial to remove.  For now, just avoid the bogus
message.

Historical note: it looks like deities used to be able to navigate
foreign ships just fine until Empire 2 factored common code out of
navigate, sail and autonav.

src/lib/subs/shpsub.c

index 0eded2d64750e466053e06c963e07abfb173457d..8731a3a56165fde84e06f3411cd71654a245376c 100644 (file)
@@ -65,7 +65,12 @@ shp_sel(struct nstr_item *ni, struct emp_qelem *list)
 
     emp_initque(list);
     while (nxtitem(ni, &ship)) {
-       if (!player->owner)
+       /*
+        * It would be nice to let deities navigate foreign ships, but
+        * much of the code assumes that only the ship's owner can
+        * navigate it.
+        */
+       if (ship.shp_own != player->cnum)
            continue;
        mcp = &mchr[(int)ship.shp_type];
        if (opt_MARKET) {