Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!
Вебинар «Карточки памяти на Android» начнётся через 1  день 15 час. 40 мин.

Шарики / Шарики. Поиск линий

  • Реализация последнего алгоритма.
    Поиск линий из 5+ шариков и анимация их удаления.
  • Дата отправки отчёта: 19 июня 2016 г.
  • Задание выполнено: за 3 час. 45 мин.
  • Чему научился: Сравнивать неработающий кусок кода с работающим.
    Добавил от себя ещё одну ступень "схлопывания" линии в виде мелких крестиков из path.
  • Что было сложным: аккуратно списывать код
  • Комментарии: При отладке используются клавиши типа F5, на записи не видно, что это за кнопки. Лучше пользоваться иконками на экране.
  • Оценка видео-уроку:
Отчёт от 10478 за Шарики / Шарики. Поиск линий




Оцени работу

 
Сохранить страницу:

1. Евгений Волосатов
Евгений Волосатов
ответить
→  DeeP  # Шарики / Шарики. Поиск линий / 2016-06-19 21:30

Хорошо проработал урок, ты молодец!



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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Очень много всего, вроде ничего нового, но все вместе собирается в довольно сложный код.
Трудности: Реализовать придуманные улучшения.
Практически все улучшения получились недоделанными (долго пытался решить с очками и отменой хода, но потом оставил по принципу "лучше сделать как-то, чем никак"): 1. Подсчет очков. Ровно по 50, независимо от количества шаров. Т.к. реализованная StripLines() на 6 шаров срабатывает 2 раза, на 7 шаров 3 раза и так далее, то получается умножение очков с каждым шаром (100 за 6, 150 за 7). При привязке очков к strips примерно тот же эффект. Поэтому оставил так. 2. Сохранение рекорда. Но он хранится в переменной и сбрасывается при выходе из игры. Хранение в файле делать не стал. 3. Кнопка перезапуска игры. Вынес содержимое Status.init в отдельный метод StartGame() и сделал его вызов по кнопке и при заполнении поля. 4. Кнопка отмены хода. Возвращает состояние шаров. Но только тех, что уже есть на карте (в нормальном состоянии), без следующих. Следовательно остаются только актуальные следующие, а не сбрасываются на предыдущее состояние (видно на скриншотах). Конечно добавляет определенный игровой момент, но кривовато. Ограничил количество отмен хода тремя.
Научился: 1. алгоритму поиска кратчайшего пути "волна" 2. поиск N элементов в ряд
Трудности: алгоритм поиска пути, а также делегаты
очень хороший урок хоть и немного сложный в части алгоритма поиска кратчайшего пути
Смотреть видеозапись: http://www.youtube.com/watch?v=kC7yzrLs54E