X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=src%2Fserver%2Fyx_uint16.c;fp=src%2Fserver%2Fyx_uint16.c;h=d79300008bf98d33f43827ff860340adfb1e7a33;hb=dd9d65ee727ac7e95801da0f8b5bae7009811802;hp=0000000000000000000000000000000000000000;hpb=c3d87a1dee96775443fdf73c53e1350af7ca5fc2;p=plomrogue diff --git a/src/server/yx_uint16.c b/src/server/yx_uint16.c new file mode 100644 index 0000000..d793000 --- /dev/null +++ b/src/server/yx_uint16.c @@ -0,0 +1,39 @@ +/* src/server/yx_uint16.c */ + +#include "yx_uint16.h" +#include /* uint8_t, UINT16_MAX */ +#include "../common/yx_uint16.h" /* yx_uint16 struct */ + + + +extern uint8_t yx_uint16_cmp(struct yx_uint16 * a, struct yx_uint16 * b) +{ + if (a->y == b->y && a->x == b->x) + { + return 1; + } + return 0; +} + + + +extern struct yx_uint16 mv_yx_in_dir(char d, struct yx_uint16 yx) +{ + if (d == 'N' && yx.y > 0) + { + yx.y--; + } + else if (d == 'E' && yx.x < UINT16_MAX) + { + yx.x++; + } + else if (d == 'S' && yx.y < UINT16_MAX) + { + yx.y++; + } + else if (d == 'W' && yx.x > 0) + { + yx.x--; + } + return yx; +}