我给大家一下时空飞船导入的Drive库的代码,大家直接复制粘贴就可以了
import time,random, pygame, sys
def drive(mycard):
pygame.init()
back = False #是否返航
timeTask = random.randint(10, 20) #任务时间
print("任务时间:", timeTask)
screen = pygame.display.set_mode((700, 400))
pygame.display.set_caption("时空飞船")
bg = pygame.image.load("bg.png")
win = pygame.image.load("成功.png")
win = pygame.transform.scale(win, (300, 300))
fail = pygame.image.load("失败.png")
fail = pygame.transform.scale(fail, (300, 300))
a1 = pygame.image.load("1.png")
a1 = pygame.transform.scale(a1, (264, 150))
a2 = pygame.image.load("2.png")
a2 = pygame.transform.scale(a2, (264, 150))
a3 = pygame.image.load("3.png")
a3 = pygame.transform.scale(a3, (264, 150))
b1 = pygame.image.load("5.png")
b1 = pygame.transform.scale(b1,(88,140))
b2 = pygame.image.load("6.png")
b2 = pygame.transform.scale(b2, (88, 140))
list1 = [a1, a2, a3]
list2 = [b1, b2]
myFont = pygame.font.SysFont("heittf", 21)
myFont1 = pygame.font.SysFont("heittf", 30)
coinSound = pygame.mixer.Sound("金币.wav")
winSound = pygame.mixer.Sound("胜利.wav")
failSound = pygame.mixer.Sound("失败.wav")
pygame.mixer.music.load("bg.mp3")
pygame.mixer.music.play(-1)
t1 = time.time()
wealth = 0
a = 0
b = 0
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
wealth = wealth+1
coinSound.play()
print(wealth)
elif event.key == pygame.K_RETURN:
back = True
#背景显示
screen.fill((200,200,200))
screen.blit(bg, (0, 0))
# 经过的时间
t2 = time.time()
t = t2 - t1
# 宇航员信息
text1 = myFont.render("ID: " + str(mycard["ID"]), True, (255, 255, 255))
screen.blit(text1, (90, 110))
text1 = myFont.render("age: "+str(mycard["age"]),True,(255, 255, 255))
screen.blit(text1,(90, 140))
text1 = myFont.render("weight: "+str(mycard["weight"]),True,(255, 255, 255))
screen.blit(text1,(90, 170))
text1 = myFont.render("height: " + str(mycard["height"]), True, (255, 255, 255))
screen.blit(text1, (90, 200))
text1 = myFont.render("IQ: " + str(mycard["IQ"]), True, (255, 255, 255))
screen.blit(text1, (90, 230))
#财富值显示
weatherText = myFont1.render(str(wealth), True, (255, 255, 255))
screen.blit(weatherText, (530, 28))
#时间显示
timeText = myFont1.render(str(int(timeTask-t)), True, (255, 255, 255))
screen.blit(timeText, (400, 28))
#动效
screen.blit(list1[a], (200, 90))
screen.blit(list2[b], (480, 90))
a = a + 1
b = b + 1
if a > 2:
a = 0
if b > 1:
b = 0
time.sleep(0.3)
if back == True or t >= timeTask:
if wealth > timeTask:
winSound.play()
screen.blit(win, (213, 20))
pygame.display.update()
print("完成任务!获得财富:", wealth)
time.sleep(1)
pygame.quit()
sys.exit()
else:
failSound.play()
screen.blit(fail, (213, 20))
pygame.display.update()
print("耗时太长,任务失败!获得财富:", wealth)
time.sleep(1)
pygame.quit()
sys.exit()
pygame.display.update()