猫史档案馆


【Python作品分享】勇闯大峡谷【作品秀】

用户:超厉害的老吴超厉害的老吴查看:0 回复:0 评论:0 创建时间:2023-11-20T20:13:24


【作品展示】

center_image

 

【作品介绍】

自制小游戏

按住空格键上升,松开则下降

 

【作品源代码】

import pgzrun, random
WIDTH = 1000
HEIGHT = 500
bg1 = Actor('背景图1')
bg1.x = 500
bg1.y = 250
bg2 = Actor('背景图2')
bg2.x = bg1.x + 1000
bg2.y = 250
bird = Actor('月月鸟1')
bird.x = 200
bird.y = 100
magma = Actor('岩浆1')
magma.x = 500
magma.y = 480
b1 = Actor('藤蔓')
b1.x = 1000
b1.y = 100
b2 = Actor('枝干')
b2.x = random.randint(1500, 1600)
b2.y = 75
b3 = Actor('尖刺')
b3.x = random.randint(2000, 2100)
b3.y = 400
blocks = [b1, b2, b3]
names = ['藤蔓', '枝干', '尖刺']
num = [100, 75, 400]
def draw():
    global score
    bg1.draw()
    bg2.draw()
    bird.draw()
    magma.draw()
    for b in blocks:
        b.draw()
    screen.draw.text(str(score), (20, 10))
score = 0
def update():
    global score
    bg1.x -= 7
    bg2.x -= 7
    if bg1.x < -500:
        bg1.x = bg2.x + 1000
    if bg2.x < -500:
        bg2.x = bg1.x + 1000
    if bird.image == '月月鸟1':
        bird.image = '月月鸟2'
    else:
        bird.image = '月月鸟1'
    if keyboard.space:
        if bird.y > 35:
            bird.y -= 5
    else:
        if bird.y < 465:
            bird.y += 5
    if magma.image == '岩浆1':
        magma.image = '岩浆2'
    else:
        magma.image = '岩浆1'
    for b in blocks:
        b.x -= 7
        if b.x < -30:
            b.x = random.randint(1400, 1500)
            n = random.randint(0, 2)
            b.image = names[n]
            b.y = num[n]
            score += 1
        if bird.colliderect(b):
            print('碰到障碍物')
            print('你获得了' + str(score) + '分')
            exit()
    if bird.colliderect(magma):
        print('碰到岩浆')
        print('你获得了' + str(score) + '分')
        exit()
music.play('bgmusic')
pgzrun.go()

 

【提示】

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

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页