猫史档案馆


【Python作品分享】飞跃大峡谷【教程贴】

用户:第五人格s1囚徒第五人格s1囚徒查看:0 回复:0 评论:0 创建时间:2022-03-17T20:09:26


【作品展示】

center_image

 

【作品介绍】

简单来说就是flappy bird

 

【作品源代码】

import pgzrun
from random import randint
score=0
def abc(n):
    global score
    if n.x < -30:
        n.x = 1500
        a = randint(0, 2)
        n.image = names[a]
        score += 1
        n.y = by[a]
    else:
        n.x-=7
music.play("bgmusic.mp3")
WIDTH=1000
HEIGHT=500
bg1=Actor("背景图1")
bg1.x=500
bg2=Actor("背景图2")
bg2.x=1500
bird=Actor("月月鸟1")
bird.x=150
bird.y=100
lava1=Actor("岩浆1")
lava1.y=490
lava1.x=500
lava2 = Actor("岩浆2")
lava2.y = 490
lava2.x = 1500
b1=Actor("尖刺")
b1.x,b1.y=2100,400
b2=Actor("枝干")
b2.x,b2.y=1600,75
b3=Actor("藤蔓")
b3.x,b3.y=1000,100
names=["尖刺","藤蔓","枝干"]
by=[400,75,100]
def draw():
    global score
    bg1.draw()
    bg2.draw()
    lava1.draw()
    lava2.draw()
    b1.draw()
    b2.draw()
    b3.draw()
    bird.draw()
    screen.draw.text("score:"+str(score),(20,10),fontsize=50)

def update():
        bg1.x-=7
        bg2.x-=7
        if bg1.x<-500:
            bg1.x=bg2.x+1000
        if bg2.x<-500:
            bg2.x=bg1.x+1000
        lava1.x -= 7
        lava2.x -= 7
        if lava1.x < -500:
            lava1.x = lava2.x+1000
        if lava2.x < -500:
            lava2.x = lava1.x+1000
        if bird.image == "月月鸟1":
            bird.image="月月鸟2"
        elif bird.image == "月月鸟2":
            bird.image = "月月鸟1"
        if bird.colliderect(lava1) or bird.colliderect(lava2) or bird.colliderect(b2) or bird.colliderect(b1) or bird.colliderect(b3):
            print("游戏结束")
            exit()
        if bird.y>=35:
            if keyboard.space:
                bird.y-=3
            else:
                bird.y+=3
        else:
            bird.y+=3
        abc(b2)
        abc(b3)
        abc(b1)
pgzrun.go()

 

【提示】

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

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页