1 条评论
-
mrhowe SU @ 2024-5-18 20:38:24
import pygame as pg import sys,random pg.init() #初始化 pg.display.set_caption("飞翔的小鸟")#设置标题 width,height = 700,500 win = pg.display.set_mode((width,height)) bg = pg.image.load("./img/bg_day.png").convert() #导入背景图片 bg = pg.transform.smoothscale(bg,(width,height)) # 设置背景图片的尺寸成窗口大小 font36 = pg.font.SysFont("楷书",36) # 设置游戏内文字的字体和大小 clock = pg.time.Clock() # 开启时钟设置 running = False # 设置监控变量,默认游戏没有运行 high_score = current_score = 0 # 最高分和当前游戏得分两个变量初始化为0 msg = font36.render("按空格开始游戏",1,(0,0,0)) bird_images = [] #定义用来储存小鸟图片的列表 for i in range(3): img = pg.image.load(f"./img/bird0_{i}.png").convert_alpha() bird_images.append(img) class Bird(pg.sprite.Sprite): def __init__(self,images): pg.sprite.Sprite.__init__(self) self.images = images self.image = images[0] self.rect = self.image.get_rect() # 尺寸设置 self.rect.topleft = 150,300 # 位置设置 self.speed = 0 # 速度设置 self.frame = 0 def update(self): self.speed+= 0.5 self.rect.y += self.speed self.frame += 1 if self.frame>2: self.frame=0 self.image = self.images[self.frame] bird = Bird(bird_images) while True : win.blit(bg,(0,0)) for event in pg.event.get(): if event.type == pg.QUIT: pg.quit() sys.exit() if event.type == pg.KEYDOWN and event.key == pg.K_SPACE: running = True bird = Bird(bird_images) else: bird.speed = -8 if running: bird.update() win.blit(bird.image,bird.rect) else : win.blit(msg,(200,200)) clock.tick(60) pg.display.flip()
- 1