]> git.pond.sub.org Git - empserver/commitdiff
subs: Add unitsatxy() parameter only_count
authorMarkus Armbruster <armbru@pond.sub.org>
Sun, 28 Dec 2014 20:34:18 +0000 (21:34 +0100)
committerMarkus Armbruster <armbru@pond.sub.org>
Sat, 28 Feb 2015 15:13:14 +0000 (16:13 +0100)
Like shipsatxy().  To be used shortly.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
include/prototypes.h
src/lib/commands/bomb.c
src/lib/subs/list.c

index c1c0a7604d4253ac176aa0b383d5b455f26de6eb..a72d3b6f26d858bffd516f10ca15a133dfeb0778 100644 (file)
@@ -448,7 +448,7 @@ extern int roundrange(double);
 /* list.c */
 extern int shipsatxy(coord, coord, int, int, int);
 extern int carriersatxy(coord, coord, natid);
-extern int unitsatxy(coord, coord, int, int);
+extern int unitsatxy(coord, coord, int, int, int);
 extern int planesatxy(coord, coord, int, int);
 extern int asw_shipsatxy(coord, coord, int, int, struct plnstr *,
                         struct shiplist **);
index 025c366bf65e07b890ca7f43ec49fc972b8a4aaf..cc7feafaf03f8c10b99867ccbfcf7294ae372df0 100644 (file)
@@ -196,7 +196,7 @@ pin_bomb(struct emp_qelem *list, struct sctstr *target)
            pr("Some subs are present in the sector.\n");
     }
     nplanes = planesatxy(target->sct_x, target->sct_y, 0, 0);
-    nunits = unitsatxy(target->sct_x, target->sct_y, 0, 0);
+    nunits = unitsatxy(target->sct_x, target->sct_y, 0, 0, 0);
   retry:
     p = getstring("Bomb what? (ship, plane, land unit, efficiency, commodities) ",
                  buf);
@@ -612,7 +612,7 @@ land_bomb(struct emp_qelem *list, struct sctstr *target)
        plp = (struct plist *)qp;
        if (changed_plane_aborts(plp))
            continue;
-       nunits = unitsatxy(target->sct_x, target->sct_y, 0, 0);
+       nunits = unitsatxy(target->sct_x, target->sct_y, 0, 0, 0);
        if (nunits == 0) {
            pr("%s could not find any units!\n", prplane(&plp->plane));
            continue;
@@ -628,7 +628,7 @@ land_bomb(struct emp_qelem *list, struct sctstr *target)
            if (*q == '~')
                break;
            if (*q == '?') {
-               unitsatxy(target->sct_x, target->sct_y, 0, 0);
+               unitsatxy(target->sct_x, target->sct_y, 0, 0, 0);
                continue;
            }
            n = atoi(q);
index e9f5237196a35086dc15d4eb01cf7029966b6eb9..32c6f81316bca9c9183fe985c8f7a6465f163c6d 100644 (file)
@@ -28,7 +28,7 @@
  *
  *  Known contributors to this file:
  *     Dave Pare, 1986
- *     Markus Armbruster, 2003-2012
+ *     Markus Armbruster, 2003-2014
  */
 
 #include <config.h>
@@ -119,7 +119,7 @@ carriersatxy(coord x, coord y, natid own)
 }
 
 int
-unitsatxy(coord x, coord y, int wantflags, int nowantflags)
+unitsatxy(coord x, coord y, int wantflags, int nowantflags, int only_count)
 {
     int first;
     int units;
@@ -152,12 +152,14 @@ unitsatxy(coord x, coord y, int wantflags, int nowantflags)
                continue;
        }
 
-       if (first) {
-           pr(" #          owner           eff       type\n");
-           first = 0;
+       if (!only_count) {
+           if (first) {
+               pr(" #          owner           eff       type\n");
+               first = 0;
+           }
+           pr("(#%3d) %10.10s  %12.12s  %s\n", ni.cur,
+              cname(land.lnd_own), effadv(land.lnd_effic), prland(&land));
        }
-       pr("(#%3d) %10.10s  %12.12s  %s\n", ni.cur,
-          cname(land.lnd_own), effadv(land.lnd_effic), prland(&land));
        units++;
     }
     return units;