bool RogueScene::init() {
... 省略 ...
auto foreground_player_listener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND_ROGUE, [actorSprite](EventCustom* event){
CCLOG("event! EVENT_COME_TO_FOREGROUND_ROGUE actorSprite");
// 左向け左!
actorSprite->runLeftAction();
});
this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(foreground_player_listener, actorSprite);
... 省略 ...
}
結果はこうなります。
thisのRogueSceneにactorSpriteがaddされているの親のSceneのイベントが最後に制御されます。
cocos2d: event! EVENT_COME_TO_FOREGROUND_ROGUE actorSprite
cocos2d: event! EVENT_COME_TO_FOREGROUND_ROGUE this