* free_things_in_memory()
*/
#include "map.h" /* mv_yx_in_dir_legal() */
-#include "yx_uint8.h" /* mv_yx_in_dir_wrap(), yx_uint8_cmp() */
+#include "yx_uint8.h" /* mv_yx_in_dir_wrap() */
#include "world.h" /* global world */
{
continue;
}
- if (yx_uint8_cmp(&target, &other_t->pos))
+ if (target.y == other_t->pos.y && target.x == other_t->pos.x)
{
- actor_hits_actor(t, other_t);
+ actor_hits_actor(t, other_t);
return;
}
}
struct Thing * t_i;
for (t_i = world.things; t_i; t_i = t_i->next)
{
- if (t_i != t && yx_uint8_cmp(&t_i->pos, &t->pos))
+ if (t_i != t && t_i->pos.y == t->pos.y && t_i->pos.x == t->pos.x)
{
picked = t_i;
}
#include "rrand.h" /* rrand() */
#include "thing_actions.h" /* actor_wait */
#include "world.h" /* world */
-#include "yx_uint8.h" /* yx_uint8_cmp() */
uint8_t clear = 1;
for (t = world.things; t; t = t->next)
{
- if (yx_uint8_cmp(&pos, &t->pos) && 0 != t->lifepoints)
+ if (0 != t->lifepoints && pos.y==t->pos.y && pos.x==t->pos.x)
{
clear = 0;
break;
-extern uint8_t yx_uint8_cmp(struct yx_uint8 * a, struct yx_uint8 * b)
-{
- if (a->y == b->y && a->x == b->x)
- {
- return 1;
- }
- return 0;
-}
-
-
-
extern uint8_t mv_yx_in_dir_wrap(char d, struct yx_uint8 * yx, uint8_t unwrap)
{
static int8_t wrap_west_east = 0;
-/* Return 1 if two yx_uint8 coordinates at "a" and "b" are equal, else 0. */
-extern uint8_t yx_uint8_cmp(struct yx_uint8 * a, struct yx_uint8 * b);
-
/* Move "yx" into hex direction "d". If this moves "yx" beyond the minimal (0)
* or maximal (UINT8_MAX) column or row, it wraps to the opposite side. Such
* wrapping is returned as a wraps enum value and stored, so that further calls