Cocos Creator模擬射箭效果 | 附代碼

1

獲取代碼


感謝「一枚小工」的投稿,關注他的微信公衆號,發送【射箭】獲取代碼

2

效果預覽

640

3

操作方法

點擊屏幕,屏幕出現起始位置標誌的圓點,不鬆開手指,滑動屏幕,控制力度和方向,移動距離越大,弓箭拉伸效果越大,鬆開以後,箭將沿着結束點到起始點方向射出去。

4

弓箭拉伸效果實現原理

弓箭所有內容放置在一個空節點weapon上,控制邏輯掛在weapon上,實現邏輯的控制。
640
要注意幾個節點的錨點,根據UI需要調整節點的錨點位置,以達到拉伸過程中顯示的最佳效果,本demo中怎麼設置的,可以參考代碼。

弓箭由4部分組成:弓、箭、上弦、下弦,如上說明,調整各節點的位置,以達到最佳視覺效果,如上弦的錨點設置成(0.5, 1),下弦的錨點設置成(0, 0.5),這樣在旋轉的時候,只需要修改弦的旋轉角度和修改弦的長度即可,而不必關心絃往哪個方向變化。其他節點的錨點設置類似,弓只需要旋轉角度,箭只需要修改水平方向位置。
640

在獲取到力度和方向以後,通過修改箭的位置,上弦和下弦的旋轉方向,實現弓箭拉伸的效果,弓箭旋轉,直接通過選中武器根節點的方向實現。

5

力度控制實現原理

根據觸摸的起始點和結束點,計算兩點之間的距離,力度控制邏輯,根據距離的長短,實現力度大小的控制,超過了最大力度,直接使用最大力度。

6

方向控制實現原理

遊戲需要,射出方向,由觸摸結束點,指向觸摸起始點,具體遊戲,可以根據需要修改。

640?wx_fmt=jpeg

640?wx_fmt=png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章