В предыдущей части мы рассмотрели с вами, как устанавливать на вам компьютер в зависимости от операционной системы Python, как подключать библиотеку PyGame, сегодня мы пойдем дальше и даже уже начнем делать первые шаги в написании игры.
Запуск кода из файла
Пока что мы запускали небольшие кусочки кода с помощью командной строки Python, но если вы хотите работать с большими программами, как игра, необходимо научиться сохранять свой код в файл, а потом запускать его. Благодаря этому нам не придется каждый раз писать код заново.
Существует несколько способов запустить программу написанную на Python, как файл.
Один из них — это использовать функционал текстовых редакторов для программистов таких, как Notepad (Windows) или TextEdit (Mac). Создайте новый текстовый файл, напишите какую-то строчку кода, например print 1+1. Потом сохраните файл, как XXX.py (вместо трех иксов, вы можете записать любое название, лучше латиницей).
Потом на Windows просто кликните дважды по файлу и он запустится. На Mac откройте терминал, напишите в командной строке python, перетащите в окно терминала ваш файл и нажмите Enter.
Второй способ, это набирать код в среде IDLE, именно этим способ мы будем пользоваться в этой статье. Чтобы запустить среду разработки, просто наберите в терминале idle, потом выберите из меню File\New Window и вам откроется окно текстового редактора, где вы можете писать код на Python. Вы можете сохранить все изменения с помощью File\Save и даже выполнить код Run\Run Module (F5).
Добавляем игровые ресурсы
Итак мы уже почти готовы создать игру. Но, что это будет игра без графики и звуков? Создайте папку, где будет находиться ваша игра. В этой папке создайте подпапку resources, в ней вы можете создать еще подпапки, чтобы сгруппировать свои ресурсы, например, отдельно графика, отдельно звуки.
Ну, что теперь мы готовы приступить к написанию игры.
Шаг первый: Привет кролик
Запустите IDLE и откройте новое окно редактора текста, мы рассказывали, как это сделать выше. Напишите следующий код (рекомендуем вам не копировать его, а переписывать, таким образом вы учитесь на мышечном уровне писать код):
# 1 – Подгружаем библиотеку
import pygame
from pygame.locals import *
# 2 – Инициализируем игру
pygame.init()
width, height = 640, 480
screen=pygame.display.set_mode((width, height))
# 3 – Загружаем картинки
player = pygame.image.load("resources/images/dude.png")
# 4 – Создаем цикл
while 1:
# 5 – Очистить экран, перед тем как отрисовать новые кадры
screen.fill(0)
# 6 – Отрисовка элементов игры
screen.blit(player, (100,100))
# 7 – Обновление экрана
pygame.display.flip()
# 8 – зацикливаемся на событиях
for event in pygame.event.get():
# проверяем событие «нажатие на кнопку»
if event.type==pygame.QUIT:
# если был нажат выход, то выйти из игры
pygame.quit()
exit(0)
Сохраните этот файл в папку с вашей игрой, туда, где есть папка с ресурсами и назовите его game.py. А теперь давайте прошагаем по написанному коду.
Импорт библиотеки PyGame. Это позволяет вам использовать функции из библиотеки.
Инициализация PyGame и установка экрана.
Загрузка картинки, которую вы будете использовать для кролика.
Создаем цикл для непрерывного выполнения последующего куска кода.
Обратите внимание. Другие языки, например, Objective-C, Java или PHP используют фигурные скобки для обозначения блоков кода цикла или условных конструкций. Python использует отступы, поэтому очень важно следить за этом, чтобы ваш код выполнялся правильно. Не забывайте об этом.
Залить экран черным, перед тем, как произойдет следующая отрисовка кадра.
Добавить картинку кролика, котору мы загрузили на экран 100 по х и 100 по у.
Обновить экран.
Проверять на события и если одно из них будет отвечать нажатию кнопки выход — выйти.
Обратите внимание. Вам не нужно самостоятельно вызывать pygame.quit(), так как интерпретатор автоматически вызовет этот метод при закрытии. Но, на Mac OS игра не закроется до тех пор, пока pygame.quit() не будет вызван.
Если вы запустите код сейчас (Run\Run Module), вы увидите небольшой черный экран с картинкой кролика.
Итак, мы создали главного персонажа. Но на данный момент наша игра выглядит очень унылой и даже страшненькой. Мы начнем это исправлять в следующей части материала.
Полезные ресурсы по изучению,
Курсы Python:
- http://itvdn.com/ru/video/python-starter;
- http://edu.cbsystematics.com/ru/courses/description/python-starter
|