Изучение c# на примерах

Формула программиста
основатель — Волосатов Евгений Витольдович

Игра Тетрис

Цель игры - набрать как можно больше очков.
Очки начисляются при заполнении
Полностью горизонтальной линии фигурами.
Тогда эта линия уберется и зачисляться очки.

Это 20 уроков по написанию игры Тетрис,
Мы пройдемся по всем этапам разработки.
Посмотрим что нам будет необходимо,
Чтобы легко, удобно и быстро управлять игрой.
Напишем несколько универсальных методов,
Которые помогут в работе с массивами.

Что ты получишь, пройдя курс:
+ Собственную игру Тетрис
+ Знания, для перемещения блоками элементов
+ Навык разработки динамических игр

Различные вариации игры
1. Классический
2. На прохождение
3. Классический вдвоем кооператив
4. Классический вдвоем каждый сам за себя
5. Вдвоем друг против друга

Объём: 17 видеоуроков
Время: 6 часов 28 минут.
Доступ на 30 дней.

4,000 руб.


Для подписки на пакет необходимо авторизоваться.

Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 Подготовка формы 00:10:54 25 чел. ★ 4.8 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: Вспомнил про тетрис и увидел как будит выгледить примерно игра 
Сложности: нечего  
Комментарии: нету 
2 Игровая доска 00:22:02 21 чел. ★ 4.8 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: нечего 
Сложности: нечему 
Комментарии: все очень просто панель делим на размер x и прибавляем 1 а у вас как со звуком? я ставлю максимум все настройки и тогда нормально слышу а так плохо а так со звуком все нормально при просмотре фильмов ставлю на 20 
3 Логика игры 00:17:08 18 чел. ★ 4.9 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: узнал для чего столько массивов 
Сложности: нечего  
Комментарии: все нормально 
4 Класс Фигур 00:17:22 12 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: сделал класс для фигуры и написал все базовые фигуры там 
Сложности: понять зачем нужно стартовая позиция и позиция а то сперва запутался я  
Комментарии: Наверное позиции были сделаны чтобы потом легче поменять стартовую позицию фигуры  
5 Движение фигур 00:22:20 12 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 25 мин. [Показать отчёт]
Научился: для меня дошло зачем нужны были позиции написал метод движения фигура написал движения фигур в стороны написал метод чтобы не выскакивала ошибка при движение за границу карты  
Сложности: нечего 
Комментарии: у меня сейчас получился еще один цикл в методе step для проверки массив не выходит за рамки и если выходит то сразу мы выходим из метода 3. Новая фигура должна появляется когда достигли конца массива или на пути в массиве map_back встретилась препятствие тогда останавливается фигура удаляется с map и записывается в map_back (после записи идут проверки там) и потом появляется новая фигура хорошо было сказано что подумать и остановить видео спасибо за урок 
6 Разноцветные фигуры 00:21:38 12 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 25 мин. [Показать отчёт]
Научился: написал метод цвета фигур написал дообовления новых фигур остоновку старых фигур помещение остановленых фигур в другой массив 
Сложности: нечего 
Комментарии: было у меня не до конца у меня прошлое задание доделано просто сделал как думал и не сделал добавления новых фигур  
7 Поворачиваем фигуры 00:16:14 12 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 2 час. 00 мин. [Показать отчёт]
Научился: поворачивал матрицу в голове написал повороты для остальных фигур написал консольное приложение для поворота матрицы 
Сложности: разобратся с поворотами 
Комментарии: может консольное приложение стоит подругому написать поворот фигур и потом встроить в игру чтобы все фигуры поварачивала 
8 Управление 00:29:18 11 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 2 час. 00 мин. [Показать отчёт]
Научился: переделал класс Figure c использовании массива int и с поворачиванием фигуры через сдвиг массива в сторану, чтобы все нормально отображалось  
Сложности: Заставить себя сделать подругому с массивом и сдвигом. Вышла что 13 дней непосылал я отчетов а все сделал в 3 присеста за полтора часа гдето  
Комментарии: Хочется так еще изменить класс Board точнее разделить его вынести логику заполнения массива и отрисовку в отдельные в отдельные классы и сделать перерисовку только там где произошли изменения. Чтобы потом можно было пользоватся классом для того чтобы перенести на WPF или WM10 4. Сделал в keydown проверку if (timer1.Enabled) switch (e.KeyCode) и вынес с switch паузу в простой if может чтото пропустил я но у меня при переворачивании фигур возле стенок вылазит ошибка  
9 Мини-панель 00:22:10 11 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: добавил мини понель 
Сложности: нечего 
Комментарии: 5. А его и ненадо мы ведь непередвигает там в нем фигуры и невыводим пару фигур  
10 Удаляем строки 00:32:37 10 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: Создал методы для удаление и добовления строки 
Сложности: нечего 
Комментарии: нету  
11 Проигрыш 00:14:54 9 чел. ★ 4.9 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 15 мин. [Показать отчёт]
Научился: на форму добовил подсчет очков и удаление строки  
Сложности: нечего  
Комментарии: нету  
12 Перезапуск игры 00:24:36 9 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: провeрку на вхoждeние фигyры при переворачивании хорошо получилось и лайф хаку научился здорово вышло  
Сложности: исправить свои опечатки 
Комментарии: интересный урок был 4. Окончание игры проигрыш или набор определенного счета в игре и переход на следующий уровень 
13 Главное меню 00:24:00 9 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: создал главное меню 
Сложности: нечего 
Комментарии: нету 
14 Уровень 1 00:34:28 9 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 40 мин. [Показать отчёт]
Научился: создать мусор и усложнять уровни 
Сложности: нечего 
Комментарии: добавил вывод уровня  
15 Игра вдвоем кооператив 00:20:16 9 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: добисать для игры вдвоем 
Сложности: нечего 
Комментарии: написал так if(isTwo && board.isLeft) 
16 Игра вдвоем каждый сам за себя 00:28:37 9 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: узнал как сделать чтобы играли сам за себя против другого человека 
Сложности: нечего 
Комментарии: 4. а зачем добавлять второй класс board мы ведь ему не делем не какого дополнительного функционала а просто создаем экземпляр этого же класса через оператор new понравился как без больших усилий сделали игру на 2 спасибо 
17 Баттл начинается! 00:29:46 6 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: играть за двоих добовлять мусор передовая между обьектами класса Board 
Сложности: нечего 
Комментарии: жаль что кончился курс ждем еще другие курсы  
18 ФИНАЛЬНЫЙ УРОК 5 чел. ★ 5 Open
19 VIP урок. Angry Birds или проблемы красивых игр 00:20:07 5 чел. ★ 5 $
  Итого:   19 видеоуроков общей продолжительностью 6 час. 48 мин. 5 чел. ★ 4.97  
  Финалисты:   Аркадий,   Сергей Соколов,   Николай,   Алексей|BrisK|Кривицкий,   Артём .

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Повторил "защиту" видеопрограмм
Трудности: Записать видео.
Сделал дублей 20, т.к. постоянно какие-то ошибки были у меня в программе. Теперь об отзыве: Кирилл, огромное тебе спасибо за этот курс! Ты меня окунул в детство и заставил вспомнить славные дни за этой игрой! А теперь я её и сам написал, и дальше хочу развивать. Очень хорошо объяснял трудные темы и постоянно давал задания на дом. Я себя чувствовал студентом во время защиты лабораторных работ, но это и правильно :) И хорошо, что обучаешь программированию через написание игр, потому что этот метод, я считаю, убивает двух зайцев: 1) Я обучаюсь программированию, прокачиваю навыки, точнее; 2) Я играю в собственно написанную игру и есть стимул её развить, улучшить. Буду дальше проходить старые незаконченные курсы, а потом начну Сетевые технологии и Web-бот, который пригодится мне для диплома. Спасибо тебе за этот курс!!!
Смотреть видеозапись: msTO5izSLA8
Научился: Спасибо за отличный видео курс. На этом курсе я повторил теорию ООП. Научился работать с массивами. Научился обрабатывать нажатия клавиш и многому другому.
Трудности: в принципе ничего сложного не вспомню.
Еще больше таких отличных курсов =)
Смотреть видеозапись: https://youtu.be/SxKRYpR0OL0