update s_array on init

This commit is contained in:
ethan merchant 2024-11-25 13:51:18 -05:00
parent d46910812f
commit dd304ae2c8

View file

@ -22,6 +22,15 @@ static class Mono
s_array = new(SD_X, SD_Y, SD_Z, -1),
tail_fill = new(SD_X, SD_Y, SD_Z, -1);
static void update_s_array()
{
s_array.Clear(-1);
for (int i = 0; i < snake_len; i++)
{
s_array[snake[i]] = i;
}
}
public static XYZi[] snake = new XYZi[
Maths.u_length(SD_X) * Maths.u_length(SD_Y) * Maths.u_length(SD_Z)
];
@ -52,6 +61,7 @@ static class Mono
{
snake[i] = new XYZi(0, 0, 0);
}
update_s_array();
}
public static void Frame()
@ -185,11 +195,7 @@ static class Mono
holes.Remove(snake[snake_len - 1]);
}
s_array.Clear(-1);
for (int i = 0; i < snake_len; i++)
{
s_array[snake[i]] = i;
}
update_s_array();
// eat
if (!eaten_latch.state)