教你利用pygame模塊制作跳躍小球小游戲_第1頁
教你利用pygame模塊制作跳躍小球小游戲_第2頁
教你利用pygame模塊制作跳躍小球小游戲_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論