欧洲杯直播

军事 您所在的位置:主页 > 军事 >
打飞机摧毁一个网站,这样方式的游戏你玩过吗?

类别:军事 发布时间:2020-01-07 09:28 浏览:

      率第一发出枪弹1234ifnotplayer.is_hit:5ifshoot_frequency%15==0:6player.shoot(bullet_img)7shoot_frequency+=18ifshoot_frequency>=15:9shoot_frequency=0shoot_frequency变量的功能即统制枪弹发出的效率,它统制在running每轮回15次发出一个枪弹。

      如图pygame给咱供了碰撞检测的法子。

      跟着是枪弹移动1forbulletinplayer.bullets:23bullet.move45ifbullet.rect.bottom<0:6player.bullets.remove(bullet)枪弹移动的话,running每轮回一次,就move一下。

      只要咱的玩家飞机没被敌机撞到,即属存活态时。

      以便在撞击时能把撞击效果显得出。

      Flash简介__Flash是由macromedia公司推出的相式矢量图和Web卡通片的基准,由Adobe公司收买。

      靠大伙儿本人发挥啦。

      只是抑或留意。

      跟着让怪移动1forenemyinenemies1:22.移动敌机3enemy.move44.移动出屏幕后剔除仇人5ifenemy.rect.top<0:6enemies1.remove(enemy)移动的话也很简略,每running轮回一次就move一次就行。

      打模本体根本和打样精灵是差不离的。

      法子的话即内外随行人员移动了,只不过需求办好边疆断定。

      不过先要断定眼下飞机态,是不是被中。

      然后设定self.rect.topleft=(0,0)来设定左上角的地位,从而设定这精灵在屏幕上的显得地位。

      得以本人调整。

      1敌机被枪弹中效果料理2将被中的敌机冤家添加到摧毁敌机Group中3enemies1_down=pygame.sprite.groupcollide(enemies1,player.bullets,1,1)4forenemy_downinenemies1_down:5enemies_down.add(enemy_down)67打样背景8screen.fill(0)9screen.blit(background,(0,0))1011打样玩家飞机12ifnotplayer.is_hit:13screen.blit(player.image0,player.rect)将如常飞机画出14else:15玩家飞机被中后的效果料理16screen.blit(player.image1,player.rect)将爆炸的飞机画出17running=False1819敌机被枪弹中效果显得20forenemy_downinenemies_down:21enemies_down.remove(enemy_down)22score+=123screen.blit(enemy_down.down_imgs,enemy_down.rect)将爆炸的敌机画出242526显得枪弹27player.bullets.draw(screen)28显得敌机29enemies1.draw(screen)留意的是,玩家飞机和敌机都有两种态,一样是如常态,此外一样是爆炸态。

      更多精彩尽在微信民众号【顺序猿声】我懂得你们特定想先看效果如何00目次整体框架肇始事先-精灵类Sprite枪弹类classBullet玩家飞机类classPlayer敌机类classEnemy游玩主体轮回以及帧率设立让枪弹飞刷出敌机打怪把飞机敌机枪弹都画出料理键盘事变分显得和GameOver最终代码01题词这次抑或用python的pygame库来做的游玩。

      有关该类的其它因变量,吾侪用到的时节会详尽跟大伙儿说的。

      一个法子即移动,从发出地位直线往屏幕上方移动。

      这样咱就能把咱的枪弹都放进来。

      引荐篇:10分钟教你用Python做个打飞机小游玩超详尽教程。

      30这数目字根本也是自界说的,只要比1大就好,他反应了收束卡通片现出的时刻。

      底细料理精细的碰撞检测从图上看,当敌机看似还没和咱接火时,但是曾经GameOver了。

      先看代码12classPlayer(pygame.sprite.Sprite):3def__init__(self,plane_img,player_rect,init_pos):4pygame.sprite.Sprite.__init__(self)5self.image=6foriinrange(len(player_rect)):7self.image.append(plane_img.subsurface(player_recti).convert_alpha)8self.rect=player_rect09self.rect.topleft=init_pos10self.speed=811self.bullets=pygame.sprite.Group12self.is_hit=False131415defshoot(self,bullet_img):16bullet=Bullet(bullet_img,self.rect.midtop)17self.bullets.add(bullet)181920defmoveUp(self):21ifself.rect.top<=0:22self.rect.top=023else:24self.rect.top-=self.speed252627defmoveDown(self):28ifself.rect.top>=SCREEN_HEIGHT-self.rect.height:29self.rect.top=SCREEN_HEIGHT-self.rect.height30else:31self.rect.top+=self.speed323334defmoveLeft(self):35ifself.rect.left<=0:36self.rect.left=037else:38self.rect.left-=self.speed394041defmoveRight(self):42ifself.rect.left>=SCREEN_WIDTH-self.rect.width:43self.rect.left=SCREEN_WIDTH-self.rect.width44else:45self.rect.left+=self.speed老形状,分子变量要紧抑或那几个。

      跟着让怪移动1forenemyinenemies1:23enemy.move45ifenemy.rect.top<0:6enemies1.remove(enemy)移动的话也很简略,每running轮回一次就move一次就行。

      然后游玩收束的时节,咱还要把GameOver那张图样也blit出。

Copyright © 欧洲杯直播 版权所有 ICP备案 无