坦克大戰 v1.0字體
"""
思路描述
1.安裝遊戲模塊(pygame),準備遊戲素材
1.經過Pycharm中setting-> project interpreter->點擊右上角「+」添加,搜索pygame,install package
2.經過命令行 pip install pygame
2.分析遊戲對象
涉及哪些類
主頁面類
坦克類(我方坦克,敵方坦克)
子彈類
爆炸效果類
類與類之間有什麼關係
3.完成主頁面
while(True):
驗證是否安裝是否成功
pygame 1.9.3
使用
import pygame
"""
坦克大戰 v1.0
1.窗口的定義
2.屏幕左上顯示文字
3.事件的獲取:關閉窗口事件,上下左右空格事件。
1 import pygame,sys 2 from pygame.locals import * 3 4 class MainGame(object): 5 # 定義窗口的高度、寬度 6 screen_witch = 600 7 screen_height = 400 8 9 # 遊戲開始 10 def startGame(self): 11 # 建立窗口 set_mode() 獲得一個surface對象 12 sf = pygame.display.set_mode((MainGame.screen_witch,MainGame.screen_height),0,32) 13 # 設置標題 14 pygame.display.set_caption("坦克大戰") 15 while True: 16 # 設置surface的填充色 fill((0,0,0)) 17 sf.fill((0,0,0)) 18 # 將文字經過表面blit方法,完成繪製 19 sf.blit(self.write_text(),(5,5)) 20 # 事件監聽的獲取 21 self.get_event() 22 # 持續更新 update() 23 pygame.display.update() 24 # 建立字體,用來在屏幕上顯示 25 def write_text(self): 26 pygame.font.init() 27 # 建立字體(系統字體) 28 font = pygame.font.SysFont("simsunnsimsun",20) 29 # 獲得字體 30 text_sf = font.render("剩餘敵方坦克:%d"%5,True,(255,0,0)) 31 return text_sf 32 # 事件獲取 33 def get_event(self): 34 # 獲取全部的事件列表 35 eventList = pygame.event.get() 36 # 遍歷事件,看事件的type是否爲QUIT,若是是,調用結束功能 37 for event in eventList: 38 if event.type == QUIT: 39 self.endGame() 40 # 點擊鍵盤的按鍵 41 if event.type == KEYDOWN: 42 if event.key == K_LEFT or event.key == K_a: 43 print("向左") 44 elif event.key == K_RIGHT or event.key == K_d: 45 print("向右") 46 elif event.key == K_UP or event.key == K_w: 47 print("向上") 48 elif event.key == K_DOWN or event.key == K_s: 49 print("向下") 50 elif event.key == K_SPACE: 51 print("發射子彈") 52 # 遊戲結束方法 53 def endGame(self): 54 print("遊戲結束!") 55 sys.exit(0) 56 57 # 建立對象 58 game = MainGame() 59 # 調用開始遊戲方法 60 game.startGame()