Микола М.
Рейтинг
Уровень владения языками
Навыки и умения
Портфолио
-
200 UAH Птицы
PythonИмпорт Пигаме
Импорт Random
Инициатива Pygame
… pygame.init()
# Настройка окна
win_width = 400
win_height = 600
win = pygame.display.set_mode((win_width, win_height))
pygame.display.set_caption(«Flappy Bird»)
# загрузка изображений
bird_img = pygame.image.load("bird.png")
pipe_img = pygame.image.load("pipe.png")
Настройка размеров изображений
bird_size = 50
pipe_width = 60
pipe_gap = 200
Настройка начальной позиции птицы
bird_x = win_width // 2 - bird_size // 2
bird_y = win_height // 2 - bird_size // 2
Настройка скорости птицы
Bird_speed = 5
Список труб
Пипес = [ ]
Функция, которая генерирует новую трубу
деф generate_pipe():
pipe_x = win_width
pipe_height = random.randint(50, win_height - pipe_gap - 50)
return {"x": pipe_x, "height": pipe_height}
Добавление первой трубы
pipes.append(generate_pipe( )
Променная, которая отвечает за то, находится ли птица в воздухе
is_jumping = фальсификация
Функция, которая отрицает игровой мир
деф draw_world():
# Несевка птицы
win.blit(bird_img, (bird_x, bird_y))
# отрисовка труб
для pipe in pipes:
top_pipe_y = 0
bottom_pipe_y = pipe["height"] + pipe_gap
win.blit(pipe_img, (pipe["x"], top_pipe_y))
win.blit(pygame.transform.flip(pipe_img, False, True), (pipe["x"], bottom_pipe_y))
Обновление экрана
pygame.display.update()
Основный игровой цикл
Run = истинный
В то время как Run:
# Обработка событий
для событий в pygame.event.get():
if event.type == pygame.QUIT:
Run = фальсификация
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
is_jumping = истинный
# Перемещение птицы
Если это Jumping:
bird_y -= bird_speed * 2
is_jumping = фальсификация
И еще:
bird_y += bird_speed
* перемещение труб
для pipe in pipes:
pipe["x"] -= bird_speed
Если труба достигает левой границы экрана
if pipe["x"] < -pipe_width:
pipes.remove (пып)
Если птица пересекается с трубой
if (bird_x < pipe["x"] + pipe_width and
bird_x + bird_size > pipe["x"] and
bird_y < pipe["height"] или
bird_y + bird_size
bird_y + bird_size > pipe["height"] + pipe_gap):
Run = фальсификация
Добавление новой трубы
if pipes[-1]["x"] < win_width - win_width // 2:
pipes.append(generate_pipe( )
# отрицание игрового мира
win.fill(0, 0, 0 )
draw_world () в качестве
# Завершение игры
pygame.quit()
Активность
| Последние ставки 6 | Бюджет | Добавлена | Сроки | Ставка | |
|---|---|---|---|---|---|
|
Текст для статьи на новостном сайте
300 UAH
|
|||||
|
Написать программу, которая выполняет алгоритм действий на языке Python
500 UAH
|
|||||
|
Тексты для сайта
200 UAH
|
|||||
|
Сценарий для развлекательного контента!
500 UAH
|
|||||
|
Написать текст "В чем разница между просветлением и пробуждением"
200 UAH
|
|||||
|
Улучшить качество фотографий
200 UAH
|