X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=src%2Fserver%2Fyx_uint8.c;fp=src%2Fserver%2Fyx_uint8.c;h=8d47c82e505d85ec275bfaf98b1bf3dfc2a4e760;hb=6b1d36c9e673fd8f8595119080dca63a39ba483b;hp=06fa81db7707cf9240280d328a3a4afc4317d684;hpb=ef04cd096599eba243b40c5d40da38398adc7785;p=plomrogue diff --git a/src/server/yx_uint8.c b/src/server/yx_uint8.c index 06fa81d..8d47c82 100644 --- a/src/server/yx_uint8.c +++ b/src/server/yx_uint8.c @@ -19,41 +19,33 @@ extern uint8_t yx_uint8_cmp(struct yx_uint8 * a, struct yx_uint8 * b) extern struct yx_uint8 mv_yx_in_dir(char d, struct yx_uint8 yx) { - if (d == '8' && yx.y > 0) + if (d == 'e' && yx.y > 0 && (yx.x < UINT8_MAX || !(yx.y % 2))) { + yx.x = yx.x + (yx.y % 2); yx.y--; } - else if (d == '9' && yx.y > 0 && yx.x < UINT8_MAX) + else if (d == 'd' && yx.x < UINT8_MAX) { - yx.y--; - yx.x++; - } - else if (d == '6' && yx.x < UINT8_MAX) - { - yx.x++; - } - else if (d == '3' && yx.x < UINT8_MAX && yx.y < UINT8_MAX) - { - yx.y++; yx.x++; } - else if (d == '2' && yx.y < UINT8_MAX) + else if (d == 'c' && yx.y < UINT8_MAX && (yx.x < UINT8_MAX || !(yx.y % 2))) { + yx.x = yx.x + (yx.y % 2); yx.y++; } - else if (d == '1' && yx.y < UINT8_MAX && yx.x > 0) + else if (d == 'x' && yx.y < UINT8_MAX && (yx.x > 0 || yx.y % 2)) { + yx.x = yx.x - !(yx.y % 2); yx.y++; - yx.x--; } - else if (d == '4' && yx.x > 0) + else if (d == 's' && yx.x > 0) { yx.x--; } - else if (d == '7' && yx.x > 0 && yx.y > 0) + else if (d == 'w' && yx.y > 0 && (yx.x > 0 || yx.y % 2)) { + yx.x = yx.x - !(yx.y % 2); yx.y--; - yx.x--; } return yx; }