下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第教你利用pygame模塊制作跳躍小球小游戲(4)上面的小球是靜止的,下面我們?cè)撟屝∏騽?dòng)起來了。ball.get_rect()方法返回值ballrect是一個(gè)rec對(duì)象,該對(duì)象有一個(gè)move()方法可以用于移動(dòng)矩形。move(x,y)函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是x軸移動(dòng)的距離,第二個(gè)參數(shù)是y軸移動(dòng)的距離。窗體左上角坐標(biāo)為(0,0)。
為了實(shí)現(xiàn)小球不停地移動(dòng),將move()函數(shù)添加到while循環(huán)內(nèi),具體代碼如下:
我們?cè)谠a的基礎(chǔ)上加上了這兩行代碼。運(yùn)行后卻發(fā)現(xiàn)小球一閃而過,但小球并沒有真正的笑死,而是移動(dòng)到窗體之外,此時(shí)需要添加碰撞監(jiān)測(cè)的功能。當(dāng)小球與窗體的任意邊緣發(fā)生碰撞,則更改小球的移動(dòng)方向。
代碼如下:
在原有代碼中添加上面的碰撞判斷代碼,運(yùn)行如下
小球在界面飛速運(yùn)動(dòng)。然后我們需要控制小球移動(dòng)的速度。首先介紹一下上面的代碼,上面代碼中,添加了碰撞監(jiān)測(cè)功能。如果碰到左右邊緣,這則更改x軸數(shù)據(jù)為負(fù)數(shù);如果碰到上下邊緣,則更改y軸數(shù)據(jù)為負(fù)數(shù)。
那么我們?cè)鯓涌刂菩∏蛞苿?dòng)的速度呢?這時(shí)我們需要添加一個(gè)“時(shí)鐘”來控制程序運(yùn)行的時(shí)間。這時(shí)就需要使用pygame的time模塊。使用pygame時(shí)鐘之前,必須先創(chuàng)建clock對(duì)象的一個(gè)實(shí)例,然后再while循環(huán)中設(shè)置多長(zhǎng)時(shí)間運(yùn)行一次。代碼如下【也就是最終代碼,由于運(yùn)動(dòng)效果無法展示,各位還是自行運(yùn)行查看效果^_^】:
#-*-coding:utf-8-*-
importsys#導(dǎo)入sys模塊
importpygame#導(dǎo)入pygame模塊
pygame.init()#初始化pygame
size=width,height=640,480#設(shè)置窗口
screen=pygame.display.set_mode(size)#顯示窗口
color=(0,0,0)#設(shè)置顏色
ball=pygame.image.load("ball.png")#加載圖片
ballrect=ball.get_rect()#獲取矩形區(qū)域
speed=[5,5]#設(shè)置移動(dòng)的X軸、Y軸距離
clock=pygame.time.Clock()#設(shè)置時(shí)鐘
#執(zhí)行死循環(huán),確保窗口一直顯示
whileTrue:
clock.tick(60)#每秒執(zhí)行60次
#檢查事件
foreventinpygame.event.get():
ifevent.type==pygame.QUIT:#如果點(diǎn)擊關(guān)閉窗口,則退出
sys.exit()
ballrect=ballrect.move(speed)#移動(dòng)小球
#碰到左右邊緣
ifballrect.left0orballrect.rightwidth:
speed[0]=-speed[0]
#碰到上下邊緣
ifballrect.top0orballrect.bottomheight:
speed[1]=-speed[1]
screen.fill(color)#填充顏色
screen.blit(ball,ballrect)#將圖片畫到窗口上
pygame.display.flip()#更新全部顯示
pygame.quit()#退出pygame
上述代碼中在上面代碼中添加了:
clock=pygame.tim
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 怎樣記護(hù)考填空題目及答案
- 心理健康知識(shí)宣傳
- 橋梁施工現(xiàn)場(chǎng)安全風(fēng)險(xiǎn)評(píng)估方案
- 消防設(shè)施工程預(yù)算編制方案
- 施工階段的技術(shù)培訓(xùn)與考核方案
- 瀝青現(xiàn)貨交易基礎(chǔ)知識(shí)
- 外墻施工過程風(fēng)險(xiǎn)評(píng)估方案
- 施工現(xiàn)場(chǎng)臨時(shí)設(shè)施布置方案
- 施工圖紙復(fù)核及整改方案
- 水質(zhì)指標(biāo)監(jiān)測(cè)體系方案
- 北京市順義區(qū)2025-2026學(xué)年八年級(jí)上學(xué)期期末考試英語試題(原卷版+解析版)
- 中學(xué)生冬季防溺水主題安全教育宣傳活動(dòng)
- 2026年藥廠安全生產(chǎn)知識(shí)培訓(xùn)試題(達(dá)標(biāo)題)
- 初中九年級(jí)上一元二次方程計(jì)算練習(xí)題及答案詳解B2
- 中國涉外律師人才研究報(bào)告2025
- 冷庫防護(hù)制度規(guī)范
- 2026年生產(chǎn)管理崗入職性格測(cè)試題及答案
- 2026年bjt商務(wù)能力考試試題
- 廣東省廣州市番禺區(qū)2026屆高一數(shù)學(xué)第一學(xué)期期末聯(lián)考試題含解析
- 2026年廣東省佛山市高三語文聯(lián)合診斷性考試作文題及3篇范文:可以“重讀”甚至“重構(gòu)”這些過往
- 老年住院患者非計(jì)劃性拔管分析2026
評(píng)論
0/150
提交評(píng)論