91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

cocos2dx番外篇——虛擬搖桿

發布時間:2020-07-25 21:42:14 來源:網絡 閱讀:4173 作者:shahdza 欄目:開發技術

【嘮叨】

    如果手機設備沒有手柄、鍵盤的話,就只能靠觸摸屏幕來操作游戲了。

    虛擬搖桿的作用就是在游戲中創建幾個按鍵來模擬手柄,通過觸控來實現上下左右的移動,以及***、跳躍、發大招等操作。

    如下所示,有一個移動的虛擬搖桿,以及一個A鍵。

cocos2dx番外篇——虛擬搖桿

    

    已有開源的SneakyInput虛擬搖桿,開源地址:https://github.com/Ntran013/SneakyInput

    而這里博主則是將開源的SneakyInput進一步的修改,方便博主自身的使用。


【demo下載】

    https://github.com/shahdza/Cocos_LearningTest/tree/master/%E8%99%9A%E6%8B%9F%E6%91%87%E6%9D%86SneakyInput 




【虛擬搖桿】


1、說明

    SneakyInput是一個開源的項目,而我們只需要修改搖桿使用的圖片、按鈕圖片,以及位置即可。

    所以,只要修改Sneaky類中標注的 "//-- need modify start --" 部分,將虛擬搖桿的按鈕圖片改成你自己的圖片即可。


2、使用方法

    (1)將 Sneaky.h 頭文件包含到你的Game.h類中

    (2)在 Game.cpp 的初始化函數 init()里添加虛擬搖桿即可。

                Sneaky* sneaky = new Sneaky();

                this->addChild(sneaky,1,999);

    (3)移動和按鈕一般在游戲Game類的update()中進行。

    (4)移動:

            //獲得方向向量,dv為標準化向量,即長度為1.

            CCPoint dv = sneaky->joystick->getVelocity();

            //人物移動

            sp->setPosition( sp->getPosition() + dv );

    (5)按鈕:

            //判斷按鈕A是否被按下

            sneaky->buttonA->getIsActive()


3、代碼舉例

//
	bool flag = false; //是否在執行按鍵動作
	void Game::update(float dt) {
	
		CCNode* sp = this->getChildByTag(1);
		
		//移動
		int movespeed = 2;
		CCPoint dv = sneaky->joystick->getVelocity();
		sp->setPosition( sp->getPosition() + dv*movespeed );
		
		//按鍵
		if(sneaky->buttonA->getIsActive() && !flag ) {
			CCJumpBy* jump = CCJumpBy::create(0.5f,ccp(0,0),100,1); //原地跳躍
			CCCallFunc* func = CCCallFunc::create(this,callfunc_selector(Game::setFlag));
			sp->runAction( CCSequence::create(jump, func, NULL) );
			flag = true;
		}
	}
	void Game::setFlag() { flag = false; }
//



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

论坛| 阳信县| 安福县| 绿春县| 镇安县| 余庆县| 靖远县| 河西区| 瑞丽市| 宁乡县| 江都市| 大理市| 三门县| 鲜城| 东山县| 乌恰县| 淅川县| 尖扎县| 全南县| 贵港市| 卓资县| 资兴市| 榕江县| 吕梁市| 呼伦贝尔市| 五河县| 娄底市| 凉山| 登封市| 资中县| 临澧县| 漯河市| 东台市| 长岭县| 丹阳市| 河北省| 武威市| 南和县| 涟源市| 巴里| 苍山县|