Cocos2d-X賽車游戲源碼.
1、游戲組成。
本游戲由車(主角,黃色)、車(其他,其他顏色)、道路、草地組成,車圖片的大小是72*122。
2、場景布置。
場景由草地作為背景,道路布置在正中央,錨點(diǎn)為(0.5,0)。車(其他)隨機(jī)分布在道路對應(yīng)范圍上,且在屏幕外。當(dāng)游戲開始時(shí),道路以moveSize/0.1f向下移動(dòng)。移動(dòng)的實(shí)現(xiàn)方案是Scene的update,每0.1f刷新一次。同時(shí),車(其他)以比moveSize稍微小一點(diǎn)的速度向下setPosition。
3、邏輯設(shè)計(jì)。
本游戲邏輯主要提現(xiàn)在
A、隨機(jī)布置車(其他)
車(其他)的橫縱左邊均用隨機(jī)函數(shù)rand()處理。橫坐標(biāo)隨機(jī)在道路對應(yīng)范圍內(nèi)即可,縱坐標(biāo)在[720,5720]之間隨機(jī)(因?yàn)槠脚_的“高度”為720)。此時(shí),需要判斷隨機(jī)之后的車(其他)是否相互發(fā)生碰撞,見C碰撞檢測。
B、道路無限運(yùn)動(dòng)
道路的無限運(yùn)動(dòng)必較容易實(shí)現(xiàn),學(xué)生使用了兩個(gè)CCSprite,二者的height均大于720,當(dāng)pRoad1的position.y+height<0時(shí)(即完全移除屏幕時(shí)),重新設(shè)置pRoad1的坐標(biāo)為(x,pRoad2.y+pRoad2.height),pRoad2的實(shí)現(xiàn)同pRoad1的原理。這樣,就實(shí)現(xiàn)了道路的無限運(yùn)動(dòng)。
C、碰撞檢測
被檢測者(roles[i])只要任意四角中的一點(diǎn)在檢測者(roles[j])四個(gè)角規(guī)定的范圍(形成一個(gè)矩形)內(nèi),就形成了碰撞。


本源碼地址:http://m.bmm520.net/vip/syrm/2015/1106/499.html