既然我们的飞船都能发射子弹了,那么接下来我们添加一些敌机(外星飞船)给游戏增加点乐趣。
我们的思路是让敌机随机从屏幕上空下来,并且在每一次循环中都向下移动,飞船的速度会变化,当飞出屏幕下方后,就回到屏幕上方重新开始。
import pygame
import random
class Alien():
def restart(self):
#重置外星飞船的位置和速度(self.x的范围可以在保证敌机在屏幕内的情况下随意给定)
self.x = random.randint(66, 734)
self.y = random.randint(-166, -66)
self.speed = random.random() + 0.1
def __init__(self):
#初始化
self.restart()
self.image = pygame.image.load(r'images\alien.bmp')
def move(self):
if self.y < 600:
#向下移动
self.y += self.speed
else:
#重置
self.restart()
然后在update_screen()中添加外星飞船来更新它的位置,
#这里只写出修改的部分
def update_screen(my_setting, screen, ship, bullets, aliens):
.........................................
screen.blit(aliens.image, (aliens.x, aliens.y))
然后在主程序中导入Alien()就好
运行程序,我们看到飞船随机的从屏幕上方飞下
此时,发射子弹或者敌机碰到我方飞船,并不会导致我方飞船爆炸。。。。。。T-T
…………………………………………………………………………………………………………………………………………………………………..
T-T好吧 ,本来是看着课本上的程序有点无聊,想着让外星飞船随机的落下来。不过怎么调试,都不能实现击落它(刚开始玩儿pygame……),整整搞了一天也没成功,先这样吧,有空了再修改下,
ppppp:写这个东西也就是记录下自己的学习历程,没课的时候写一点,感觉挺好的,那么,等能实现击落敌机再见O.o