C# Игра: Создаем врагов-машин (Урок 5)

Создадим машины соперников, которые будут появляться в случайных координатах и двигаться на игрока.

Добавление и настройка машин

Добавим на форму два элемента PictureBox, представляющих машины соперников. Загрузим в них изображение машины (можно использовать любое изображение размером 128×128 пикселей). Установим свойство SizeMode на StretchImage. Изменим цвет фона PictureBox на 64, 64, 64. Переименуем PictureBox-ы в enemy1 и enemy2. Чтобы машины изначально были не видны, установим для них свойство Top равным -130 для enemy1 и -400 для enemy2.

Код движения и появления машин

В обработчике события таймера добавим код для движения и появления машин. Создадим переменную carSpeed (например, 7) для управления скоростью движения.

int carSpeed = 7;
enemy1.Top += carSpeed;
enemy2.Top += carSpeed;

if (enemy1.Top > 650)
{
    enemy1.Top = -130;
    enemy1.Left = new Random().Next(150, 300);
}
if (enemy2.Top > 650)
{
    enemy2.Top = -400;
    enemy2.Left = new Random().Next(300, 560);
}

Теперь машины будут постоянно двигаться сверху вниз, а после достижения нижней границы (650 пикселей) снова появляться сверху в случайном горизонтальном положении. Скорость игры можно настроить изменением значений carSpeed и интервала таймера.

Проверка столкновения

Добавим проверку столкновения игрока (player) с машинами-соперниками. Используем метод Bounds.IntersectsWith для проверки пересечения прямоугольников, ограничивающих объекты. При столкновении выключим таймер, завершив игру.

if (player.Bounds.IntersectsWith(enemy1.Bounds) || player.Bounds.IntersectsWith(enemy2.Bounds))
{
    timer1.Enabled = false;
}

Игра завершается при столкновении с любой из машин. В последующих уроках будет добавлено более полное завершение игры с кнопкой перезапуска.

В этом уроке мы добавили в игру машины-соперники, которые двигаются и появляются в случайных местах. При столкновении с ними игра заканчивается. В следующих уроках мы улучшим игру.

Что будем искать? Например,программа