]> git.pond.sub.org Git - empserver/commitdiff
Factor snxtsct_use_condarg() out of snxtsct()
authorMarkus Armbruster <armbru@pond.sub.org>
Fri, 8 Apr 2011 19:13:07 +0000 (21:13 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Thu, 14 Apr 2011 18:21:21 +0000 (20:21 +0200)
include/nsc.h
src/lib/subs/snxtsct.c

index 30bc87300fa0681d2c5eb663f18a51070f7db1f2..04f6d1bcff2a050faa7787cef8652469baa5f101 100644 (file)
@@ -312,6 +312,7 @@ extern void snxtsct_area(struct nstr_sect *, struct range *);
 extern void snxtsct_all(struct nstr_sect *);
 extern void snxtsct_rewind(struct nstr_sect *);
 extern void snxtsct_dist(struct nstr_sect *, coord, coord, int);
+extern int snxtsct_use_condarg(struct nstr_sect *);
 /* src/lib/subs/nstr.c */
 extern int nstr_comp(struct nscstr *np, int len, int type, char *str);
 extern char *nstr_comp_val(char *, struct valstr *, int);
index 9bb76dec10d93c7b477fee1d335c40d10e2828e7..7657c4560c9866ab944235b314467b4f8a007219 100644 (file)
@@ -28,7 +28,7 @@
  *
  *  Known contributors to this file:
  *     Dave Pare, 1989
- *     Markus Armbruster, 2006-2009
+ *     Markus Armbruster, 2006-2011
  */
 
 #include <config.h>
@@ -57,7 +57,7 @@ snxtsct(struct nstr_sect *np, char *str)
     struct range range;
     struct natstr *natp;
     coord cx, cy;
-    int dist, n;
+    int dist;
     char buf[1024];
 
     if (!str || !*str) {
@@ -91,12 +91,7 @@ snxtsct(struct nstr_sect *np, char *str)
     default:
        return 0;
     }
-    if (!player->condarg)
-       return 1;
-    n = nstr_comp(np->cond, sizeof(np->cond) / sizeof(*np->cond),
-                 EF_SECTOR, player->condarg);
-    np->ncond = n >= 0 ? n : 0;
-    return n >= 0;
+    return snxtsct_use_condarg(np);
 }
 
 void
@@ -125,6 +120,21 @@ snxtsct_area(struct nstr_sect *np, struct range *range)
     np->dy = 0;
 }
 
+int
+snxtsct_use_condarg(struct nstr_sect *np)
+{
+    int n;
+
+    if (!player->condarg)
+       return 1;
+    n = nstr_comp(np->cond, sizeof(np->cond) / sizeof(*np->cond),
+                 EF_SECTOR, player->condarg);
+    if (n < 0)
+       return 0;
+    np->ncond = n;
+    return 1;
+}
+
 void
 snxtsct_rewind(struct nstr_sect *np)
 {