基于pygame實現(xiàn)童年掌機打磚塊游戲
本文為大家分享了童年掌機游戲,基于pygame實現(xiàn)打磚塊的具體代碼,供大家參考,具體內(nèi)容如下
項目背景:
小時候有過一個掌機游戲機,里面有俄羅斯方塊,打方塊等游戲,玩的那叫一個廢寢忘食,只是后來玩壞了就沒再玩過。今日想學習以下python,就從游戲入手,寫一個打方塊的游戲,順便回憶以下童年的樂趣。
此作完全是我學習python和游戲制作的練手作品,用到的python語法和pygame插件的api不會寫的很詳細,主要記錄學習遇到的問題和思路。

1、環(huán)境準備
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.小球的落地,游戲結(jié)束
2.6.磚塊被打完,游戲結(jié)束
2.7.計分功能
2.8.音樂~~
3、開整
先從載入圖片做起。廢話不多說,直接上代碼
import pygame
from pygame.locals import *
from sys import exit
# pygame初始化,必須要的
pygame.init()
# 創(chuàng)建窗口
# pygame.display是訪問了顯示設(shè)備
# set_mode方法會返回一個Surface對象,即本程序運行時出現(xiàn)的窗口畫面
screen = pygame.display.set_mode((360, 480))
# 設(shè)置窗口的名字
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')
# 游戲程序一般都需要一個死循環(huán),通過某些條件才可以退出
while True:
for event in pygame.event.get():
# 接受退出時間后退出程序
if event.type == QUIT:
exit()
# 把畫面背景設(shè)置為白色
screen.fill((255, 255, 255))
#把上面加載的圖片放入到畫面中
# 把球放進去,并設(shè)置坐標
screen.blit(ball, (180, 430))
# 把磚塊放進去,并設(shè)置坐標
# 這里僅放了一個磚塊,以后可以做個循環(huán)放好多磚塊
screen.blit(block, (20, 20))
# 把板子放進去,并設(shè)置坐標
screen.blit(board, (150, 450))
# 刷新畫面
pygame.display.update()
通過上面的代碼就可以簡單的把圖片加載到畫面中了

接下來還要讓小球和板子動起來,下次再寫。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python如何獲取網(wǎng)絡(luò)數(shù)據(jù)
這篇文章主要介紹了python如何獲取網(wǎng)絡(luò)數(shù)據(jù),幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下2021-04-04
Python基于Socket實現(xiàn)簡易多人聊天室的示例代碼
這篇文章主要介紹了Python基于Socket實現(xiàn)簡易多人聊天室的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-11-11
Python3讀取Excel數(shù)據(jù)存入MySQL的方法
今天小編就為大家分享一篇Python3讀取Excel數(shù)據(jù)存入MySQL的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05
使用python實現(xiàn)男神女神顏值打分系統(tǒng)(推薦)
這篇文章主要介紹了用python做一個男神女神顏值打分系統(tǒng)(程序分析見注釋),需要的朋友可以參考下2019-10-10

