天天看點

基于pygame實作童年掌機打磚塊遊戲

本文為大家分享了童年掌機遊戲,基于pygame實作打磚塊的具體代碼,供大家參考,具體内容如下

項目背景:

小時候有過一個掌機遊戲機,裡面有俄羅斯方塊,打方塊等遊戲,玩的那叫一個廢寝忘食,隻是後來玩壞了就沒再玩過。今日想學習以下python,就從遊戲入手,寫一個打方塊的遊戲,順便回憶以下童年的樂趣。

此作完全是我學習python和遊戲制作的練手作品,用到的python文法和pygame插件的api不會寫的很詳細,主要記錄學習遇到的問題和思路。

基于pygame實作童年掌機打磚塊遊戲

1、環境準備

1.1.安裝python,這裡我安裝的是3.6.3。(安裝教程請自行搜尋)

1.2.安裝pygame,這裡我安裝的是1.9.3。(安裝教程請自行搜尋)

1.3.安裝pycharm

1.4.準備素材,打開畫圖工具,做出一個磚塊圖檔,一個小球圖檔,一個闆子圖檔。

2、思路整理

回憶遊戲流程,整個遊戲大緻有以下幾個步驟

2.1.遊戲初始化,載入三種圖檔。

2.2.點選啟動按鈕,小球移動,也可以增加暫停功能。

2.3.小球與磚塊、闆子,左右和上方牆壁的碰撞

2.4.闆子與左右牆壁的碰撞(不可超越牆壁)

2.5.小球的落地,遊戲結束

2.6.磚塊被打完,遊戲結束

2.7.計分功能

2.8.音樂~~

3、開整

先從載入圖檔做起。廢話不多說,直接上代碼

import pygame
from pygame.locals import *
from sys import exit

# pygame初始化,必須要的
pygame.init()

# 建立視窗
# pygame.display是通路了顯示裝置
# set_mode方法會傳回一個Surface對象,即本程式運作時出現的視窗畫面
screen = pygame.display.set_mode((360, 480))
# 設定視窗的名字
pygame.display.set_caption('打磚塊')

# 加載圖像
# 球
ball = pygame.image.load('img/ball.png')
# 磚塊
block = pygame.image.load('img/block.png')
# 闆子
board = pygame.image.load('img/board.png')

# 遊戲程式一般都需要一個死循環,通過某些條件才可以退出
while True:
 for event in pygame.event.get():
 # 接受退出時間後退出程式
 if event.type == QUIT:
 exit()
 # 把畫面背景設定為白色
 screen.fill((255, 255, 255))
 #把上面加載的圖檔放入到畫面中
 # 把球放進去,并設定坐标
 screen.blit(ball, (180, 430))
 # 把磚塊放進去,并設定坐标
 # 這裡僅放了一個磚塊,以後可以做個循環放好多磚塊
 screen.blit(block, (20, 20))
 # 把闆子放進去,并設定坐标
 screen.blit(board, (150, 450))
 # 重新整理畫面
 pygame.display.update()           

複制

通過上面的代碼就可以簡單的把圖檔加載到畫面中了

基于pygame實作童年掌機打磚塊遊戲

接下來還要讓小球和闆子動起來,下次再寫。

以上就是本文的全部内容,希望對大家的學習有所幫助。