Edited at

setTouchEnabledがDeprecatedって言われたけどんじゃどうするんじゃい

More than 5 years have passed since last update.

正解:イベントリスナーを設定してあげる。

\パパーン/


TouchLayer.cpp

bool TouchLayer::init(){

//TouchOneByOneの他にTouchAllAtOne(複数タッチ)もあるお!
auto listener = EventListenerTouchOneByOne::create();
//でもAllAtOnceならonTouch"es"Beganになる。
listener->onTouchBegan = CC_CALLBACK_2(TouchLayer::onTouchBegan, this);
listener->onTouchMoved = CC_CALLBACK_2(TouchLayer::onTouchMoved, this);
listener->onTouchEnded = CC_CALLBACK_2(TouchLayer::onTouchEnded, this);

//cocos2d-x3.0からは見たまんまのタッチの優先度とかに設定できるから便利だよね。
this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, this);
}


なんかObjectiveCのprotocol作ってDelegate設定し直してるみたいな感じよね。ラムダ式とか

簡単な処理なら突っ込んでもできそうだけども。