stop to swallow
This commit is contained in:
parent
fc082d293b
commit
b3dc63f154
1 changed files with 19 additions and 16 deletions
35
src/Mono.cs
35
src/Mono.cs
|
@ -168,27 +168,30 @@ static class Mono
|
|||
return;
|
||||
}
|
||||
|
||||
if (snake_len == snake.Length)
|
||||
if (eaten_latch.delta != +1)
|
||||
{
|
||||
// win condition
|
||||
Log.Info("full snake");
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (grow_buffer > 0)
|
||||
if (snake_len == snake.Length)
|
||||
{
|
||||
snake_len++;
|
||||
grow_buffer--;
|
||||
// win condition
|
||||
Log.Info("full snake");
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (grow_buffer > 0)
|
||||
{
|
||||
snake_len++;
|
||||
grow_buffer--;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// slither
|
||||
for (int i = snake.Length - 1; i > 0; i--)
|
||||
{
|
||||
snake[i] = snake[i - 1];
|
||||
// slither
|
||||
for (int i = snake.Length - 1; i > 0; i--)
|
||||
{
|
||||
snake[i] = snake[i - 1];
|
||||
}
|
||||
snake[0] += snake_dir;
|
||||
}
|
||||
snake[0] += snake_dir;
|
||||
|
||||
in_box.Step(box_space.InRange(snake[0]));
|
||||
if (in_box.delta != 0) // 1 just in -1 just out
|
||||
|
|
Loading…
Add table
Reference in a new issue