欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

【cocos2d-x】橫向滾屏射擊游戲②----虛擬控制手柄-創(chuàng)新互聯

因為iOS,Android設備使用觸摸屏來輸入,沒有傳統移動游戲設備配備的按鈕,十字按鈕或者模擬手柄,我們需要一個虛擬手柄來控制游戲。你可以使用虛擬手柄對游戲物體進行操控,就像使用實際的手柄一樣。

我們提供的服務有:成都網站設計、成都做網站、外貿網站建設、微信公眾號開發(fā)、網站優(yōu)化、網站認證、黃南州ssl等。為成百上千企事業(yè)單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的黃南州網站制作公司

SneakyInput控制手柄源碼: 點我下載

把×××下來,加入到你的項目中,別忘了在android.mk添加相關內容哦!

我們首要目標是添加一個可以讓玩家進行飛船射擊的按鈕,他們點擊按鈕的時候 會發(fā)射×××,

----------------------

接下來  我會在項目中添加一個新的類InputLayer ,這個類繼承自CCLayer,他會被添加到MainScene

  1. CCScene *MainScene::scene() { 
  2. do
  3. while
  4. return

將SneakyInput添加到InputLayer的頭文件中

  1. #include "SneakyInput/SneakyButton.h"
  2. #include "SneakyInput/SneakyJoystick.h"
  3. #include "SneakyInput/SneakyButtonSkinnedBase.h"
  4. #include "SneakyInput/SneakyJoystickSkinnedBase.h"

另外,我在頭文件中加了一個SneakyButton成員變量,因為我們馬上就會用到。

  1. classpublic
  2. public
  3. virtual
  4. void
  5. bool

在init方法中 我們生成了一個SneakyButton

  1. bool
  2. boolfalse
  3. do
  4. float
  5. new
  6. this
  7. this
  8. true
  9. while
  10. return

 因為SneakyButton沒有用到initWithRect方法中的CGRect參數,所以我傳了一個CGRectZero給這個方法。實際的處理觸摸事件的代碼是使用radius(半徑)這個屬性來決定按鈕是否要響應觸摸。

InputLayer類通過以下代碼預約更新

  1. this

更新方法是用來測試按鈕是否已被點擊

  1. void
  2. if
  3. "按下按鈕"

運行程序,你會發(fā)現屏幕上沒有任何按鈕  不過你可以點擊屏幕右下角 然后可以在log日志中正在打印“按下按鈕”


接下來  我們將讓按鈕可見,也就是添加皮膚

 這里 我們使用到了SneakyButtonSkinnedBase

  1. bool
  2. boolfalse
  3. do
  4. float
  5. new
  6. //      這個屬性可以讓玩家按住按鈕不放的時候,×××會持續(xù)地射擊出去
  7. true
  8. //默認狀態(tài)
  9. "nor.png"
  10. //點擊狀態(tài)
  11. "tou.png"
  12. //激活狀態(tài)
  13. "tou.png"
  14. this
  15. this
  16. true
  17. while
  18. return
  我們不需要設置按鈕的半徑屬性了,因為SneakyButtonSkinnedBase類會使用提供的按鈕圖片來確定按鈕半徑的大小

控制動作

接下來我們在游戲中添加搖桿

  1. bool
  2. boolfalse
  3. do
  4. float
  5. new
  6. //      決定虛擬手柄的半徑大小
  7. //自動回到中心
  8. true
  9. //是否支持死亡區(qū)域,該區(qū)域不會觸發(fā)
  10. true
  11. //死亡區(qū)域的半徑
  12. //搖桿的背景圖
  13. "handle1.png"
  14. //搖桿的圖片
  15. "handle2.png"
  16. this
  17. this
  18. true
  19. while
  20. return

 完成搖桿的添加  接下來要實現搖桿事件的監(jiān)聽

  1. void
  2. //  getVelocity()到的數值很小 需要放大  800是估算的
  3. if
  4. "x=%f,y=%f"


接下來一章將開發(fā)一個小游戲,如有問題,請?zhí)岢?/p>

本教程根據Cocos2d教程翻譯過來

使用的cocos2d-x版本為2.02

另外有需要云服務器可以了解下創(chuàng)新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

本文名稱:【cocos2d-x】橫向滾屏射擊游戲②----虛擬控制手柄-創(chuàng)新互聯
文章位置:http://www.chinadenli.net/article6/dishig.html

成都網站建設公司_創(chuàng)新互聯,為您提供品牌網站制作網站策劃微信小程序網站建設自適應網站搜索引擎優(yōu)化

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

手機網站建設