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);
*
* Known contributors to this file:
* Dave Pare, 1989
- * Markus Armbruster, 2006-2009
+ * Markus Armbruster, 2006-2011
*/
#include <config.h>
struct range range;
struct natstr *natp;
coord cx, cy;
- int dist, n;
+ int dist;
char buf[1024];
if (!str || !*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
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)
{