Реализация последнего алгоритма. Поиск линий из 5+ шариков и анимация их удаления.
Дата отправки отчёта:
18 июня 2016 г.
Задание выполнено: за
2 час. 30 мин.
Чему научился:
Очень много всего, вроде ничего нового, но все вместе собирается в довольно сложный код.
Что было сложным:
Реализовать придуманные улучшения.
Комментарии:
Практически все улучшения получились недоделанными (долго пытался решить с очками и отменой хода, но потом оставил по принципу "лучше сделать как-то, чем никак"): 1. Подсчет очков. Ровно по 50, независимо от количества шаров. Т.к. реализованная StripLines() на 6 шаров срабатывает 2 раза, на 7 шаров 3 раза и так далее, то получается умножение очков с каждым шаром (100 за 6, 150 за 7). При привязке очков к strips примерно тот же эффект. Поэтому оставил так. 2. Сохранение рекорда. Но он хранится в переменной и сбрасывается при выходе из игры. Хранение в файле делать не стал. 3. Кнопка перезапуска игры. Вынес содержимое Status.init в отдельный метод StartGame() и сделал его вызов по кнопке и при заполнении поля. 4. Кнопка отмены хода. Возвращает состояние шаров. Но только тех, что уже есть на карте (в нормальном состоянии), без следующих. Следовательно остаются только актуальные следующие, а не сбрасываются на предыдущее состояние (видно на скриншотах). Конечно добавляет определенный игровой момент, но кривовато. Ограничил количество отмен хода тремя.