// // AniPickLevelScene.cpp // SteveMaggieCpp // // Created by Katarzyna Kalinowska-Górska on 16.05.2017. // // #include "AniPickLevelScene.h" #include "AniPlainLabel.h" #include "AniSoundsRepo.h" AniPickLevelScene* AniPickLevelScene::create(std::string layoutFilePath) { AniPickLevelScene* scene = new (std::nothrow) AniPickLevelScene(); if(scene && scene->init(layoutFilePath)) { scene->autorelease(); return scene; } CC_SAFE_DELETE(scene); return nullptr; } bool AniPickLevelScene::init(std::string layoutFilePath){ if(!AniParentScene::initWithConfigurationFiles(layoutFilePath)){ return false; } return true; } void AniPickLevelScene::onEnter(){ AniParentScene::onEnter(); showTOSAcceptPopup([&](){ isShowingLevelPicker = true; showAniLevelPickerLayer([&]{ stopAllActions(); AniSoundsRepo::preloadAllTutorialGameSounds(); AniSoundsRepo::preloadAllLoadedSoundEffects(); gameStaticCreator.preloadGameResources([&](std::vector){ cocos2d::Director::getInstance()->replaceScene(gameStaticCreator.createGameScene()); }); }, [&](int level){ //TODO handle level change if necessary }); auto pickLevelSoundInfo = AniSoundsRepo::pickLevelSound(); runAction(cocos2d::Sequence::create(cocos2d::CallFunc::create(std::bind([&](std::string pickLevelSoundPath){ AniSoundsRepo::playSound(pickLevelSoundPath); repeatPickLevelPrompt(); },pickLevelSoundInfo.filePath)), nullptr)); }); } //bool AniPickLevelScene::touchHandlerForWidget(std::string objectName, cocos2d::ui::Widget::TouchEventType touchEventType) //{ // /*if(objectName == "settingsButton" && touchEventType == cocos2d::ui::Widget::TouchEventType::ENDED){ // if(!gameState->settingsMenuShown){ // showSettingsMenu(); // } else { // if(settingsMenu->isShowingParentalGate()){ // settingsMenu->hideParentalGate(); // } else { // settingsMenu->hideParentalGate(); // in case showing parental gate is in progress... // hideSettingsMenu(); // replayGame(); // } // } // } else*/ if(objectName == "replayButton" && touchEventType == cocos2d::ui::Widget::TouchEventType::ENDED){ // replayGame(); // return true; // } // // return false; //}