Heller c1b9543c47 feat: tail interpolates like head (mirrored with ease-in)
Tail now uses the same approach as head: interpolated in the body path
from its previous position, with ease-in (mirror of head's ease-out).
Ghost circle removed — no longer needed since tail is naturally smooth.
Added EaseInCubic to AnimationHelper. InterpolatePosition now uses
string easing mode instead of bool.
2026-06-19 10:25:31 +00:00
2026-06-19 10:09:12 +00:00

Snake (C#)

Классическая игра «Змейка» на .NET 8 с разделением логики и интерфейсов.

Структура решения

Проект Назначение
Snake.Core Игровая логика: поле, змейка, еда, движение, коллизии
Snake.CLI Консольный интерфейс
Snake.Avalonia Графический интерфейс (Avalonia UI)

Требования

Запуск

# Консольная версия
dotnet run --project Snake.CLI

# Avalonia UI (требуется графическая среда)
dotnet run --project Snake.Avalonia

Git Flow

Проект использует Git Flow:

Ветка Назначение
main Стабильные релизы
develop Интеграционная ветка для текущей разработки
feature/* Новые функции (ветвление от develop)
release/* Подготовка релиза (ветвление от develop)
hotfix/* Срочные исправления в production (ветвление от main)

Типичный workflow

# Начать новую функцию
git checkout develop
git checkout -b feature/my-feature

# Завершить функцию
git checkout develop
git merge --no-ff feature/my-feature
git branch -d feature/my-feature

# Релиз
git checkout -b release/1.0.0 develop
# ... финальные правки, тег версии ...
git checkout main
git merge --no-ff release/1.0.0
git tag -a v1.0.0
git checkout develop
git merge --no-ff release/1.0.0

Игровая логика (Snake.Core)

  • Board — размеры поля и проверка границ
  • Snake — сегменты тела, направление, движение
  • Food — случайное размещение еды на свободных клетках
  • SnakeGame — игровой цикл, счёт, коллизии со стенами и собой
Description
C# Snake game with CLI and Avalonia UI interfaces using .NET
Readme 48 MiB
Languages
C# 100%