bool CheckBox::init(const std::string& backGround, const std::string& backGroundSeleted, const std::string& cross, const std::string& backGroundDisabled, const std::string& frontCrossDisabled, TextureResType texType) { bool ret = true; do { if (!Widget::init()) { ret = false; break; } setSelectedState(false); setTouchEnabled(true); loadTextures(backGround, backGroundSeleted, cross, backGroundDisabled, frontCrossDisabled,texType); } while (0); return ret; }
wyButton::wyButton(wyNode* normal, wyNode* selected, wyNode* disabled, wyNode* focused, wyTargetSelector* downSelector, wyTargetSelector* upSelector) : m_clickScale(1.f), m_originalScale(0.f), m_normalState(NULL), m_selectedState(NULL), m_disabledState(NULL), m_focusedState(NULL) { setNormalState(normal); setSelectedState(selected); setDisabledState(disabled); setFocusedState(focused); setDownSelector(downSelector); setUpSelector(upSelector); float width = 0; float height = 0; if (normal != NULL) { width = normal->getWidth(); height = normal->getHeight(); } if (selected != NULL) { width = MAX(selected->getWidth(), width); height = MAX(selected->getHeight(), height); } if (disabled != NULL) { width = MAX(disabled->getWidth(), width); height = MAX(disabled->getHeight(), height); } if (focused != NULL) { width = MAX(focused->getWidth(), width); height = MAX(focused->getHeight(), height); } setContentSize(width, height); setTouchEnabled(true); }
bool StartScene::init(){ if(!Layer::init()){ return false; } auto simple = SimpleAudioEngine::getInstance(); auto uilayer = GUIReader::getInstance()->widgetFromJsonFile("startUI/Start.json"); this->addChild(uilayer); auto btnStart = dynamic_cast<Button *>(uilayer->getChildByName("btn_start")); btnStart->addTouchEventListener([](Ref* ref,Widget::TouchEventType t){ if (t == Widget::TouchEventType::ENDED) { Director::getInstance()->replaceScene(SelectLayer::createScene()); SimpleAudioEngine::getInstance()->playEffect("Music/btnOver.mp3"); } }); // button start game auto btnExit = dynamic_cast<Button *>(uilayer->getChildByName("btn_exit")); btnExit->addTouchEventListener([](Ref* ref,Widget::TouchEventType t){ if (t == Widget::TouchEventType::ENDED) { SimpleAudioEngine::getInstance()->playEffect("Music/btnOver.mp3"); Director::getInstance()->end(); } });//exit game auto btnHelp = dynamic_cast<Button *>(uilayer->getChildByName("help")); btnHelp->addTouchEventListener([=](Ref* ref,Widget::TouchEventType t){ if (t == Widget::TouchEventType::BEGAN) { Director::getInstance()->replaceScene(LevelLayer::createScene()); } }); auto instance = SimpleAudioEngine::getInstance(); auto check = dynamic_cast<CheckBox*> (uilayer->getChildByName("music_check")); auto isMusicON = UserDefault::getInstance()->getBoolForKey("isMusicON",true); instance->playBackgroundMusic("Music/battle1.mp3",true); if (isMusicON) { check->setSelectedState(false); } else { check->setSelectedState(true); instance->pauseBackgroundMusic(); instance->setEffectsVolume(0.0f); } check->addEventListener([=](Ref* r,CheckBox::EventType t){ if (t == CheckBox::EventType::SELECTED) { UserDefault::getInstance()->setBoolForKey("isMusicON",false); // SimpleAudioEngine::getInstance()->stopAllEffects(); SimpleAudioEngine::getInstance()->pauseBackgroundMusic(); instance->setEffectsVolume(0.0f); }else { UserDefault::getInstance()->setBoolForKey("isMusicON",true); SimpleAudioEngine::getInstance()->setEffectsVolume(1.0f); SimpleAudioEngine::getInstance()->resumeBackgroundMusic(); } }); auto money = GameManager::getInstance()->getStageMoney(); log("%d................",money); return true; }