飛機(jī)大戰(zhàn)Python程序_第1頁
飛機(jī)大戰(zhàn)Python程序_第2頁
飛機(jī)大戰(zhàn)Python程序_第3頁
飛機(jī)大戰(zhàn)Python程序_第4頁
飛機(jī)大戰(zhàn)Python程序_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

飛機(jī)大戰(zhàn)Python程序飛機(jī)大戰(zhàn)Python程序飛機(jī)大戰(zhàn)Python程序飛機(jī)大戰(zhàn)Python程序編制僅供參考審核批準(zhǔn)生效日期地址:電話:傳真:郵編:importpygame

fromplane_spritesimport*

classPlaneGame(object):

#初始化開始游戲類方法啟動(dòng)游戲

def__init__(self):

#創(chuàng)建窗口時(shí)鐘調(diào)用創(chuàng)建精靈方法

=

=

()

1000)

500)

#添加精靈

def__create_spites(self):

#背景精靈

bg1=BackGroup()

bg2=BackGroup(True)

=bg2)

#敵機(jī)精靈

=

#英雄精靈

=Hero()

=

#監(jiān)聽

def__event_handler(self):

#關(guān)閉×退出游戲

foreventin

if==:

()

elif==CREATE_ENEMY_EVENT:

#創(chuàng)建敵機(jī)d

enemy=Enemy()

elif==HERO_FIRE_EVENT:

#按鍵

keys_pressed=

ifkeys_pressed[]:

=2

elifkeys_pressed[]:

=-2

else:

=0

#碰撞檢測

def__check_collide(self):

,True,True)

enemys=,True)

iflen(enemys)>0:

()

#更新圖象更新屏幕

def__update_sprites(self):

#游戲結(jié)束

@staticmethod

def__Gameover():

()

exit()

defstart_game(self):

#時(shí)鐘監(jiān)聽碰撞檢測更新圖象更新屏幕結(jié)束

()

()

()

if__name__=="__main__":

#創(chuàng)建對象

game=PlaneGame()

#啟動(dòng)游戲

whileTrue:

()

importrandom

importpygame

#定義常量

SCREEN_RECT=(0,0,480,700)

FRAME_PER_SEC=60

CREATE_ENEMY_EVENT=

HERO_FIRE_EVENT=+1

classGameSprite

def__init__(self,image_name,speed=1):

super().__init__()

=

=

=speed

defupdate(self):

+=

classBackGroup(GameSprite):

def__init__(self,is_alt=False):

super().__init__(".\images\")

ifis_alt:

=

#背景精靈

defupdate(self):

super().update()

if>=:

=

classEnemy(GameSprite):

#隨機(jī)精靈

#調(diào)用父類,圖片

def__init__(self):

super().__init__(".\images\")

#隨機(jī)速度

=(1,3)

#隨機(jī)位置

=0

max_x=-

=(0,max_x)

defupdate(self):

#調(diào)用父類

super().update()

#判斷是否刪除

if>=:

()

def__del__(self):

#print("敵機(jī)掛了")

pass

classHero(GameSprite):

#英雄圖片

def__init__(self):

super().__init__(".\images\",0)

=

=-120

=

defupdate(self):

+=

if<0:

=0

elif>:

=

deffire(self):

foriin(0,1,2):

bullet=Bullet()

=-i*20

=

classBullet(GameSprite):

def__init__(self):

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論