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

Формула программиста
основатель — Волосатов Евгений Витольдович
Приходи на 3-дневный мастер-класс по C#
Вебинар «Мастер класс - две программы» начнётся через 1  день 12 час. 37 мин.

Микроигры / 2048 - Смещение

  • На этом уроке мы реализуем класс с логикой игры.
    Далее, напишем заглушки для функций смещения клеток
    и функцию проверки окончания игры game_over().
  • Дата отправки отчёта: 2 июня 2015 г.
  • Задание выполнено: за 10 час. 00 мин.
  • Чему научился: все больше понимаю как работать с большим функциями. прокачиваемся.
  • Что было сложным: во время игры иногда вылетает ошибка. в чем дело победить не смог. прошу помощи.
  • Комментарии: Хорошая игра вышла.
  • Оценка видео-уроку:
Отчёт от 5407 за Микроигры / 2048 - Смещение


Отчёт от 5407 за Микроигры / 2048 - Смещение




Оцени работу

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

24. Олюшка
Олюшка
ответить
→  Дмитрий 199  # Супер игры / 2048 - Логика / 2015-06-02 12:08

Дмитрий, превосходно, очень рада твоим успехам! Ты Молодец! Так и продолжай! :)



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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Рекурсивному движению значений в определенную сторону. Интересная реализация механики игры, не все понятно, но посидеть - разобрать и я думаю все встанет на свои места
Трудности: Понять логику рекурсии
Чуть-чуть изменил цвета относительно заготовки. Поменял цвет заднего фона чтобы не так сливалась картинка. Добавил счетчик в углу экрана (как в оригинале). Добавил кнопку рестарта (если вдруг не нравиться результат или расстановка - всегда можно начать сначала). Добавил Победу. При появлении ячейки со значением 2048 высвечивается поле, поздравляющее с победой. Можно либо начать игру сначала либо продолжить набивать очки.
Научился: Повышать скорость работы программы. И рекурсия. Хотя здесь как раз быстро смекнул что к чему:)))))))
Трудности: Наверное рекурсия.
Наконец-то я доделал это приложение! Подробности ниже!))) 1. Добавил статистику игры в виде таблицы рекордов. За формирование таблицы рекордов отвечает отдельный класс "Statistics". В нем инкапсулирована вся работа с таблицей. При сохранении таблицы я использовал сериализацию и десериализацию. Это неимоверно удобно и выливается в итоге в меньший объем кода, чем при использовании System.IO c той же целью. Данный класс является моим первым шаблоном, который очень удобно интегрировать в любое приложение, требующее какой-то подобной статистики. 2. Добавил какой-никакой интерфейс игры - поле для ввода имени игрока, поле отображение текущего счета игры и кнопку рестарта игры. Данные текстБоксы как раз и используются при сохранении игры в таблицу рекордов. 3. Добавил вероятность появления цифр на игровое поле - где-то в описании игры в интернете вычитал, что цифры появляются не с равной вероятностью (да и сам замечал подобное при игре на смартфоне): 2-ка с вероятностью 80%-ами, 4-ка же с оставшимися 20%-ами. 4. Добавил "диалог" между программой и игроком при завершении игры с вопросами о сохранении игры и о создании новой игры. 5. Добавил кнопку рестарта игры. Я очень рад своим доделкам/переделкам. Именно так повышается скилл программирования - когда ты сам находишь решения своим же идеям:)))