boren 飛機大戰11 0

2021-10-03 20:58:14 字數 2755 閱讀 8589

import pygame

import sys

import random # 產生隨機數

import feiji

import diji

# 控制飛機

defkey_kong

(hero)

:for shi_jian in pygame.event.get():

# type 型別 quit 退出

if shi_jian.

type

== pygame.quit:

pygame.quit(

)# 退出遊戲

sys.exit(

)# 系統檔案的退出

# 判斷是否按了鍵 key

elif shi_jian.

type

== pygame.keydown:

# 檢測電腦是否按了a鍵,向左移動

if shi_jian.key == pygame.k_a:

hero.move_left(

)elif shi_jian.key == pygame.k_d:

hero.move_right(

)elif shi_jian.key == pygame.k_w:

hero.move_up(

)elif shi_jian.key == pygame.k_s:

hero.move_down(

)elif shi_jian.key == pygame.k_j:

hero.fashe(

)elif shi_jian.key == pygame.k_b:

hero.zhanji_boom(

)# 1。初始化

defzhu()

: pygame.init(

)# 2。設定乙個視窗

chuangkou = pygame.display.set_mode(

(400

,700))

# 3。設定乙個標題

pygame.display.set_caption(

"飛機大戰"

)# 6. 匯入 image影象 load 載入

bei_jing = pygame.image.load(

"/background.png"

)# 建立乙個飛機物件

feiji1 = feiji.feiji(chuangkou)

diji_ku =

# 列表

pygame.key.set_repeat(1,

1)# 設定字型格式

font = pygame.font.font(

"ziti.ttf",40

) score =

0# 5。迴圈

while

true

:# 把背景放上去

chuangkou.blit(bei_jing,(0

,0))

# 把飛機和相關元素放上視窗去

zidan_x, zidan_y = feiji1.show(

)print

(zidan_x)

print

(zidan_y)

b = random.randint(1,

30)if b ==5:

)for diji1 in diji_ku:

diji1.show(

) diji1.move(

)# diji1.fashe()

if diji1.yuejie():

# remove是通過內容把列表中的元素刪除

diji_ku.remove(diji1)

# **判斷

for diji2 in diji_ku:

if feiji1.x <= diji2.x <= feiji1.x +

100and feiji1.y <= diji2.y <= feiji1.y +

124:

feiji1.zhanji_boom(

)# 判斷子彈和敵機碰撞

for i in

range

(len

(zidan_x)):

# 如果敵機的x座標 小於子彈的x座標 小於敵機x座標加上敵機寬度

if diji2.x <= zidan_x[i]

<= diji2.x +

51and diji2.y <= zidan_y[i]

<= diji2.y +39:

try:

diji2.diji_boom(

) diji_ku.remove(diji2)

score = score +

1except

:pass

# 控制飛機jj

key_kong(feiji1)

print

("---"

)# key_kong2(diji1 , 2)

# 4.重新整理

wenzi =font.render(

"分數:%d"

%score,

true,(

0,0,

0)) chuangkou.blit(wenzi,(10

,10))

pygame.display.update(

)# main主要的函式

if __name__ ==

'__main__'

: zhu(

)

boren 飛機大戰2

import pygame import sys back 返回,後面 ground 地面 哪一行 確定戰機的位置,27行,用座標確定戰機位置 型別 1。初始化 defzhu pygame.init 2。設定乙個視窗 chuangkou pygame.display.set mode 400 700...

boren 飛機大戰3

import pygame import sys back 返回,後面 ground 地面 哪一行 確定戰機的位置,27行,用座標確定戰機位置 飛機的類 飛機名字,飛機的位置,視窗,class feiji def init self,ck self.name hero self.x 200 self...

boren 飛機大戰7

import pygame import sys import random 產生隨機數 back 返回,後面 ground 地面 哪一行 確定戰機的位置,27行,用座標確定戰機位置 飛機的類 飛機名字,飛機的位置,視窗,class feiji def init self,ck self.name ...