# 製作遊戲 導包
import random
import time
import pygame
import sys
import plane
import enemy
defkey_control
(hero)
:# event 事件,我們對電腦的每一次操作都是乙個事件
for shi_jian in pygame.event.get():
# print(shi_jian)
if shi_jian.
type
== pygame.quit:
pygame.quit(
) sys.exit(
)# 系統檔案的退出
# 判斷我們有沒有按鍵 key
elif shi_jian.
type
== pygame.keydown:
# 判讀我們按了什麼鍵
if shi_jian.key == pygame.k_a:
hero.move_left(
)if shi_jian.key == pygame.k_d:
hero.move_right(
)if shi_jian.key == pygame.k_w:
hero.move_up(
)if shi_jian.key == pygame.k_s:
hero.move_down(
)if shi_jian.key == pygame.k_f:
hero.fire(
)def
main()
:# 1。初始化
pygame.init(
)# 2。製作視窗
window = pygame.display.set_mode(
(400
,600))
# 3。給乙個標題
pygame.display.set_caption(
"星球大戰"
)# 匯入
background = pygame.image.load(
"/background.png"
)# 新建乙個戰機物件
hero = plane.plane(window)
bad_egg = enemy.enemy(window)
# 5。重新整理 update
# 電腦每隔多少毫秒時間響應一次
pygame.key.set_repeat(1,
1)while
true
:# 控制函式
key_control(hero)
# 敵機運動軌跡:一直往右走
window.blit(background,(0
,0))
# 顯示戰機
hero.show(
) bad_egg.show(
) bad_egg.move(
) pygame.display.update(
)# time.sleep(0.1)
pygame.quit(
)if __name__ ==
'__main__'
: main(
)
import pygame
# 屬性:
# 方法:移動
class
bullet()
:def
__init__
(self, window,x,y)
: self.x = x
self.y = y
self.skin = pygame.image.load(
"/bullet1.png"
) self.window = window
defmove
(self)
: self.y -=
10# 放視窗上
defshow
(self)
: self.window.blit(self.skin,
(self.x, self.y)
)
import pygame
import bullet
# 屬性:
# 方法:移動
class
plane()
:def
__init__
(self, window)
: self.x =
240 self.y =
426 self.skin = pygame.image.load(
"/hero1.png"
) self.window = window
self.biu =
# 子彈庫
defmove_left
(self)
: self.x -=
10if self.x <-50
: self.x =-50
defmove_right
(self)
: self.x +=
10if self.x >
350:
self.x =
350def
move_up
(self)
: self.y -=
10if self.y <
-124
: self.y =
600def
move_down
(self)
: self.y +=
10if self.y >
600:
self.y =
-124
# 放視窗上
defshow
(self)
: self.window.blit(self.skin,
(self.x, self.y)
)for i in
range
(len
(self.biu)):
self.biu[i]
.show(
) self.biu[i]
.move(
)# 發射子彈
deffire
(self)
:# 建立乙個子彈物件
)
import pygame
import random
class
enemy()
:def
__init__
(self, window)
: self.x =
0 self.y =
0 self.skin = pygame.image.load(
"/enemy-1.gif"
) self.window = window
defmove
(self)
: self.x += random.randint(1,
2)self.y += random.randint(1,
2)# 放視窗上
defshow
(self)
: self.window.blit(self.skin,
(self.x, self.y)
)
deqin 飛機大戰2 0
製作遊戲 導包 import random import time import pygame import sys 1。初始化 pygame.init 2。製作視窗 window pygame.display.set mode 400 600 3。給乙個標題 pygame.display.set ...
ziheng 飛機大戰4 0
import random import pygame class di ji def init self,chuangkou pifu r alien 1.png r alien 2.png r alien 3.png r alien 4.png r alien 5.png self.x rand...
飛機大戰 3
今天主要是敵方飛機的建立,下落 前面已建飛機的父類call 2 敵方飛機 function enemyplane hp,x,y,sizex,sizey,score,dietime,sudu,bombplane,srcimage 敵方的飛機型別分為大中小,要隨機下落 飛機的隨機下落,大中小飛機出現頻率...