Обновить bunny.py

This commit is contained in:
2026-03-18 13:36:02 +03:00
parent 416a3788e6
commit 99509bdf49

118
bunny.py
View File

@@ -1,91 +1,91 @@
import pygame import pygame
from pygame.draw import * from pygame.draw import ellipse, circle
pygame.init() pygame.init()
FPS = 30 FPS = 30
screen = pygame.display.set_mode((400, 400)) SCREEN_SIZE = (400, 400)
WHITE = 'white'
screen = pygame.display.set_mode(SCREEN_SIZE)
def draw_body(surface, x, y, width, height, color): def draw_body(surface, x, y, width, height, color):
''' """Рисует тело зайца."""
Рисует тело зайца. ellipse(surface, color, (x - width // 2, y - height // 2, width, height))
surface - объект pygame.Surface
x, y - координаты центра изображения
width, height - ширина и высота изобажения
color - цвет, заданный в формате, подходящем для pygame.Color
'''
ellipse(surface, color, (x - width // 2, y - height // 2, width, height))
def draw_head(surface, x, y, size, color): def draw_head(surface, x, y, size, color):
''' """Рисует голову зайца."""
Рисует голову зайца. circle(surface, color, (x, y), size // 2)
surface - объект pygame.Surface
x, y - координаты центра изображения
size - диаметр головы
color - цвет, заданный в формате, подходящем для pygame.Color
'''
circle(surface, color, (x, y), size // 2)
def draw_ear(surface, x, y, width, height, color): def draw_ear(surface, x, y, width, height, color):
''' """Рисует ухо зайца."""
Рисует ухо зайца. ellipse(surface, color, (x - width // 2, y - height // 2, width, height))
surface - объект pygame.Surface
x, y - координаты центра изображения
width, height - ширина и высота изобажения
color - цвет, заданный в формате, подходящем для pygame.Color
'''
ellipse(surface, color, (x - width // 2, y - height // 2, width, height))
def draw_leg(surface, x, y, width, height, color): def draw_leg(surface, x, y, width, height, color):
''' """Рисует ногу зайца."""
Рисует ногу зайца. ellipse(surface, color, (x - width // 2, y - height // 2, width, height))
surface - объект pygame.Surface
x, y - координаты центра изображения
width, height - ширина и высота изобажения
color - цвет, заданный в формате, подходящем для pygame.Color
'''
ellipse(surface, color, (x - width // 2, y - height // 2, width, height))
def draw_hare(surface, x, y, width, height, color): def draw_hare(surface, x, y, width, height, color):
''' """
Рисует зайца на экране. Рисует зайца на экране.
surface - объект pygame.Surface
x, y - координаты центра изображения Args:
width, height - ширина и высота изобажения surface: объект pygame.Surface
color - цвет, заданный в формате, подходящем для pygame.Color x, y: координаты центра изображения
''' width, height: ширина и высота изображения
color: цвет в формате, подходящем для pygame.Color
"""
# Параметры тела
body_width = width // 2 body_width = width // 2
body_height = height // 2 body_height = height // 2
body_y = y + body_height // 2 body_y = y + body_height // 2
draw_body(surface, x, body_y, body_width, body_height, color) draw_body(surface, x, body_y, body_width, body_height, color)
# Параметры головы
head_size = height // 4 head_size = height // 4
draw_head(surface, x, y - head_size // 2, head_size, color) head_y = y - head_size // 2
draw_head(surface, x, head_y, head_size, color)
# Параметры ушей
ear_height = height // 3 ear_height = height // 3
ear_y = y - height // 2 + ear_height // 2 ear_y = y - height // 2 + ear_height // 2
for ear_x in (x - head_size // 4, x + head_size // 4): ear_width = width // 8
draw_ear(surface, ear_x, ear_y, width // 8, ear_height, color) ear_positions = (x - head_size // 4, x + head_size // 4)
for ear_x in ear_positions:
draw_ear(surface, ear_x, ear_y, ear_width, ear_height, color)
# Параметры ног
leg_height = height // 16 leg_height = height // 16
leg_y = y + height // 2 - leg_height // 2 leg_y = y + height // 2 - leg_height // 2
for leg_x in (x - width // 4, x + width // 4): leg_width = width // 4
draw_leg(surface, leg_x, leg_y, width // 4, leg_height, color) leg_positions = (x - width // 4, x + width // 4)
for leg_x in leg_positions:
draw_leg(surface, leg_x, leg_y, leg_width, leg_height, color)
draw_hare(screen, 60, 60, 50, 50, 'white') def main():
"""Основная функция программы."""
draw_hare(screen, 60, 60, 50, 50, WHITE)
pygame.display.update()
clock = pygame.time.Clock()
running = True
while running:
clock.tick(FPS)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.quit()
pygame.display.update()
clock = pygame.time.Clock()
finished = False
while not finished: if __name__ == "__main__":
clock.tick(FPS) main()
for event in pygame.event.get():
if event.type == pygame.QUIT:
finished = True
pygame.quit()