Работа с файлами. Шрифты в PyGame. Задание на зимние каникулы
Файловые объекты. Функция open(имя, режим). Обязательность файл.close() для файлов, в особенности открытых на запись ("w")
Операция print >> файл, ?
.readline() и .readlines(); конструкция for l in файл:
.read() и .write()
Чтение и запись объектов Python с помощью pickle.dump() и pickle.load()
Вывод текста в PyGame
- Регистрация шрифта
Формирование surface с изображением текста с помощью font.render()
Размещение текста-изображения на другом изображении при помощи .blit()
Домашнее задание
Прочитать про работу с файлами и pickle в учебнике
Прочитать про вывод текста в учебнике по PyGame и в документации по модулю pygame.font
Освоить какой-нибудь модуль ввода текста для PyGame (на выбор):
pyginput (ї FrBrGeorge
)
что-нибудь с сайта PyGame
- Заставить работать и чуть-чуть переиначить какую-нибудь готовую прото-игрушку (на выбор):
?Пришиби обезьянку? из документации по PyGame
?Breakout? из учебника по PyGame (обратите внимание: код там не очень, можно было бы и покороче написать; зато все понятно!)
Попробовать написать работающую графическую программу. Варианты:
- Доработать ?примитивный графический редактор? из предыдущего занятия, добавив туда всякого по желанию:
- сохранение в файл и чтение оттуда
- какие-то еще нужные фигуры (например, с заливкой)
- групповые действия над точками
- рисованные кнопки вместо нажатий на клавиатуру
- ? что в голову взбредет
Написать простейшую платформенную игру по аналогии с более сложным проектом на Хабре
- гравитация, перемещение, прыжки
- картинки вместо однотонных клеток
- монстры, стрельба
- ?
- Причесать ?шарик с ракеткой? из предыдущих занятий, чтобы он стал похож на игру:
- ввести понятие "гол" (одна из стенок) и вычитать очки за каждый гол
- а за каждой удачное отбитие, наоборот, прибавлять
- цель игры ? продержаться как можно дольше положительными очками
- выводить счет
- подобрать параметры ракетки так, чтобы увелияивалась сложность (например, немного увеличивать скорость шара при отбитии)
- ?
- Обход лабиринта. Рисовать лабиринт и бонусы/антибонусы в нем, а потом их собирать главгероем
- ?довести это до игры ?змей?: главгерой удлинняется по мере питания
- ?или довести это до игры ?пакман?: имеются другие хаотично движущиеся персонажи, которых надо опасаться или к которым стремиться
- +не хаотично, а целенаправленно движущиеся
- ?
- Самому что-нибудь придумать
- Доработать ?примитивный графический редактор? из предыдущего занятия, добавив туда всякого по желанию:
Условные обозначения
? тема по Linux
?? тема повышенной сложности
? теоретическое задание
? тема для самостоятельного изучения