Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
11-13, 15. Дополнительные проекты Windows Forms.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
86.77 Кб
Скачать

Проект "Танчики"

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

Этапы разработки:

  1. Создайте новый проект "Tanks". Для начала добавьте один PictureBox и заставьте его двигаться с клавиатуры. Дети уже почти умеют это делать - помоги им подсказками. Затем научите его не покидать форму. Для этого напишите метод TryMove(PictureBox entity, Point destination) и отладьте его

  2. Добавьте преграды. Это будет List<PictureBox> (расскажи, что это такое), в который в Form_Load нужно будет добавить все "заграждения", заранее добавленные на форму. Модифицируйте метод TryMove так, чтобы танк не могу попасть "внутрь" преграды. Используйте метод IntersectsWith у элемента управления. Он возвращает true, когда у указанных элементов управления есть общая область (то есть двигаться в таком случае нельзя)

  3. Научите танк стрелять. Создайте List<PictureBox>, в который будут добавляться все снаряды, выпущенные противниками. У них будет одинаковая текстура (неважно, чей снаряд; если он оказался внутри вас - вы труп), а направление можно сохранить в любом из полей Text, Tag или Name (они не используются в PictureBox). Добавьте таймер, обрабатывающий движение снарядов. Перемещайте снаряды в обработчике его Tick, попутно проверяя: если снаряд оказался внутри танка (Rectangle снаряда пересекается с Rectangle танка) - тот умирает (или получает урон); если снаряд оказался внутри текстуры, то снаряд исчезает (текстура, кстати, может быть разрушаемой, и тогда она исчезнет тоже!); если снаряд оказался внутри другого снаряда, исчезают оба

  4. Добавьте второго противника, выделите ему свои управляющие клавиши. Добавьте обработку его физики в метод TryMove. Готово! Устройте танковые бои в оставшееся время!

Далее описаны проекты, подробный алгоритм создания и код которых можно найти в учебнике. Увидев, что код проектов есть в учебнике дети, естественно, начнут его копировать и у них, как ни странно, ничего не заработает. Причина простая – если просто скопировать код из учебника, то методы не будут привязаны к конкретным событиям на форме. Так что расскажи ребятам, что лучше всего им будет самим писать код, немного сверяясь с учебником. Это относится ко всем проектам ниже.

Проект "Калькулятор"

Этот проект могут выполнить дети, которые умеют работать, с такими элементами Windows Forms как Button и TextBox.

Подробная инструкция создания данного проекта описана в учебнике. Здесь я расскажу о том, какие варианты улучшения проекта можно задать детям на дом или дать особо продвинутым детям делать прямо на занятии:

  1. Самое очевидное и самое простое – дай детям задание добавить для калькулятора функции возведения в степень, а также подсчет остатка от деления

  2. Если дети уже знают, как работать с MessageBox, можно попросить их сделать так, чтобы калькулятор «надоедал» пользователю просьбами приобрести платную версию после каждой подсчитанной операции

  3. Можно добавить смешные пасхалки. Например, если результатом вычисления становится какое-то определенное число, выскакивает какая-то связанная с этим числом шутка (дай детям самим придумать эти пасхалки)