Создание популярной игры для развития памяти с 16 карточками.
Карточки памяти# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
1 тест |
|||
Мы напишем игру «Карточки памяти». На форме 16 карточек из 8 парных картинок. Цель игры - попарно открыть все карточки. Задание: Подготовить картинки, настроить форму, сделать меню. Разместить сетку, написать правила игры и сводку об авторе. Отчёт отправил: 4692. Михаил Выполнено за 2 час. 57 мин. [Показать отчёт] Научился: Все понравилось, прохожу курс в рамках подготовки к воскресному вебинару)). Решил только автоматизировать добавление PictureBox на панель, а не просто копировать их на форму |
|||||
2 | Отображение карточек |
1 тест |
|||
На этом уроке мы сначала нарисуем блок-схему алгоритма игры, а потом сделаем отображение и перемешивание карточек. Отчёт отправил: 4692. Михаил Выполнено за 5 дней 23 час. 33 мин. [Показать отчёт] Научился: Задумал автозаполнение ячеек через массив, чтобы обращаться к ним через свойство LayoutTable - GetCellPosition(). Вместо того, чтобы присваивать каждой картинке тэг. Хоть и оказалось элегантно, но не практично. Не придумал как заполнять двумерный массив картинками. Пришлось вернуться к топорной идее switch. |
|||||
3 | Алгоритм игры |
|
|||
У нас всё готово для программирования. На этом уроке мы напишем основной алгоритм. Будем использовать блок-схему состояний с прошлого урока. Отчёт отправил: 4692. Михаил Выполнено за 1 день 3 час. 7 мин. [Показать отчёт] Научился: Добавил класс MyPictureBox, который наследует от PictureBox. Добавил в него поле ID, чтобы по нему возвращать нужную нам картинку по клику на PictureBox. Немного изменил алгоритм, что позволило избавиться от функций show, hide и open. Такой себе рефакторинг, конечно)). Интересно посмотреть, что придумал Евгений Витольдович на этот счет) |
|||||
4 | Независимый класс |
|
|||
На этом уроке мы приступим к рефакторингу для выделения логики игры в отдельный, независимый класс. Мы определим в новом классе два публичных метода, а также создадим интерфейс IPlayable, который поможет нам вызывать методы из внешнего класса, не нарушая независимости. Отчёт отправил: 4692. Михаил Выполнено за 2 час. 21 мин. [Показать отчёт] Научился: Добавил интерфейс IPlayable и класс LogicMemory под свою логику |
|||||
5 | Классовая независимость |
|
|||
На этом уроке мы перенесём все методы и поля, которые относятся к логике игры, в независимый и самодостаточный класс LogicMemory. Отчёт отправил: 4692. Михаил Выполнено за 1 день 22 час. 54 мин. [Показать отчёт] Научился: Перенес логику игры в класс LogicMemory. Из за измененной логики игры, пришлось повозиться и передавать дополнительные параметры. В целом я остался доволен |
|||||
6 | Класс в Библиотеке |
|
|||
На этом уроке мы вынесем класс LogicMemory с интерфейсом в отдельный проект для создания библиотеки. Не забудьте дать публичный доступ классу и интерфейсу, а также добавить Reference на добавленный проект. Отчёт отправил: 4692. Михаил Выполнено за 23 час. 13 мин. [Показать отчёт] Научился: Очень странно, но в моей версии VS2017 не было компонента Library. Пришлось обновиться, и после обновления он появился |
|||||
7 | Персональные картинки |
|
|||
Мы начинаем создание карточек памяти для мобильных платформ: Android + iPhone. В этом нам поможет технология Unity. Скачайте и установите Unity Personal, а также найдите 9 *квадратных* картинок по вашей любимой тематике. Убедитесь, что у вас есть файл MemoryLibrary.dll из прошлого урока. Отчёт отправил: 4692. Михаил Выполнено за 33 мин. [Показать отчёт] Научился: Хорошая затея, идем к следующему уроку |
|||||
8 | Запуск Unity с картинками |
1 тест |
|||
На этом уроке мы познакомимся с интерфейсом Unity. Разместим в Assets подготовленные картинки и добавим их на сцену. Запустим, порадуемся результату и морально подготовимся к следующему уроку. Отчёт отправил: 4692. Михаил Выполнено за 6 мин. [Показать отчёт] Научился: Быстрый результат - это всегда радует |
|||||
9 | Авоська картинок |
1 тест |
|||
На этом уроке мы разместим 16 кнопок в панель, с натройкой Grid Layout. Поэкспериментируйте и напишите, что у вас получилось. Отчёт отправил: 4692. Михаил Выполнено за 18 мин. [Показать отчёт] Научился: Пока только начал изучать юнити и пока сложно ориентироваться в настройках |
|||||
10 | Горизонтальное и Вертикальное |
1 тест |
|||
На этом уроке мы разместим панели внутри панели. Будем использовать горизонтальное и вертикальное выравнивание. В результате все 16 кнопок будут автоматически менять размеры под экран устройства. Отчёт отправил: 4692. Михаил Выполнено за 11 мин. [Показать отчёт] Научился: Спасибо Евгению за проделанную работу) |
|||||
11 | Открытие по щелчку |
2 теста |
|||
На этом уроке мы создадим скрипт, в котором будет метод обработки нажатия по картинке. Во второй части урока мы реализуем отображение выбранной картинки на кнопке. Отчёт отправил: 4692. Михаил Выполнено за 1 час. 22 мин. [Показать отчёт] Научился: Узнал новые функции Unity |
|||||
12 | Неуловимая птичка |
|
|||
На этом уроке мы подключим библиотеку к нашему проекту и запустим игру.
Отчёт отправил: 4692. Михаил Выполнено за 2 дня 2 час. 2 мин. [Показать отчёт] Научился: Пришлось изрядно поприседать с Unity. Для игры я написал свою логику с иcпользованием класса Bitmap. Что привело в итоге к большим страданиям. Пробовал переделать логику игры с использованием 2DTextures, но познал лишь страдания. В итоге пришлось снова все перелопатить и сделать независимый от сторонних библиотек класс, |
|||||
13 | ФИНАЛЬНЫЙ УРОК |
без видео |
|||
Запишите видеообзор полученных программ. | |||||
14 | VIP-загрузка на Android |
|
|||
На этом уроке формулист VIP расскажет, как запустить игру на Android. | |||||
Итого: 14 видеоуроков |
3 час. 06 мин. 7 тестов |
14 чел. | |||
Финалисты: Иван Воронин, Snepper, Александр Балбашов, vip, Кирилл, Айдар, Дмитрий, Артём Нагорный, no name, Permitin Alexey, ES35, MaxB, Tim, Tom . |