xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡介

模仿微信的打飛機(jī)游戲

資源截圖

代碼片段和文件信息

#!/usr/bin/env.python
#?_*_coding:utf-8_*_

from?plane_sprites?import?*


class?PlaneGame(object):
????#?飛機(jī)大戰(zhàn)主游戲類

????def?__init__(self):
????????print(“游戲初始化“)

????????#?1.創(chuàng)建游戲的窗口
????????self.screen?=?pygame.display.set_mode(SCREEN_RECT.size)
????????#?2.創(chuàng)建游戲的時鐘
????????self.clock?=?pygame.time.Clock()
????????#?3.調(diào)用私有方法,精靈和精靈組的創(chuàng)建
????????self.__create_sprites()

????????#?設(shè)置定時器事件?-?創(chuàng)建敵機(jī)1s
????????pygame.time.set_timer(CREATE_ENEMY_EVENT?1000)
????????pygame.time.set_timer(HERO_FIRE_EVENT?500)

????def?__create_sprites(self):

????????#?創(chuàng)建背景精靈和精靈組
????????bg1?=?Background()
????????bg2?=?Background(True)

????????self.back_group?=?pygame.sprite.Group(bg1?bg2)

????????#?創(chuàng)建敵機(jī)的精靈組
????????self.enemy_group?=?pygame.sprite.Group()

????????#?創(chuàng)建英雄的精靈和精靈組
????????self.hero?=?Hero()
????????self.hero_group?=?pygame.sprite.Group(self.hero)

????def?start_game(self):
????????print(“游戲開始...“)

????????while?True:
????????????#?1.設(shè)置刷新幀率
????????????self.clock.tick(frame_PER_SEC)

????????????#?2.事件監(jiān)聽
????????????self.__event_handler()

????????????#?3.碰撞檢測
????????????self.__check_collide()

????????????#?4.更新/繪制精靈組
????????????self.__update_sprites()

????????????#?5.更新屏幕顯示
????????????pygame.display.update()

????def?__event_handler(self):
????????‘‘‘事件監(jiān)控‘‘‘
????????for?event?in?pygame.event.get():

????????????#?判斷是否退出游戲
????????????if?event.type?==?pygame.QUIT:
????????????????PlaneGame.__game_over()
????????????elif?event.type?==?CREATE_ENEMY_EVENT:
????????????????#?print(“敵機(jī)出場...“)
????????????????#?創(chuàng)建敵機(jī)精靈
????????????????enemy?=?Enemy()
????????????????#?將敵機(jī)精靈添加到敵機(jī)精靈組
????????????????self.enemy_group.add(enemy)
????????????elif?event.type?==?HERO_FIRE_EVENT:
????????????????self.hero.fire()
????????#?使用鍵盤提供的方法獲取鍵盤按鍵?-?按鍵元組
????????key_perssed?=?pygame.key.get_pressed()
????????#?判斷元組中對應(yīng)的按鍵索引值
????????if?key_perssed[pygame.K_RIGHT]:
????????????self.hero.speed?=?2
????????elif?key_perssed[pygame.K_LEFT]:
????????????self.hero.speed?=?-2
????????else:
????????????self.hero.speed?=?0

????def?__check_collide(self):
????????‘‘‘碰撞檢測‘‘‘
????????#?1.子彈摧毀敵機(jī)
????????pygame.sprite.groupcollide(self.hero.bullets?self.enemy_group?True?True)
????????#?2.敵機(jī)撞毀英雄
????????enemys?=?pygame.sprite.spritecollide(self.hero?self.enemy_group?True)
????????#?3.判斷列表是否有內(nèi)容
????????if?len(enemys)?>?0:
????????????#?讓英雄犧牲
????????????self.hero.kill()
????????????#?結(jié)束游戲
????????????self.__game_over()

????def?__update_sprites(self):
????????‘‘‘精靈組更新和繪制‘‘‘
????????self.back_group.update()
????????self.back_group.draw(self.screen)

????????self.enemy_group.update()
????????self.enemy_group.draw(self.screen)

????????self.hero_group.update()
????????self.hero_group.draw(self.screen)

????????self.hero.bullets.update()
????????self.hero.bullets.draw(self.screen)

????@staticmethod
????def?__game_over():
????????print(“游戲結(jié)束“)

????????pygame.quit()
????????exit

評論

共有 條評論

相關(guān)資源