(P_NONE, P_WALKING, P_FLYING, P_SAILING, p_mode): Turn into new

enumeration p_mode.  Users changed.  s_char and register purge.
This commit is contained in:
Markus Armbruster 2006-04-05 07:21:49 +00:00
parent 7cc14a2c9a
commit b923c951ed
2 changed files with 21 additions and 20 deletions

View file

@ -51,30 +51,31 @@
#define DIR_FIRST 1 #define DIR_FIRST 1
#define DIR_LAST 6 #define DIR_LAST 6
enum p_mode { /* How to find path to destination */
P_NONE, /* don't */
P_WALKING, /* use BestLandPath() */
P_FLYING, /* use BestAirPath() */
P_SAILING /* use BestShipPath() */
};
extern signed char dirindex['z'-'a'+1]; extern signed char dirindex['z'-'a'+1];
extern int diroff[DIR_MAP+1][2]; extern int diroff[DIR_MAP+1][2];
extern char dirch[DIR_MAP+2]; extern char dirch[DIR_MAP+2];
extern char *routech[DIR_LAST+1][2]; extern char *routech[DIR_LAST+1][2];
/* src/lib/subs/paths.c */ /* src/lib/subs/paths.c */
extern char *getpath(char *, char *, coord, coord, int, int, int); extern char *getpath(char *, char *, coord, coord, int, int, enum p_mode);
extern double fcost(struct sctstr *, natid); extern double fcost(struct sctstr *, natid);
extern double ncost(struct sctstr *, natid); extern double ncost(struct sctstr *, natid);
extern double pathtoxy(s_char *, coord *, coord *, extern double pathtoxy(char *, coord *, coord *,
double (*)(struct sctstr * sp, natid own)); double (*)(struct sctstr *, natid));
extern int chkdir(s_char, int, int); extern int chkdir(char, int, int);
extern int diridx(char); extern int diridx(char);
extern void direrr(s_char *, s_char *, s_char *); extern void direrr(char *, char *, char *);
extern void pathrange(register coord, register coord, register s_char *, extern void pathrange(coord, coord, char *, int, struct range *);
int, struct range *);
extern double sector_mcost(struct sctstr *sp, int do_bonus); extern double sector_mcost(struct sctstr *sp, int do_bonus);
#define P_NONE 0 /* NO destinations allowed */
#define P_WALKING 1 /* use BestLandPath, only owned */
#define P_FLYING 2 /* use bestpath, any */
#define P_SAILING 3 /* use bestpath, any */
#define MAX_PATH_LEN 1024 #define MAX_PATH_LEN 1024
#endif #endif

View file

@ -43,9 +43,9 @@
#include "prototypes.h" #include "prototypes.h"
int int
chkdir(s_char dir_char, int min_dir, int max_dir) chkdir(char dir_char, int min_dir, int max_dir)
{ {
register int i; int i;
for (i = min_dir; i <= max_dir; i++) for (i = min_dir; i <= max_dir; i++)
if (dir_char == dirch[i]) if (dir_char == dirch[i])
@ -54,7 +54,7 @@ chkdir(s_char dir_char, int min_dir, int max_dir)
} }
void void
direrr(s_char *stop_msg, s_char *view_msg, s_char *map_msg) direrr(char *stop_msg, char *view_msg, char *map_msg)
{ {
pr("Legal directions are:\n"); pr("Legal directions are:\n");
pr(" %c %c\n", dirch[DIR_UL], dirch[DIR_UR]); pr(" %c %c\n", dirch[DIR_UL], dirch[DIR_UR]);
@ -92,7 +92,7 @@ diridx(char dir)
*/ */
char * char *
getpath(char *buf, char *arg, coord x, coord y, int onlyown, getpath(char *buf, char *arg, coord x, coord y, int onlyown,
int showdes, int destinations) int showdes, enum p_mode destinations)
{ {
char buf2[1024]; char buf2[1024];
char *p = buf; char *p = buf;
@ -213,11 +213,11 @@ ncost(struct sctstr *sp, natid own)
* movement cost it takes to get there. * movement cost it takes to get there.
*/ */
double double
pathtoxy(s_char *path, coord *xp, coord *yp, pathtoxy(char *path, coord *xp, coord *yp,
double (*cost)(struct sctstr *, natid)) double (*cost)(struct sctstr *, natid))
{ {
struct sctstr s; struct sctstr s;
s_char *pp; char *pp;
coord x; coord x;
coord y; coord y;
int val; int val;
@ -241,7 +241,7 @@ pathtoxy(s_char *path, coord *xp, coord *yp,
} }
void void
pathrange(coord cx, coord cy, s_char *pp, int border, struct range *range) pathrange(coord cx, coord cy, char *pp, int border, struct range *range)
{ {
int dir; int dir;