【飛機(jī)游戲】【Cocos】【P3】創(chuàng)建子彈道具功能

0 上一期我們處理完了飛機(jī)和子彈之間的碰撞邏輯,本期我們將要實(shí)現(xiàn)玩家飛機(jī)拾取子彈道具后飛機(jī)發(fā)射不同子彈的功能。
0.1 設(shè)置玩家飛機(jī)與道具的碰撞檢測。
0.2 制作子彈道具節(jié)點(diǎn)。
0.3 玩家飛機(jī)獲取道具后將提升子彈威力。

?
1.0 設(shè)置玩家飛機(jī)與道具的碰撞檢測。
1.1 在碰撞矩陣設(shè)置面板中添加一行子彈道具的碰撞組:BULLET_PROP,子彈道具可以與玩家飛機(jī)發(fā)生碰撞。


2.0 制作子彈道具節(jié)點(diǎn)。
2.1 在Asset中找到子彈道具的貼圖資源fightIconBullet01、fightIconBullet02和fightIconBullet03。將三個貼圖的資源掛到材質(zhì)BulletH、BulletS和BulletM上。



2.2 制作好子彈道具的材質(zhì)之后,需要把材質(zhì)掛到子彈道具的節(jié)點(diǎn)上。節(jié)點(diǎn)的類型我們選擇Quad。
2.3 綁定好材質(zhì)貼圖后,我們在節(jié)點(diǎn)上添加碰撞盒,碰撞盒類型設(shè)置為BULLET_PROP。
2.4 創(chuàng)建道具腳本bullet_prop.ts,并將腳本也綁到節(jié)點(diǎn)上。

??



3.0 玩家飛機(jī)獲取道具后將提升子彈威力。
3.1 使用定時器在game_manager中隨機(jī)創(chuàng)建3中類型的子彈道具。

3.2 道具對象實(shí)例化出來之后,我們將在子彈道具腳本bullet_prop中把道具的運(yùn)動軌跡設(shè)置為從屏幕頂部S型下落。設(shè)置監(jiān)聽碰撞回調(diào)函數(shù),當(dāng)玩家飛機(jī)碰撞到了不同類型的道具,回調(diào)函數(shù)就會將道具類型的信息傳遞給game_manager。

3.3 game_manager接收到了玩家飛機(jī)碰撞的道具類型信息后,當(dāng)玩家再次發(fā)射子彈時便可根據(jù)此時的道具類型調(diào)整相應(yīng)的玩家子彈生成方案。

3.4 當(dāng)玩家的子彈發(fā)生方案發(fā)生改變后,Bullet腳本會根據(jù)不同的子彈方案設(shè)置不同的運(yùn)動軌跡。

3.5 編譯運(yùn)行游戲,可看到效果。
(1)H型子彈道具獲取后的效果:

(2)M型子彈道具獲取后的效果:

(3)S型子彈道具獲取后的效果:


?