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

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Микроигры / VIP урок. Змейка

  • Создаём популярную игру «Змейка».
    На примере простых объектов демонстрация основ ООП.
  • Дата отправки отчёта: 16 декабря 2018 г.
  • Задание выполнено: за 1 день 20 мин.
  • Чему научился: найти время
  • Что было сложным: как обычно создал уникальную иконку для бинарника и форм
    помимо базовых, добавил текстуры поворота головы/хвоста
    размещение змейки на поле случайное
    змейка поворачивает голову туда куда ползёт, хвост поворачивается за телом
    в левом-верхнем углу экрана показаны яйца текущей змеиной семьи
    первый кто вылупился, начинает отъедаться на кроликах, чтобы вырасти и отложить яйца
    при поедании определённого количества кроликов, появляются дополнительный яйца
    если змейка врезалась в стену или слопала саму себя, рождается следующая змейка
    и так до тех пор, пока не окончатся яйца, по окончанию игры будет отображена статистика
    в правом-верхнем углу показано количество слопанных кроликов текущего змеиного выводка
    вверху-по центру показан рекорд на протяжении всех попыток игры
    рекорд сохраняется в файл в папке data
    при запуске игры, если таковой файл имеется, то загружается рекорд из файла,
    если же файла нет, то рекорд обнуляется (можно сбросить простым удалением файла)
    поворачивать голову при движении за 1 такт может только под 90 градусов
    (защита от того, чтобы не повернуть на 180 и не слопать саму себя)
    игровая статистика выполнена в игровом стиле, добавлены необходимые текстуры
    если змея врезалась, но при этом ещё есть яйца, то игра не начинается сначала,
    появляется новая змейка, а текущий счёт не обнуляется, пока не закончится игра
    после при этом генерируется новое с новым расположением змейки и кролика
    добавлена новая форма и активирована как основная, форма самой игры теперь вторична
    на начальной форме добавлено игровое меню из 3 пунктов: Играть, О игре, Выход
    пункты меню подсвечиваются в стиле ZX Spectrum при наведении мышью
    пунктами меню можно управлять и стрелками вверх/вниз на клавиатуре
    выбор пункта осуществляется клавишей Enter или кликом мыши
    при выборе пункта "Играть" - открывается форма и начинается игра
    при выборе пункта "О игре" - открывается профиль на проекте videosharp.info
    звуковые файлы хранятся в папке data, так же они были конвертированы в форма mp3 для экономии места
    з.ы.
    урок делал ещё летом 2016 года по событию "Чашка кофе".
  • Оценка видео-уроку:
  • Видеозапись: https://youtu.be/mhCMxpdP3oA
Отчёт от 10558 за Микроигры / VIP урок. Змейка


Отчёт от 10558 за Микроигры / VIP урок. Змейка




Оцени работу

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

1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Иван Воронин  # Микроигры / VIP урок. Змейка / 2018-12-26 12:59

Не игра, а прям конфетка получилась. Прикрепил к уроку


  • Отчёт оценивали:
    10558Иван Воронин+1   791Валерий Жданов+1   8275Tekashnik+1   10100Александр Заскотченко+1   10365Rita+1   10418Oleg Didok +1   19022Олег Чудновский+1   8255Платон0   17947Dmitry Sinitsin+1   3922Александр+1   11019Trira+1   17606Виктор+1   10494Алексей В.+1   Посетитель+1   1Евгений Волосатов+1   3146Permitin Alexey+1  

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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Повторил обработку нажатия клавиш keyPressEvent, работу с таймером QTimer, матрицами boost::ublas, очередью std::queue.
Трудности: Остановиться в абстракции кода.
В качестве структуры данных для хранения тела змеи использовал очередь.


Научился: Отличный урок. Попрактиковал ООП. Делал такую игру раньше, только использовал класс Rectangle и добавлял туда картинку и без использования панели.