Часть 1

Использование Pygame - хороший и простой способ с легкостью создавать 2D-игры. Если вы хотите заняться разработкой игр и узнать о ней больше, я предлагаю начать с Pygame.

Первое, что нужно сделать, это импортировать библиотеку pygame, инициализировать ее и создать поверхность отображения для рисования.

import pygame
pygame.init()
display = pygame.display.set_mode((800, 600))
pygame.display.update()
pygame.quit()
quit()

Вызов pygame.quit () и quit () объединит все в конце программы. На этом этапе ничего не произойдет, кроме открытия окна и его немедленного закрытия. Чтобы решить проблему с немедленным закрытием окна, вам нужно создать цикл while, чтобы окно оставалось открытым до тех пор, пока не будет достигнут параметр.

import pygame 
pygame.init()
display = pygame.display.set_mode((800, 600))
pygame.display.update()
game_over = False
while not game_over:
  for event in pygame.event.get():
    if event == pyagme.QUIT():
      game_over = True
pygame.quit()
quit()

Это устанавливает переменную, равную False, а затем сохраняет игру открытой, если game_over не равен true. Это также проверяет, вызывается ли событие quit для закрытия окна. Следующим шагом будет создание змейки, в pygame все нарисовано в прямоугольниках.

import pygame
pygame.init()
display = pygame.display.set_mode((800, 600))
blue = (0, 0, 255)
pygame.display.update()
game_over = False
while not game_over:
  for event in pygame.event.get():
    if event == pyagme.QUIT():
      game_over = True
  pygame.draw(display, blue, [400, 300, 10, 10])
  pygame.display.update()
pygame.quit()
quit()

Теперь вы нарисовали «игрока» или змею на экране, начав с центра и придав ему размер 10x10. Следующим шагом будет заставить змейку двигаться, что будет выполняться нажатием клавиш.

import pygame
pygame.init()
display = pygame.display.set_mode((800, 600))
blue = (0, 0, 255)
x1 = 400
y1 = 300
x1_change = 0
y1_change = 0
clock = pygame.time.Clock()
pygame.display.update()
game_over = False
while not game_over:
  for event in pygame.event.get():
    if event == pyagme.QUIT():
      game_over = True
    if event.type == pygame.KEYDOWN:
      if event.key == pygame.K_LEFT:
        x1_change = -10
        y1_change = 0
      elif event.key == pygame.K_RIGHT:
        x1_change = 10
        y1_change = 0
      elif event.key == pygame.K_UP:
        y1_change = -10
        x1_change = 0
      elif event.key == pygame.K_DOWN:
        y1_change = 10
        x1_change = 0
  x1 += x1_change
  y1 += y1_change
  display.fill(white)
  pygame.draw(display, black, [x1, y1, 10, 10])
  pygame.display.update()
  clock.tick(30)
pygame.quit()
quit()

Этот код выше проверяет события нажатия клавиш и перемещает змейку в соответствии с нажатием клавиши, вверх идет вверх и вниз идет вниз. Переменные x1 и y1 должны дать змее отправную точку, а переменные x1_change и y1_change должны отслеживать, куда переместилась змея.

Теперь у вас есть дисплей с прямоугольником, который можно перемещать куда угодно, если вы хотите, чтобы он продолжил этот проект, я напишу вторую часть здесь.

Больше контента на plainenglish.io