importsys,pygamefromrandomimport*
frompygame.localsimport*
frompygame.fontimport*
classMyPlayer(pygame.sprite.Sprite):
def__init__(self,image_file,location,speed):
pygame.sprite.Sprite.__init__(self)
self.image=pygame.image.load(image_file)
self.rect=self.image.get_rect()
self.rect.left,self.rect.top=location
self.speed=speed
self.status=True
defmove(self):
self.rect=self.rect.move(self.speed)
ifself.rect.leftwidth:
self.speed[0]=-self.speed[0]
ifself.rect.top
self.speed[1]=-self.speed[1]
ifself.rect.bottom>height:
#Gameover
self.status=False
classReflector(pygame.sprite.Sprite):
def__init__(self,image_file,location,speed):
pygame.sprite.Sprite.__init__(self)
self.image=pygame.image.load(image_file)
self.rect=self.image.get_rect()
self.rect.left,self.rect.top=location
self.speed=speed
defmove(self):
self.rect=self.rect.move(self.speed)
ifself.rect.leftwidth:
self.speed[0]=-self.speed[0]
ifself.rect.topheight:
self.speed[1]=-self.speed[1]
defanimate(players):
screen.fill([255,255,255])
forplayerinplayers:
player.move()
forplayerinplayers:
players.remove(player)
ifpygame.sprite.spritecollide(player,players,False):
player.speed[0]=-player.speed[0]
player.speed[1]=-player.speed[1]
players.add(player)
player.move()
screen.blit(player.image,player.rect)
pygame.display.flip()
pygame.time.delay(10)
pygame.init()
size=width,height=640,480
screen=pygame.display.set_mode(size)
screen.fill([255,255,255])
pygame.display.set_caption("MiaoWaGame")
defplay():
img_player="C:\\Users\\dswu\\Desktop\\player.png"
players=pygame.sprite.Group()
forrowinrange(0,1):
forcolumninrange(0,1):
playerLocation=[column*250+10,row*250+10]
playerSpeed=[choice([-2,2]),choice([-2,2])]
player=MyPlayer(img_player,playerLocation,playerSpeed)
players.add(player)
img_ref_path="C:\\Users\\dswu\\Desktop\\Reflector.png"
ref_pos=[0,464]
ref_speed=[0,0]
reflector=Reflector(img_ref_path,ref_pos,ref_speed)
players.add(reflector)
running=True
whilerunning:
key_pressed=pygame.key.get_pressed()
foreventinpygame.event.get():
ifevent.type==pygame.QUIT:
game.quit()
ifevent.type==KEYDOWN:
ifevent.key==K_LEFT:
ref_speed[0]=-2
elifevent.key==K_RIGHT:
ref_speed[0]=+2
animate(players)
ifplayer.status==False:
running=False
final_text="GameOver!"
ft_font=pygame.font.Font(None,100)
ft_surf=ft_font.render(final_text,1,(0,0,0))
screen.blit(ft_surf,[screen.get_width()/2-ft_surf.get_width()/2,100])
tip_text="Typeanykeytocontinue"
tip_font=pygame.font.Font(None,50)
tip_surf=tip_font.render(tip_text,1,(0,0,0))
screen.blit(tip_surf,[screen.get_width()/2-tip_surf.get_width()/2,200])
pygame.display.flip()
keepOn=True
whilekeepOn:
key_pressed=pygame.key.get_pressed()
foreventinpygame.event.get():
ifevent.type==pygame.QUIT:
pygame.quit()
ifevent.type==KEYDOWN:
play()
play()
本文来自投稿,不代表本站立场,如有侵权联系即删除,站长QQ:192398865:https://www.fulishes.com/111894/