<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      pygame小游戲飛機大戰_7添加背景音樂

      定義音樂:

      # 定義音樂的類
      class GameSound(object):
          def __init__(self):
              # 初始化主程序
              pygame.mixer.init()
              # 引入背景音樂
              pygame.mixer.music.load("./sound/game_music.ogg")
              # 調整聲音大小
              pygame.mixer.music.set_volume(0.5)
      
          def PlayMusic(self):
              # 開始播放音樂
              pygame.mixer.music.play(-1)

      在main函數中加入引入音樂的方法:

      # 創建main函數創建主程序
      def main():
          sound = GameSound()
          sound.PlayMusic()

      完整代碼: 

      # 引入random
      import random
      # 引入pygame
      import pygame
      # 引入time模塊
      import time
      # 引入pygame中的所有方法
      from pygame.constants import K_UP, K_RIGHT, K_DOWN, K_LEFT, K_w, K_a, K_s, K_d, K_SPACE
      
      # 定義初始為向右
      direction = "right"
      
      
      # 引入敵方飛機的類
      class Enemy(object):
          # 創建玩家的方法,引入screen模塊
          def __init__(self, screen):
              # 引入圖片創建敵人
              self.enemy = pygame.image.load("./images/enemy1.png")  # 51*43
              # 設置速度變量
              self.speed = 5
      
              self.x = 0
              self.y = 0
              # 使screen變為飛機類的一個屬性
              self.screen = screen
              # 定義裝子彈的列表
              self.bullets = []
      
          def display(self):
              # 繪制敵人
              self.screen.blit(self.enemy, (self.x, self.y))
              # 遍歷所有子彈
              for bullet in self.bullets:
                  # 引入讓子彈飛起來的方法
                  bullet.auto_move()
                  # 顯示子彈
                  bullet.display()
      
          # 定義移動飛機的方法
          def auto_move(self):
              # 將direction改為全局變量
              global direction
              # 判斷方向進行移動
              if direction == "right":
                  self.x += self.speed
              if direction == "left":
                  self.x -= self.speed
              # 定義碰壁時調整移動方向
              if self.x >= 480 - 51:
                  direction = "left"
              if self.x <= 0:
                  direction = "right"
      
          # 定義自動開火的方法
          def auto_fire(self):
              # 使用隨機數函數進行隨機抽取一個1到10的一個隨機數
              random_number = random.randint(1, 10)
              # 當隨機數為8時創建子彈
              if random_number == 8:
                  # 創建單個子彈
                  bullet = EnemyBullet(self.screen, self.x, self.y)
                  # 將子彈放入列表中
                  self.bullets.append(bullet)
      
      
      # 引入飛機的類
      class Plane(object):
          # 創建玩家的方法,引入screen模塊
          def __init__(self, screen):
              # 引入圖片創建玩家
              self.player = pygame.image.load("./images/me1.png")
              # 設置速度變量
              self.speed = 10
      
              self.x = 179
              self.y = 500
              # 使screen變為飛機類的一個屬性
              self.screen = screen
              # 定義裝子彈的列表
              self.bullets = []
      
          # 創建玩家移動的方法
          def key_control(self):
              # 判斷按下鍵盤事件,對玩家x,y坐標進行調整使玩家移動
              key_pressed = pygame.key.get_pressed()
              if key_pressed[K_w] or key_pressed[K_UP]:
                  self.y -= self.speed
              if key_pressed[K_d] or key_pressed[K_RIGHT]:
                  self.x += self.speed
              if key_pressed[K_a] or key_pressed[K_LEFT]:
                  self.x -= self.speed
              if key_pressed[K_s] or key_pressed[K_DOWN]:
                  self.y += self.speed
              if key_pressed[K_SPACE]:
                  # 按下空格鍵發射子彈
                  bullet = Bullet(self.screen, self.x, self.y)
                  # 將子彈存入列表
                  self.bullets.append(bullet)
      
          def display(self):
              # 繪制玩家
              self.screen.blit(self.player, (self.x, self.y))
              # 遍歷所有子彈
              for bullet in self.bullets:
                  # 引入讓子彈飛起來的方法
                  bullet.auto_move()
                  # 顯示子彈
                  bullet.display()
      
      
      # 引入敵人子彈的類
      class EnemyBullet(object):
          def __init__(self, screen, x, y):
              # 定義坐標
              self.x = x + 29 - 2
              self.y = y + 43
              # 引入子彈圖片
              self.image = pygame.image.load("./images/bullet2.png")
              # 顯示窗口
              self.screen = screen
              # 定義速度
              self.speed = 4
      
          # 定義顯示子彈的方法
          def display(self):
              # 顯示子彈到窗口
              self.screen.blit(self.image, (self.x, self.y))
      
          # 定義移動子彈的方法
          def auto_move(self):
              # 修改子彈y坐標使子彈飛起來
              self.y += self.speed
      
      
      # 引入子彈的類
      class Bullet(object):
          def __init__(self, screen, x, y):
              # 定義坐標
              self.x = x + 51 - 2
              self.y = y
              # 引入子彈圖片
              self.image = pygame.image.load("./images/bullet1.png")
              # 顯示窗口
              self.screen = screen
              # 定義速度
              self.speed = 10
      
          # 定義顯示子彈的方法
          def display(self):
              # 顯示子彈到窗口
              self.screen.blit(self.image, (self.x, self.y))
      
          # 定義移動子彈的方法
          def auto_move(self):
              # 修改子彈y坐標使子彈飛起來
              self.y -= self.speed
      
      
      # 定義音樂的類
      class GameSound(object):
          def __init__(self):
              # 初始化主程序
              pygame.mixer.init()
              # 引入背景音樂
              pygame.mixer.music.load("./sound/game_music.ogg")
              # 調整聲音大小
              pygame.mixer.music.set_volume(0.5)
      
          def PlayMusic(self):
              # 開始播放音樂
              pygame.mixer.music.play(-1)
      
      
      # 創建main函數創建主程序
      def main():
          sound = GameSound()
          sound.PlayMusic()
          # 創建一個窗口
          screen = pygame.display.set_mode((480, 700), 0, 32)
          # 引入圖片創建背景
          background = pygame.image.load("./images/background.png")
          # 引入圖片創建玩家
          player = pygame.image.load("./images/me1.png")
          # 引入玩家信息
          player = Plane(screen)
          # 引入敵人信息
          enemy = Enemy(screen)
          # 設置速度變量
          speed = 10
      
          x = 179
          y = 500
          while True:
              # 繪制背景
              screen.blit(background, (0, 0))
              # 獲取事件
              for event in pygame.event.get():
                  # 如果事件是QUIT事件,如點擊窗口的關閉按鈕,則退出循環
                  if event.type == pygame.QUIT:
                      # 執行退出游戲
                      pygame.quit
                      # 退出程序
                      exit()
              # 執行飛機按鍵監聽
              player.key_control()
              # 顯示飛機
              player.display()
              # 顯示敵人
              enemy.display()
              # 敵人自動移動
              enemy.auto_move()
              # 敵人自動開火
              enemy.auto_fire()
              # 界面更新
              pygame.display.update()
              # 使程序每次運行時停留0.01秒
              time.sleep(0.01)
      
      
      if __name__ == '__main__':
          main()

      此時開始游戲時就有了背景音樂

      posted @ 2025-08-18 11:01  賽博郎中  閱讀(48)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 人人爽亚洲aⅴ人人爽av人人片 | 亚洲av无码片在线播放| 特级做a爰片毛片免费看无码| 极品无码国模国产在线观看 | 午夜精品极品粉嫩国产尤物| 免费a级毛片18以上观看精品 | 亚洲av片在线免费观看| 日本黄韩国色三级三级三| 亚洲大尺度无码无码专线| 亚洲精品电影院| 色老99久久九九爱精品| 久久天天躁夜夜躁狠狠ds005 | 国产精品一码在线播放| 亚洲人成网站免费播放| 国产精品人妻中文字幕| 欧美人与动交视频在线观看| 亚洲中文字幕在线二页| 少妇人妻精品一区二区| 免费无码午夜理论电影| 精品一区二区中文字幕| 亚洲精品无码高潮喷水A| 国产精品国产高清国产av| 国产午夜精品福利在线观看| 一二三四中文字幕日韩乱码| 亚洲国内精品一区二区| 国产婷婷综合在线视频中文| 人妻少妇偷人无码视频| 中文文字幕文字幕亚洲色| 无码av岛国片在线播放| 国产精品大全中文字幕| 凸凹人妻人人澡人人添| 办公室强奷漂亮少妇视频| 日韩在线视频线观看一区| 福利视频一区二区在线| 熟妇的味道hd中文字幕| 丝袜a∨在线一区二区三区不卡| 久久av色欲av久久蜜桃网| 亚洲永久精品免费在线看| 无码国产一区二区三区四区| 欧美z0zo人禽交另类视频| 狠狠色综合播放一区二区|