Python+Pygame實現(xiàn)接小彈珠游戲
游戲介紹
小學(xué)生都不一定會晚的游戲,用擋板接住會反彈的小球,隨著次數(shù)的增多,速度變快,分?jǐn)?shù)增多。
效果展示

游戲代碼
import pygame as pg
import sys
from random import randint
import time
pg.init() #對pygame內(nèi)部各功能模塊進行初始化創(chuàng)建及變量設(shè)置,默認(rèn)調(diào)用
game_window = pg.display.set_mode((600, 500)) #初始化顯示窗口,第一個size是一個二值元組,分別表示窗口的寬度和高度
pg.display.set_caption("接彈珠游戲") #顯示窗口的標(biāo)題內(nèi)容
score = 0
font = pg.font.Font(None, 60)
window_color = (0, 0, 0) # 設(shè)置窗口顏色——黑色
ball_color = (0, 255, 0) # 設(shè)置球的顏色-——綠色
rect_color = (255, 125, 0) # 設(shè)置擋板顏色——橙色
move_x = 1
move_y = 1
ball_x = randint(20, 580) #球的初始位置隨機
ball_y = randint(20, 480)
points = 1
count = 0
while True:
game_window.fill(window_color)
for event in pg.event.get():
if event.type == pg.QUIT:
sys.exit()
mouse_x, mouse_y = pg.mouse.get_pos()
pg.draw.circle(game_window, ball_color, (ball_x, ball_y), 20) #在窗口內(nèi)畫球
pg.draw.rect(game_window, rect_color, (mouse_x, 490, 100, 10)) #在窗口內(nèi)畫矩形接拍
ball_x += move_x
ball_y += move_y
my_score = font.render(str(score), False, (255, 255, 255)) #設(shè)置分?jǐn)?shù)顯示,白色
game_window.blit(my_score, (500, 30))
ball_x += move_x
ball_y += move_y
if ball_x <= 20 or ball_x >= 580: #左右兩側(cè)墻壁
move_x = -move_x #碰到左右兩側(cè)墻壁時,X坐標(biāo)變?yōu)榉捶较?
if ball_y <= 20: #碰到上方墻壁時,Y坐標(biāo)改變方向
move_y = -move_y
elif ball_x >(mouse_x - 20) and ball_x <(mouse_x + 120) and ball_y >= 470:
move_y = -move_y #下方接到球,改變Y坐標(biāo)方向,并加分
score += points
count += 1 #接球次數(shù)加1
if count == 5:
count = 0
points += points #分?jǐn)?shù)翻倍
if move_x > 0:
move_x += 1
else:
move_x -= 1
move_y -= 1
elif ball_y > 480 and (ball_x <= mouse_x - 20 or ball_x >= mouse_x + 120):
ball_y = 490 #沒有接到球,退出程序
break
pg.display.update() #更新窗口,保證窗口始終打開
time.sleep(0.03)項目資源
Github:pygame-/接小彈珠 at main · Auorui/pygame- (github.com)
到此這篇關(guān)于Python+Pygame實現(xiàn)接小彈珠游戲的文章就介紹到這了,更多相關(guān)Python Pygame接彈珠游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python利用3D引擎寫一個Pong游戲
- Python+Pygame編寫一個Pong游戲
- Python+Pygame實戰(zhàn)之俄羅斯方塊游戲的實現(xiàn)
- Python Pygame實戰(zhàn)之實現(xiàn)經(jīng)營類游戲夢想小鎮(zhèn)代碼版
- Python+Pygame實戰(zhàn)之詩詞填空游戲的實現(xiàn)
- Python+numpy實現(xiàn)一個蜘蛛紙牌游戲
- Python+Pygame實戰(zhàn)之文字劇情游戲的實現(xiàn)
- Python+Pygame實戰(zhàn)之炫舞小游戲的實現(xiàn)
- Python之freegames?零代碼的22個小游戲集合
相關(guān)文章
爬蟲代理池Python3WebSpider源代碼測試過程解析
這篇文章主要介紹了爬蟲代理池Python3WebSpider源代碼測試過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-12-12
pytorch GAN偽造手寫體mnist數(shù)據(jù)集方式
今天小編就為大家分享一篇pytorch GAN偽造手寫體mnist數(shù)據(jù)集方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
python實現(xiàn)修改固定模式的字符串內(nèi)容操作示例
這篇文章主要介紹了python實現(xiàn)修改固定模式的字符串內(nèi)容操作,結(jié)合實例形式詳細(xì)分析了Python修改固定模式字符串原理、實現(xiàn)方法及相關(guān)操作注意事項,需要的朋友可以參考下2019-12-12
Python?數(shù)據(jù)可視化超詳細(xì)講解折線圖的實現(xiàn)
數(shù)據(jù)可以幫助我們描述這個世界、闡釋自己的想法和展示自己的成果,但如果只有單調(diào)乏味的文本和數(shù)字,我們卻往往能難抓住觀眾的眼球。而很多時候,一張漂亮的可視化圖表就足以勝過千言萬語,讓我們來用Python實現(xiàn)一個可視化的折線圖2022-03-03

