# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
2 теста |
|||
Создание известной игры «Пятнашки» — отличное упражнение для начинающих программистов. На первом уроке мы создадим интерфейс игры и разместим все кнопки. На втором уроке мы напишем класс логики игры и допишем программу. На третьем уроке мы вместо кнопок будем использовать картинки — динамически их создавать и размещать на них вырезанные кусочки основной картинки. Отчёт отправил: 10558. Иван Воронин Выполнено за 30 мин. [Показать отчёт] Научился: Повторил пройденное Сложности: найти время Комментарии: 1 - Создал иконку в фотошопе. 2 - Числа в двоичной системе. 3 - подготовил графику для финальной версии =) пока не афиширую. |
|||||
2 | Игра 15 - Алгоритм |
1 тест |
|||
Завершаем создание игры Пятнашки. На втором уроке мы напишем класс логики игры, в котором опишем матрицу для хранения чисел на кнопках и реализуем основные методы: start, shift, check_numbers и другие. Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 25 мин. [Показать отчёт] Научился: Повторил пройденное Сложности: найти время Комментарии: Отличный урок, отличная игра, идём дальше. з.ы. усложнил тем, что числа в бинарном виде =) |
|||||
3 | Игра 15 - Картинка |
2 теста |
|||
Переделываем игру Пятнашки в Пазл картинки. Убираем кнопки, вместо них динамически размещаем матрицу PictureBox'ов, в которые загружаем кусочки картинки, предварительно разрезав их и сохранив все части картинки в матрицу Image. Размер поля можно будет выбирать, от 3 на 3 до 6 на 6. Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 1 мин. [Показать отчёт] Научился: Отличный урок, добавил несколько картинок, на каждом уровне новая, так же вынес подгрузку картинки за пределы циклов, чтобы каждый раз одну и туже картинку не подгружало для обрезания, теперь она просто передаётся доп. параметров. Отличное завершение для классической игрушки. Сложности: найти время |
|||||
4 | Аполлон. Главные герои |
2 теста |
|||
На этом уроке мы озвучим правила игры Аполлон. Выясним, какие у нас будут главные герои. Твоё самостоятельное задание - нарисовать на бумаге внешний вид игры со всеми главными героями. Как ты это себе представляешь. Отчёт отправил: 10558. Иван Воронин Выполнено за 1 мин. [Показать отчёт] Научился: Дочка изъявила желание нарисовать это дело, приложил скан её набросков за пару минут. Сложности: найти время |
|||||
5 | Аполлон. Законы физики |
|
|||
Корабль Аполлон прилуняется на Луну. На этом уроке мы рассмотрим упрощённую физическую модель этого процесса и выпишем все параметры и все формулы, которые будут управлять этим процессом. Отчёт отправил: 10558. Иван Воронин Выполнено за 1 мин. [Показать отчёт] Научился: Основное время ушло на создание текстур в стиле спектрума =) Отличный урок, идём дальше. з.ы. так как данный урок тоже уже третий раз попадается, то его отчёт не составил особого труда =) Сложности: найти время |
|||||
6 | Аполлон. Плавное прилунение |
1 тест |
|||
На этом уроке мы допишем игру Аполлон. Свяжем класс логики с интерфейсом. Сделаем управление двигателем с помощью мышки. Добавим таймер, функцию отображения корабля. А также сообщение о конце игры и перезапуск игры. Отчёт отправил: 10558. Иван Воронин Выполнено за 2 мин. [Показать отчёт] Научился: Надо было просто повторить за учителем, а я как всегда красоту навожу, основное время на фотошоп и ушло =) Сложности: Остановиться дорабатывать Видеообзор: -xNY0uNaIDU |
|||||
7 | ПОЛУФИНАЛЬНЫЙ УРОК |
|
|||
Задание. Записать видеообзор любой программы из первой части этого курса. Отчёт отправил: 10558. Иван Воронин Выполнено за 8 мин. [Показать отчёт] Научился: Так как курс уже не раз перетасовывался, добавлялись и удалялись уроки, то мой отчёт тоже может стать не актуальным из-за того, что игрушки до фолуфинала могут измениться вновь =) а так как видео отчёт уже записывал по одной игрушке, то записывать видео отчёт не стал, оставлю это дело для финального урока =) Сложности: найти время |
|||||
8 | 2048 - Учимся играть |
|
|||
Начинаем создание модной игры 2048. Но сначала нужно научиться в неё играть. Это можно сделать здесь: http://2048game.com/ru/ Отчёт отправил: 10558. Иван Воронин Выполнено за 49 мин. [Показать отчёт] Научился: Прикольная игра, ранее в неё не играл никогда, поиграл 3 раза, с каждым разом всё дальше и дальше. Сложности: найти время |
|||||
9 | 2048 - Интерфейс |
|
|||
На этом уроке мы создадим интерфейс программы. Динамически создадим Label для цифр и разместим их в матрицу. Раскрасим кнопочки и создадим обработчик курсорных клавиш. Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 59 мин. [Показать отчёт] Научился: отличное начало, всё супер, идём дальше. Сложности: найти время |
|||||
10 | 2048 - Смещение |
2 теста |
|||
На этом уроке мы реализуем класс с логикой игры. Далее, напишем заглушки для функций смещения клеток и функцию проверки окончания игры game_over(). Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 34 мин. [Показать отчёт] Научился: Отлично, идём дальше. з.ы. надо будет добавить проверку на возможность объединения соседних одинаковых чисел, даже если всё поле заполнено, но думаю это будет в след. уроках. Сложности: найти время |
|||||
11 | 2048 - Объединение |
|
|||
На этом уроке мы напишем функции смещения и объединения клеток. Далее, пошагово выполним эти алгоритмы, чтобы понять принцип их работы. Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 48 мин. [Показать отчёт] Научился: Отличная игра получилась, заменил TableLayoutPanel на обычную Panel, так намного веселее, а по поводу поддержки ресайза, ну чуток больше кода добавить надо будет, не критично. Реализовал свою функцию поиска возможных комбинирований при проверке на конец игры. Так же порефакторил код, чтобы не было дубликатов. Всё супер, идём дальше. Сложности: найти время |
|||||
12 |
![]() |
|
|||
Играл в крестики-нолики, мелом на асфальте? Я играл, и очень много, был непревзойдённым профессионалом в своём дворе, изучил все ходы-выходы в этой программе, и замахнулся на создание искусственного интеллекта! :) Игрушка не сложная, она отлично подходит для упражнения в программировании для программиста. Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 58 мин. [Показать отчёт] Научился: Отличная игрушка, видно, что урок древний, но от этого он не менее приятный. з.ы. Добавил иконку и текстуры крестика/нолика. Добавил счёт, который отображается в тайтле формы. Чей ход выполнен в виде булевой переменной, так удобнее и меньше ресурсов выделяется. Вместо булевой переменной play, реализовал перечисление State, с возможными вариантами стадии игры. Если стадия ИГРА, то после каждого клика по пустой клетке производится переход хода. При чьей-то победе, увеличивается счётчик на единицу победившей стороне. При ничье, счёт остаётся неизменным. Проверку наличия координат на поле вынес в отдельную функцию: OnMap(). Функцию Finish() реализовал по своему, производится проверка три вряд по всем направлениям (аля солнышко). Добавил подробное описание правил игры. Добавил подробное описание об игре. На формах "Об игре" и "Правила игры" добавлены иконки с левой стороны. На форме "Об игре" добавлен вопрос открытия профиля на сайте проекта и две кнопки: "Да" или "Нет". и много других мелких правок и оптимизаций... Сложности: остановиться =) |
|||||
13 | Крестики-Нолики. Игра с компьютером |
|
|||
На этом уроке мы добавим в игру Крестики-Нолики искуственный интеллект. Мы напишем алгоритм, который будет искать наилучший ход для позиции. Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 31 мин. [Показать отчёт] Научился: Отличный урок, но реализацию ИИ сделал по своему =) Всё реализовывал сам, потом смотрел видео. з.ы. Убрал TableLauoutPanel, реализовав имитацию игры цветными ручками на бумаге в клеточку =) Выбор за кого играет ИИ вынес в доп. меню игры с ИИ. Реализовал демонстрацию, где ИИ играет сам с собой с задержкой пол секунды (не использовал таймер или внешний поток, всё отрабатывает в общем потоке, отображая ситуацию на поле). Сложности: победить ИИ =) |
|||||
14 | ФИНАЛЬНЫЙ УРОК |
|
|||
Задание: Записать видео обзор любой игры, созданной на этом курсе. Отчёт отправил: 10558. Иван Воронин Выполнено за 27 мин. [Показать отчёт] Научился: Сложно делать уроки с температурой =) Сложности: найти время Видеообзор: WQcF08iPOI0 |
|||||
15 | VIP урок. Формула 1 |
|
|||
Создаём динамический графический объект - машинку. Ездит по экрану. Поворачивает. Восемь направлений. Разгоняется и тормозит. Задний ход. Отчёт отправил: 10558. Иван Воронин Выполнено за 8 час. 11 мин. [Показать отчёт] Научился: Создал иконку для приложения. Нарисовал спрайты для 4 машинок разного цвета. Вместо пустого фона использовал красивую трассу =) Управление машинками синхронизировал, чтобы они двигались как на параде =) Каждая машинка это экземпляр класса Car. Все картинки подгружаются перед запуском игры и для каждой машинки загружаются текстуры своего цвета. Движение машинок осуществляется при зажатии кнопки "Вверх", при отпускании её, они останавливаются. Добавлена поддержка коробки передач, для этого используются кнопки: "A" и "Z". В момент зажатия клавиши "Вверх" и последующих нажатиях на клавиши поворота: "Влево/Вправо", машинки не останавливаются, так же и с переключением скоростей (3 передних и 1 задняя). з.ы. есть ещё куча идей, но это отдельная история, не для данного отчёта =) Сложности: остановиться Видеообзор: E7kfIPAFR3g |
|||||
16 | VIP урок. Стрелялка |
|
|||
Сегодня мы напишем классический одноэкранный шутер. Будет лететь самолётик и сбивать шарики. На примере простых объектов демонстрация основ ООП. Отчёт отправил: 10558. Иван Воронин Выполнено за 10 час. 28 мин. [Показать отчёт] Научился: Отличный урок, навеял игрушку Space Invaders/Galaxian, поэтому не удержался и решил реализовать в этом ключе =) Подробности в видео, приятного просмотра =) Сложности: остановиться =) Видеообзор: U_Y0jXXCWRs |
|||||
17 | VIP урок. Змейка |
|
|||
Создаём популярную игру «Змейка». На примере простых объектов демонстрация основ ООП. Отчёт отправил: 10558. Иван Воронин Выполнено за 1 день 20 мин. [Показать отчёт] Научился: найти время Сложности: как обычно создал уникальную иконку для бинарника и форм помимо базовых, добавил текстуры поворота головы/хвоста размещение змейки на поле случайное змейка поворачивает голову туда куда ползёт, хвост поворачивается за телом в левом-верхнем углу экрана показаны яйца текущей змеиной семьи первый кто вылупился, начинает отъедаться на кроликах, чтобы вырасти и отложить яйца при поедании определённого количества кроликов, появляются дополнительный яйца если змейка врезалась в стену или слопала саму себя, рождается следующая змейка и так до тех пор, пока не окончатся яйца, по окончанию игры будет отображена статистика в правом-верхнем углу показано количество слопанных кроликов текущего змеиного выводка вверху-по центру показан рекорд на протяжении всех попыток игры рекорд сохраняется в файл в папке data при запуске игры, если таковой файл имеется, то загружается рекорд из файла, если же файла нет, то рекорд обнуляется (можно сбросить простым удалением файла) поворачивать голову при движении за 1 такт может только под 90 градусов (защита от того, чтобы не повернуть на 180 и не слопать саму себя) игровая статистика выполнена в игровом стиле, добавлены необходимые текстуры если змея врезалась, но при этом ещё есть яйца, то игра не начинается сначала, появляется новая змейка, а текущий счёт не обнуляется, пока не закончится игра после при этом генерируется новое с новым расположением змейки и кролика добавлена новая форма и активирована как основная, форма самой игры теперь вторична на начальной форме добавлено игровое меню из 3 пунктов: Играть, О игре, Выход пункты меню подсвечиваются в стиле ZX Spectrum при наведении мышью пунктами меню можно управлять и стрелками вверх/вниз на клавиатуре выбор пункта осуществляется клавишей Enter или кликом мыши при выборе пункта "Играть" - открывается форма и начинается игра при выборе пункта "О игре" - открывается профиль на проекте videosharp.info звуковые файлы хранятся в папке data, так же они были конвертированы в форма mp3 для экономии места з.ы. урок делал ещё летом 2016 года по событию "Чашка кофе". Видеообзор: mhCMxpdP3oA |
|||||
Итого: 17 видеоуроков |
9 час. 09 мин. 10 тестов |
12 чел. | |||
Финалисты: Tekashnik, Максим Лапшинов, Иван Воронин, Permitin Alexey, Кирилл, Артём Нагорный, no name, Дмитрий, MaxB, Tom, Tim, Alina . |