X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=src%2Fserver%2Fyx_uint8.c;h=8d47c82e505d85ec275bfaf98b1bf3dfc2a4e760;hb=7200388374e47f0c4370bd033be9c60247f2a076;hp=06fa81db7707cf9240280d328a3a4afc4317d684;hpb=f9c94db47aa883149aa762fa128ac1ff1b3f92e1;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;
}