From d09c8cc84ce23c880a6d2ac214bda38cc99a60d6 Mon Sep 17 00:00:00 2001 From: BellCodeEditor <bellcode_dev@bell.ai> Date: Sun, 21 Jan 2024 18:11:57 +0800 Subject: [PATCH] save project --- my_game.py | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------- 1 file changed, 53 insertions(+), 52 deletions(-) diff --git a/my_game.py b/my_game.py index 5174d39..f337e1f 100644 --- a/my_game.py +++ b/my_game.py @@ -12,15 +12,15 @@ class Block(pygame.sprite.Sprite): self.rect=self.image.get_rect() self.rect.x=1000 self.rect.y=500-self.rect.height - self.score = 1 + self.score=1 class Player(pygame.sprite.Sprite): def __init__(self,image): super().__init__() self.image=image self.rect=self.image.get_rect() - self.rect.x = 150 - self.rect.y = 400 + self.rect.x=150 + self.rect.y=400 screen = pygame.display.set_mode((1000, 600)) pygame.display.set_caption("悟空酷跑") FPS = pygame.time.Clock() # pygame时钟,控制游戏速度(帧数) @@ -30,7 +30,7 @@ road = pygame.image.load('road.png') # 路 stone = pygame.image.load('stone.png') # 石头 cacti = pygame.image.load('cacti.png') # 仙人掌 bush = pygame.image.load('bush.png') # 灌木丛 -font = pygame.font.Font("STKAITI.TTF",18) +font=pygame.font.Font("STKAITI.TTF",22) hero = [pygame.image.load('hero1.png'), pygame.image.load('hero2.png'), pygame.image.load('hero3.png'), @@ -40,27 +40,27 @@ a = 0 jump="runing" y=400 t=30 -block_list = pygame.sprite.Group() -road_x = 0 -bg_x = 0 -time = 0 -Game = True -score = 0 -speed = 8 -music_1 = pygame.mixer.Sound("score.wav") -old_score = 0 -with open("score.txt","r",encoding = "utf-8") as f: - content = f.read() - record = json.loads(content) - one = record["第1名"] - two = record["第2名"] - three = record["第3名"] +block_list=pygame.sprite.Group() +road_x=0 +bg_x=0 +time=0 +gameover1=True +score=0 +speed=8 +music_1=pygame.mixer.Sound("score.wav") +old_score=0 +with open("score.txt","r",encoding="utf-8") as f: + content=f.read() + record=json.loads(content) + one=record["第1名"] + two=record["第2名"] + three=record["第3名"] while True: - speed = 8 + score // 3 - if score > old_score: + speed=8+score//3 + if score>old_score: music_1.play() - old_score = score + old_score=score for event in pygame.event.get(): if event.type == locals.QUIT: # 接收到退出事件后退出程序 @@ -69,23 +69,23 @@ while True: if jump=="runing": if event.key == locals.K_SPACE: jump="up" - wukong = Player(hero[a]) + wukong=Player(hero[a]) if jump=="runing": - a += 1 - if a > 4: - a =0 - if Game == True: + a+=1 + if a>4: + a=0 + if gameover1==True: if jump=="up": if t>0: y-=t - wukong.rect.y = y + wukong.rect.y=y t-=2 else: jump="down" if jump=="down": if t<=30: y+=t - wukong.rect.y = y + wukong.rect.y=y t+=2 else: jump="runing" @@ -93,43 +93,44 @@ while True: # 将背景图画上去 bg_x-=1 - if bg_x <- 1000: - bg_x = 0 + if bg_x<-1000: + bg_x=0 screen.blit(background, (bg_x, 0)) - road_x -= speed - if road_x <- 1000: - road_x = 0 + road_x-=speed + if road_x<-1000: + road_x=0 screen.blit(road, (road_x,500)) screen.blit(wukong.image, (150, y)) - time += 1 - if time >= 60: - time = 0 - num = random.randint(0,50) + time+=1 + if time>=60: + time=0 + num=random.randint(0,50) if num > 20: - b = Block(stone,cacti,bush) + b=Block(stone,cacti,bush) block_list.add(b) for sprite in block_list: - sprite.rect.x -= speed + sprite.rect.x-=speed screen.blit(sprite.image,(sprite.rect.x,sprite.rect.y)) - if sprite.rect.x < 0 - sprite.rect.width: + if sprite.rect.x <0-sprite.rect.width: sprite.kill() if pygame.sprite.collide_rect(wukong,sprite): - Game_over = pygame.image.load("gameover.png") - screen.blit(Game_over,(400,200)) - Game = False + gameover=pygame.image.load("gameover.png") + screen.blit(gameover,(400,200)) + gameover1=False else: - if sprite.rect.x + sprite.rect.width < wukong.rect.x: - score += sprite.score - sprite.score = 0 + if sprite.rect.x+sprite.rect.width<wukong.rect.x: + score+=sprite.score + sprite.score=0 + # 刷新画面 - info = "分数:" + str(score) - text = font.render(info,True,(255,255,255)) + info="分数:"+str(score) + text=font.render(info,True,(255,255,255)) screen.blit(text,(880,20)) - one_1 = font.render("第一名:" + str(one),True,(255,255,255)) + one_1=font.render("第一名:"+str(one),True,(255,255,255)) screen.blit(one_1,(880,40)) - two_1 = font.render("第二名:" + str(two),True,(255,255,255)) + two_1=font.render("第二名:"+str(two),True,(255,255,255)) screen.blit(two_1,(880,60)) - three_1 = font.render("第三名:" + str(one),True,(255,255,255)) + three_1=font.render("第三名:"+str(three),True,(255,255,255)) screen.blit(three_1,(880,80)) pygame.display.update() FPS.tick(60) \ No newline at end of file -- libgit2 0.25.0