Python是進入到互聯網行業比較輕松的一門編程語言,對于零基礎學員來說選擇Python技術是非常明智的,Python不僅可以進行數據分析,還可以制作游戲,接下來小編就為大家介紹本期的Python培訓教程-教你做一款飛機大戰游戲框架。
Python培訓教程分享:教你做一款飛機大戰游戲框架
1、游戲窗口
經過安裝Pygame,以及了解Pygame的核心功能之后,可以開始編寫一個小的游戲案例了。下面將制作一個飛機大戰游戲,游戲內容是敵對的兩架飛機互相射擊。
游戲開始前需要調用初始化函數,代碼如下:
pygame.init()
否則,在本案例中輸出漢字時,會提示錯誤,字體沒有初始化。
創建一個游戲窗口,加載背景,設置窗口標題和圖標等,代碼如下:
# 創建一個游戲窗口
surface = pygame.display.set_mode((480, 652))
# 加載背景圖片
background = pygame.image.load('./img/background.png')
# 調整連續按鍵事件生成時間
pygame.key.set_repeat(50, 50)
# 設置窗口標題
pygame.display.set_caption('飛機大戰')
# 設置窗口圖標
pygame.display.set_icon(pygame.image.load('./img/icon72x72.png'))
2、游戲循環
飛機大戰中設計了游戲循環,還設計了玩家飛機、敵機、玩家子彈和敵人子彈四個類,以及碰撞和控制兩個功能函數。另外,還有游戲啟動界面和結束界面等函數。
整個游戲的游戲循環如下:
?、倮L制背景圖片。
?、诳刂仆婕绎w機,主要響應玩家的操作。例如,玩家點擊關閉按鈕,則退出游戲;玩家按下左箭頭鍵,則飛機向左移動;玩家按下右箭頭鍵,則飛機向右移動;玩家按下空格鍵,則飛機發射子彈。
③繪制玩家飛機,包括正常狀態和被擊毀狀態;繪制玩家飛機發射的子彈。
?、芾L制敵機,包括正常狀態和被擊毀狀態;繪制敵機發射的子彈。
?、菘刂茢硻C的移動。
⑥檢測玩家飛機與敵機發射子彈的碰撞情況。
?、邫z測敵機和玩家飛機發射子彈的碰撞情況。
⑧更新游戲窗口。
游戲循環的具體實現代碼如下:
while True:
surface.blit(background, (0, 0)) # 繪制背景圖片
kongzhi(hero) # 控制玩家飛機
hero.hero_display() # 繪制玩家飛機
enemyplan.display() # 繪制敵機
enemyplan.move() # 控制敵機的移動
impact(hero, enemyplan.biu_list) # 檢測玩家飛機與敵機發射子彈的碰撞情況
impact(enemyplan, hero.biu_list) # 檢測敵機和玩家飛機發射子彈的碰撞情況
pygame.display.update() # 更新游戲窗口
以上就是相關Python培訓教程,希望對大家有所幫助,如果你還有更多想要了解的Python培訓教程以及疑問或者想要了解的,可以在線咨詢我們客服,有專業老師隨時為你服務。