НА ЯЗЫКЕ PYTHON . Напишите игровую программу как отдельный модуль. Компьютер генерирует случайное число, и пользователь пытается его найти. Программа запрашивает номер один раз. Если номер не определен, «Победа», в противном случае - «Повтор». Для написания программы вам понадобится функция randint () из модуля random.
Это футбол (тут использована pygame)
Правда, тут персонажи это два прямоугольничка. Но ими можно управлять с клавиатуры. И эта штука работает (прям отвечаю).
import pygame
import random
DISPLAY_H = 650
DISPLAY_W = 650
PLAYER_H = 25
PLAYER_W = 100
BALL_SIZE = 20
DISPLAY = pygame.display.set_mode((DISPLAY_W, DISPLAY_H))
BG_COLOR = (0, 0, 0)
FPS = 30
FPS_CLOCK = pygame.time.Clock()
def finish():
pygame.quit()
def main():
player1 = pygame.Rect(DISPLAY_W/2 - PLAYER_W/2, DISPLAY_H - 40, PLAYER_W, PLAYER_H)
player2 = pygame.Rect(DISPLAY_W/2 - PLAYER_W/2, 40, PLAYER_W, PLAYER_H)
ball = pygame.Rect(DISPLAY_W/2 - BALL_SIZE/2, DISPLAY_H/2 - BALL_SIZE/2,BALL_SIZE, BALL_SIZE)
x_ball_move = 0
y_ball_move = 0
while not x_ball_move:
x_ball_move = random.randint(-10, 10)
while not y_ball_move:
y_ball_move = random.randint(-10, 10)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
finish()
keys = pygame.key.get_pressed()
if keys[pygame.K_a]:
player2.move_ip(-10, 0)
elif keys[pygame.K_s]:
player2.move_ip(10, 0)
elif keys[pygame.K_z]:
player2.move_ip(0, -10)
elif keys[pygame.K_w]:
player2.move_ip(0, 10)
if keys[pygame.K_k]:
player1.move_ip(-10, 0)
elif keys[pygame.K_l]:
player1.move_ip(10, 0)
elif keys[pygame.K_m]:
player1.move_ip(0, -10)
elif keys[pygame.K_o]:
player1.move_ip(0, 10)
ball.move_ip(x_ball_move, y_ball_move)
if ball.x < 0:
x_ball_move = random.randint(1, 10)
if ball.x > DISPLAY_W - BALL_SIZE:
x_ball_move = random.randint(-10, -1)
if ball.colliderect(player1):
y_ball_move = random.randint(-10, -5)
if ball.colliderect(player2):
y_ball_move = random.randint(5, 10)
if ball.y < 0:
finish()
if ball.y > DISPLAY_H - BALL_SIZE:
finish()
DISPLAY.fill(BG_COLOR)
pygame.draw.rect(DISPLAY, (0, 255, 255), player1)
pygame.draw.rect(DISPLAY, (0, 255, 255), player2)
pygame.draw.rect(DISPLAY, (0, 255, 255), ball)
pygame.display.update()
FPS_CLOCK.tick(FPS)
main()
Объяснение: