猫史档案馆


【Python作品分享】躲避红块【教程贴】

用户:非主流名字非主流名字查看:0 回复:0 评论:0 创建时间:2023-07-23T16:33:57


【作品展示】

center_image

 

【作品介绍】

第一个python作品,求赞!

 

【作品源代码】

import pygame
import random

# 初始化游戏
pygame.init()

# 定义颜色
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)

# 设置游戏窗口大小
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))
pygame.display.set_caption("动作游戏")

clock = pygame.time.Clock()

# 定义玩家
player_size = 50
player_x = screen_width // 2 - player_size // 2
player_y = screen_height - player_size
player_speed = 5

# 定义敌人
enemy_size = 50
enemy_x = random.randint(0, screen_width - enemy_size)
enemy_y = 0
enemy_speed = 10

# 定义得分
score = 0
font = pygame.font.Font(None, 36)

# 游戏循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        player_x -= player_speed
    if keys[pygame.K_RIGHT]:
        player_x += player_speed

    screen.fill(BLACK)

    pygame.draw.rect(
        screen, BLUE, (player_x, player_y, player_size, player_size))

    pygame.draw.rect(screen, RED, (enemy_x, enemy_y, enemy_size, enemy_size))
    enemy_y += enemy_speed

    if enemy_y > screen_height:
        enemy_x = random.randint(0, screen_width - enemy_size)
        enemy_y = 0
        score += 1
        enemy_speed += 0.1

    if player_x < 0 or player_x + player_size > screen_width:
        running = False

    if player_y < enemy_y + enemy_size and player_y + player_size > enemy_y:
        if player_x < enemy_x + enemy_size and player_x + player_size > enemy_x:
            running = False

    score_text = font.render("Score: " + str(score), True, WHITE)
    screen.blit(score_text, (10, 10))

    pygame.display.flip()
    clock.tick(60)

pygame.quit()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页