* path.h: Definitions for directions, paths, etc.
*
* Known contributors to this file:
- * Markus Armbruster, 2005-2011
+ * Markus Armbruster, 2005-2014
*/
#ifndef PATH_H
#define DIR_FIRST 1
#define DIR_LAST 6
+#define DIR_BACK(dir) ((dir) >= DIR_FIRST + 3 ? (dir) - 3 : (dir) + 3)
+
#define MOB_MOVE 0
#define MOB_MARCH 1
#define MOB_RAIL 2
* pathfind.c: Find cheapest paths
*
* Known contributors to this file:
- * Markus Armbruster, 2011
+ * Markus Armbruster, 2014
*/
#include <config.h>
return yy;
}
-static int
-rev_dir(int dir)
-{
- assert(DIR_FIRST <= dir && dir <= DIR_LAST);
- return dir >= DIR_FIRST + 3 ? dir - 3 : dir + 3;
-}
-
/*
* Set the current source and cost function.
* SX,SY is the source.
i = bufsz;
buf[--i] = dirch[d];
len++;
- x = x_in_dir(x, rev_dir(d));
- y = y_in_dir(y, rev_dir(d));
+ assert(DIR_FIRST <= d && d <= DIR_LAST);
+ x = x_in_dir(x, DIR_BACK(d));
+ y = y_in_dir(y, DIR_BACK(d));
}
assert(x == sx && y == sy);