猫史档案馆


【Python作品分享】planegame【作品秀】

用户:美国小蜘蛛1美国小蜘蛛1查看:0 回复:0 评论:0 创建时间:2023-01-16T20:53:48


【作品展示】

center_image

 

【作品介绍】

飞机大战

 

【作品源代码】

import random,screen3
import pgzrun

background1=Actor('background.png')
background2=Actor('background.png')
bullet=Actor('bullet.png')
enemy=Actor('enemy.png')
hero=Actor('hero.png')
hero_blowup=Actor('hero_blowup.png')
HEIGHT=680
WIDTH=480
score=0
speed=5
game_over=False 
background1.x=240
background2.x=240
bullet.x=240
enemy.x=random.randint(40,440)
hero.x=240
hero_blowup.x=240
background1.y=340
background2.y=-340
bullet.y=-HEIGHT
enemy.y=0
hero.y=440
hero_blowup.y=-90
#sounds.game_music.play(-1)

def draw():
    background1.draw()
    background2.draw()
    bullet.draw()
    enemy.draw()
    hero.draw()
    hero_blowup.draw()
    screen.draw.text("score:"+str(score), (400, 30))

def update():
    global game_over,score,speed
    background1.y=background1.y+3
    background2.y=background2.y+3
    if game_over==False:
        enemy.y=enemy.y+speed
    if background1.y>=1020:
        background1.y=-340
    if background2.y>=1020:
        background2.y=-340
    if bullet.y>=-HEIGHT:
        bullet.y=bullet.y-1.5*speed
    if enemy.y>=680:
        enemy.y=0
        enemy.x=random.randint(40,440)
        score=score-1
    if bullet.colliderect(enemy):
        #sounds.got_enemy.play()
        enemy.y=0
        enemy.x=random.randint(40,440)
        bullet.y=-100
        score = score + 1
        speed=speed+0.5
    if hero.colliderect(enemy):
        #sounds.explode.play()
        hero_blowup.x=hero.x
        hero_blowup.y=hero.y
        hero.image='hero_blowup'
        game_over=True
    if game_over == True:
        if keyboard.space:
            score=0
            speed=5
            hero.image='hero'
            bullet.x = hero.x
            enemy.x = random.randint(40, 440)
            hero.x = 240
            enemy.y = 0
            hero.y = hero.y-30
            hero_blowup.y = -90
            game_over=False
        
def on_mouse_move(pos, rel, buttons):
    if game_over==False:
        hero.x=pos[0]
        hero.y=pos[1]
    
def on_mouse_down(pos,button):
    if game_over==False:  
        if button==mouse.LEFT:
            bullet.x=hero.x
            bullet.y=hero.y-30
            sounds.喵.play()

pgzrun.go()

 

【提示】

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

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页