python3小游戏太空出租箭_作者:李兴球

版权声明:所有文章皆为李兴球先生原创,转载请注明出处,否则保留权利,追究责任。 https://blog.csdn.net/avskya/article/details/82959038

""'

这是用Python制作的一个小游戏,名为太空出租箭。在浩瀚的宇宙中,有一艘火箭要着陆,你要用方向箭头操作它安全着陆,注意速度不要太快了,要不然它会爆炸。

这是风火轮少儿编程的李兴球先生制作一个Python3小游戏。有多个关卡,有酷毙了的音乐与爆炸动画效果。采用模块化方式开发制作。非常容易阅读理解。"""

from spacearrow.arrow import *
from spacearrow.background import *
import os

def init_audio():
    pygame_normal = True
    bumped_sound = None
    try:
        import pygame
        pygame.init()
    except:
        pygame_normal = False

    if pygame_normal:
        pygame.mixer.init()
        pygame.mixer.music.load("495046_The-War-W.wav")
        pygame.mixer.music.play(-1,0)        
        bumped_sound = pygame.mixer.Sound("中爆炸.wav")
    return bumped_sound

def init_screen():
    
    screen = Screen()
    screen.title("太空出租箭")
    screen.bgcolor("black")
    screen.bgpic(images_folder + "背景1.png")
    screen.setup(960,720)
    screen.delay(0)
    return screen

def main():
    screen.onkeypress(None,"Return")
    screen.bgpic(images_folder + "背景2.png") 

    map1 = [(200,100),(-250,180),(-260,-200),(260,-200)]
    map2 = [(-200,-200),(200,180),(300,-180),(0,-90)]
    map3 = [(-100,-40),(120,160),(230,230),(-230,-230),(230,-230)]
    map4 = [(0,0),(-100,190),(230,230),(-180,-160),(130,-230),(-350,-210),(350,-0)]
    map5 = [(-100,0),(-100,190),(230,230),(-180,-160),(130,-230),(50,-210),(350,-100),(300,100)]
    maplist = [map1,map2,map3,map4,map5]

    bg = Background(maplist,screen)

扫描二维码关注公众号,回复: 3501646 查看本文章

    images = [images_folder + '箭造型1.gif',images_folder + '箭造型2.gif'] #火箭造型
    [screen.addshape(image) for image in images]                           #注册到形状列表
    explode_images = [images_folder + "爆炸" + str(i) + ".gif" for i in range(1,21)]
    [screen.addshape(image) for image in explode_images]
    arrow = Firearrow(images,explode_images,bg,bumped_sound)

if __name__=="__main__":

    images_folder = os.getcwd() + os.sep + "images" + os.sep
    
    bumped_sound = init_audio()
    screen = init_screen()
    
    screen.onkeypress(main,"Return")
    screen.listen()
    screen.mainloop()

   """以上是主程序源代码,需要各个模块源代码请联系李兴球"""

猜你喜欢

转载自blog.csdn.net/avskya/article/details/82959038
今日推荐