CCSprite* CreditsScreen::createPerson(const std::string& name, const std::string& twitterLink, const std::string& fbLink) { const float iconSize = 32; bool useTwitter = !twitterLink.empty(); bool useFB = !fbLink.empty(); CCSprite* person = CCSprite::create(); CCLabelTTF* nameLabel = CCLabelTTF::create(name.c_str(), default_font.c_str(), FONT_SIZE_PERSON); nameLabel->setPositionX(nameLabel->getContentSize().width / 2); float totalWidth = nameLabel->getContentSize().width; float totalHeight = MAX(nameLabel->getContentSize().height, iconSize); if(useTwitter || useFB){ totalWidth += PADDING_AFTER_NAME; } if(useTwitter){ totalWidth += iconSize + PADDING_PERSON; urls.push_back(twitterLink); Button* twitterButton = ButtonFactory::imageButton(TWITTER_ICON_INACTIVE, TWITTER_ICON_PRESSED, new Handler(this, callfuncD_selector(CreditsScreen::openURL), (void*)(urls.size() - 1)), BUTTON_PRIORITY); twitterButton->setPositionX(nameLabel->getPositionX() + totalWidth - iconSize - nameLabel->getContentSize().width/2); twitterButton->setPositionY(totalHeight / 2); person->addChild(twitterButton); } if(useFB) { totalWidth += iconSize + PADDING_PERSON; urls.push_back(fbLink); Button* fbButton = ButtonFactory::imageButton(FB_ICON_INACTIVE, FB_ICON_PRESSED, new Handler(this, callfuncD_selector(CreditsScreen::openURL), (void*)(urls.size() - 1)), BUTTON_PRIORITY); fbButton->setPositionX(nameLabel->getPositionX() + totalWidth - iconSize - nameLabel->getContentSize().width/2); fbButton->setPositionY(totalHeight / 2); person->addChild(fbButton); } person->setContentSize(CCSizeMake(totalWidth, totalHeight)); nameLabel->setPositionY(totalHeight / 2); person->addChild(nameLabel); return person; }
void GameLayer::_showAudioPlaying() { CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin(); CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCSize winSize = CCDirector::sharedDirector()->getWinSize(); CCLabelTTF* lblMusic = CCLabelTTF::create(CCString::createWithFormat("Playing %s", _music.description)->getCString(), FONT_GAME, 35.0f, CCSizeMake(winSize.width * 0.85f, winSize.height * 0.15f), kCCTextAlignmentRight, kCCVerticalTextAlignmentTop); lblMusic->setPositionX(origin.x + visibleSize.width * 0.55f); lblMusic->setPositionY(origin.y - visibleSize.height * 0.25f); CCMoveTo* ac1 = CCMoveTo::create(1.0f, ccp(lblMusic->getPositionX(), origin.y + visibleSize.height * 0.05f)); CCDelayTime* ac2 = CCDelayTime::create(2.1f); CCFadeOut* ac3 = CCFadeOut::create(0.9f); CCCallFuncN* ac4 = CCCallFuncN::create(this, callfuncN_selector(GameLayer::_removeNode)); addChild(lblMusic, kDeepGameFinish); lblMusic->runAction(CCSequence::create(ac1, ac2, ac3, ac4, NULL)); SimpleAudioEngine::sharedEngine()->playBackgroundMusic(_music.bg_music, true); }
void IOSStoreLayer::setLeftBgString(const char* charString) { if (CCNode* pnode = m_pKaibaoxiangNode->getChildByTag(leftbg_tag)) { CCLabelTTF* pLable = (CCLabelTTF*)pnode->getChildByTag(leftbg_string_tag); if (pLable) { pLable->setString(charString); if (m_enumComeFrom == from_SeasonSelector) { pLable->setPosition(ccp(pLable->getPositionX(), 198)); } else if (m_enumComeFrom == from_MarketStore) { pLable->setPosition(ccp(pLable->getPositionX(), 188)); } } } }
void AchievementNotification::showImmediately(Achievement a) { mShowing = true; CCTexture2D* tex = CCTextureCache::sharedTextureCache()->textureForKey(fileName.c_str()); if (tex == NULL) { tex = CCTextureCache::sharedTextureCache()->addImage(fileName.c_str()); } CCSize winSize = CCDirector::sharedDirector()->getWinSize(); CCScale9Sprite* pBoard = CCScale9Sprite::create(CCRectMake(tex->getContentSize().width/2, 0, 2, tex->getContentSize().height), fileName.c_str()); addChild(pBoard,0,Tag_Board); pBoard->setPosition(ccp(winSize.width/2,winSize.height + pBoard->getContentSize().height) ); CCSprite* pJinBei = CCSprite::create(ResManager::getManager()->getFilePath(g_public+"CJ_icon_jiangbei.png").c_str()); pBoard->addChild(pJinBei, 1); pJinBei->setPosition(ccp(pJinBei->getContentSize().width, pBoard->getContentSize().height/2)); CCLabelTTF* pName = CCLabelTTF::create(a.name.c_str(), fontStr_KlavikaBold, 40); pName->setColor(fontColor_Acheivement_TTF); CCSprite* pIcon = CCSprite::create(ResManager::getManager()->getFilePath(g_public+"CJ_icon_wancheng.png").c_str()); int x = pName->getContentSize().width + pIcon->getContentSize().width - 420; if (x > 0) { pBoard->setContentSize(ccp(pBoard->getContentSize().width+x, pBoard->getContentSize().height)); } pBoard->addChild(pName); int xoffset = 10; pName->setPosition(ccp(pBoard->getContentSize().width/2 + pIcon->getContentSize().width/2 + xoffset, pBoard->getContentSize().height/2)); pBoard->addChild(pIcon); pIcon->setPosition(ccp(pName->getPositionX() - pName->getContentSize().width/2 - pIcon->getContentSize().width/2 - xoffset, pName->getPositionY())); Achievement* achievementCopy = new Achievement(a); // *achievementCopy = a; temp_Must_Delete.insert(temp_Must_Delete.end(),achievementCopy); pBoard->runAction(CCSequence::create( CCMoveTo::create(0.5f,ccp(pBoard->getPositionX(),winSize.height-pBoard->getContentSize().height/2)), CCDelayTime::create(0.1f), CCCallFuncND::create(this,SEL_CallFuncND(&AchievementNotification::boardShowing),achievementCopy), CCDelayTime::create(1.3f), CCMoveTo::create(0.2f,ccp(pBoard->getPositionX(),winSize.height+pBoard->getContentSize().height)), CCFadeTo::create(0.1f,0), CCCallFuncN::create(this,SEL_CallFuncN(&AchievementNotification::boardShowEnd)),NULL)); createPar(ccp(winSize.width/2,winSize.height),parFileName.c_str(),pBoard->getContentSize().width * 1.2f,pBoard->getContentSize().height); Music::sharedMusicPlayer()->playEffectSound("achievement.wav"); CCLog("AchievementNotification::showImmediately name = %s" ,a.name.c_str()); }
void MailListTile::setSystemMail(Email mail) { m_sSystemMail = mail; string biaotiImg[5] = {"denglujiangli_langtiao.png","denglujiangli_langtiao.png","denglujiangli_hongtiao.png","denglujiangli_hangtiao.png","denglujiangli_zitiao.png"}; string titleStr[5] = {LFStrings::getValue("XiTongJiangli"),LFStrings::getValue("XiTongBuChang"),LFStrings::getValue("XiTongTongZhi"),LFStrings::getValue("HaoYouShenQing"),LFStrings::getValue("HaoYouShanChu")}; CCSprite *bgSpr = CCSprite::create("denglujiangli_jinri_bg.png"); bgSpr->setAnchorPoint(CCPointZero); CCPoint pos; pos.x = 5; pos.y = 0; bgSpr->setPosition(pos); addChild(bgSpr,-1); m_sBgSpr = bgSpr; int side = 10; this->setContentSize(bgSpr->getContentSize()); {//标题 CCSprite *titleSpr = CCSprite::create(biaotiImg[mail.type].c_str()); titleSpr->setPosition(ccp(bgSpr->getContentSize().width / 2,bgSpr->getContentSize().height - titleSpr->getContentSize().height / 2)); bgSpr->addChild(titleSpr); CCLabelTTF *titleTTF = CCLabelTTF::create(titleStr[mail.type].c_str(),fontStr_kaiti,20.0f); titleTTF->setPosition(titleSpr->getPosition()); bgSpr->addChild(titleTTF); titleTTF->setColor(ccWHITE); string info; if (mail.summary.length() > 1) { info = mail.summary; } else { info = mail.content; } //内容 switch (mail.type) { case 0: case 1: { CCLabelTTF *ttf = CCLabelTTF::create(info.c_str(),fontStr_kaiti,20.0f); ttf->setAnchorPoint(ccp(0,1.0f)); ttf->setPosition(ccp(ttf->getContentSize().height ,bgSpr->getContentSize().height - titleSpr->getContentSize().height - side)); ttf->setDimensions(CCSizeMake(bgSpr->getContentSize().width - 2 * ttf->getContentSize().height,bgSpr->getContentSize().height - titleSpr->getContentSize().height)); ttf->setHorizontalAlignment(kCCTextAlignmentLeft); bgSpr->addChild(ttf); ttf->setColor(m_cTTFColor); if (mail.is_read) { CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_shanchu.png","youxiang_anniu_shanchu_select.png","youxiang_anniu_shanchu_select.png",this,SEL_MenuHandler(&MailListTile::selectDelete)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); CCSprite *koSpr = CCSprite::create("jingjichang_wanjiazhuangtailan_ko.png"); koSpr->setPosition(ccp(bgSpr->getContentSize().width - koSpr->getContentSize().width / 2 - menuItem->getContentSize().width, 20 + koSpr->getContentSize().height / 2)); bgSpr->addChild(koSpr); } else { CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_xiangqing.png","youxiang_anniu_xiangqing_select.png","youxiang_anniu_xiangqing_select.png",this,SEL_MenuHandler(&MailListTile::selectCheckInfo)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); } } break; case 2: { CCLabelTTF *ttf = CCLabelTTF::create(info.c_str(),fontStr_kaiti,20.0f); ttf->setAnchorPoint(ccp(0,1.0f)); ttf->setPosition(ccp(ttf->getContentSize().height ,bgSpr->getContentSize().height - titleSpr->getContentSize().height - side)); ttf->setDimensions(CCSizeMake(bgSpr->getContentSize().width - 2 * ttf->getContentSize().height,bgSpr->getContentSize().height - titleSpr->getContentSize().height)); ttf->setHorizontalAlignment(kCCTextAlignmentLeft); bgSpr->addChild(ttf); ttf->setColor(m_cTTFColor); if (mail.is_read) { CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_xiangqing.png","youxiang_anniu_xiangqing_select.png","youxiang_anniu_xiangqing_select.png",this,SEL_MenuHandler(&MailListTile::selectCheckInfo)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide * 2 - menuItem->getContentSize().width,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); CCMenuItemImage *menuItem2 = CCMenuItemImage::create("youxiang_anniu_shanchu.png","youxiang_anniu_shanchu_select.png","youxiang_anniu_shanchu_select.png",this,SEL_MenuHandler(&MailListTile::selectDelete)); menuItem2->setTag(mail.email_id); menuItem2->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem2->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem2->getContentSize().height / 2)); m_mMenu->addChild(menuItem2); } else { CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_xiangqing.png","youxiang_anniu_xiangqing_select.png","youxiang_anniu_xiangqing_select.png",this,SEL_MenuHandler(&MailListTile::selectCheckInfo)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); } } break; case 3: { CCLabelTTF *ttf = CCLabelTTF::create(CCString::createWithFormat("%s",mail.addresserName.c_str())->getCString(),fontStr_kaiti,20.0f); ttf->setAnchorPoint(ccp(0,1.0f)); ttf->setPosition(ccp(ttf->getContentSize().height ,bgSpr->getContentSize().height - titleSpr->getContentSize().height - side)); //ttf->setDimensions(CCSizeMake(bgSpr->getContentSize().width - 2 * ttf->getContentSize().height,bgSpr->getContentSize().height - titleSpr->getContentSize().height)); ttf->setHorizontalAlignment(kCCTextAlignmentLeft); bgSpr->addChild(ttf); CCLabelTTF *ttf2 = CCLabelTTF::create(CCString::createWithFormat("%s",info.c_str())->getCString(),fontStr_kaiti,20.0f); ttf2->setAnchorPoint(ccp(0,1.0f)); ttf2->setPosition(ccp(ttf->getPositionX() + ttf->getContentSize().width ,ttf->getPositionY())); ttf2->setDimensions(CCSizeMake(bgSpr->getContentSize().width - ttf->getPositionX() - ttf->getContentSize().width ,ttf->getPositionY())); ttf2->setHorizontalAlignment(kCCTextAlignmentLeft); bgSpr->addChild(ttf2); ttf2->setColor(m_cTTFColor); if (ttf->getContentSize().height == 0) { ttf2->setPosition(ccp(30.0f ,ttf->getPositionY())); } if (mail.is_read) { CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_shanchu.png","youxiang_anniu_shanchu_select.png","youxiang_anniu_shanchu_select.png",this,SEL_MenuHandler(&MailListTile::selectDelete)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); } else { CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_jieshou.png","youxiang_anniu_jieshou_select.png","youxiang_anniu_jieshou_select.png",this,SEL_MenuHandler(&MailListTile::selectOK)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide * 2 - menuItem->getContentSize().width,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); CCMenuItemImage *menuItem2 = CCMenuItemImage::create("youxiang_anniu_jujue.png","youxiang_anniu_jujue_select.png","youxiang_anniu_jujue_select.png",this,SEL_MenuHandler(&MailListTile::selectCancel)); menuItem2->setTag(mail.email_id); menuItem2->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem2->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem2->getContentSize().height / 2)); m_mMenu->addChild(menuItem2); } } break; case 4: { CCLabelTTF *ttf = CCLabelTTF::create(CCString::createWithFormat("%s",info.c_str())->getCString(),fontStr_kaiti,20.0f); ttf->setAnchorPoint(ccp(0,1.0f)); ttf->setPosition(ccp(ttf->getContentSize().height ,bgSpr->getContentSize().height - titleSpr->getContentSize().height - side)); ttf->setDimensions(CCSizeMake(bgSpr->getContentSize().width - 2 * ttf->getContentSize().height,bgSpr->getContentSize().height - titleSpr->getContentSize().height)); ttf->setHorizontalAlignment(kCCTextAlignmentLeft); bgSpr->addChild(ttf); ttf->setColor(ccRED); CCMenuItemImage *menuItem = CCMenuItemImage::create("youxiang_anniu_shanchu.png","youxiang_anniu_shanchu_select.png","youxiang_anniu_shanchu_select.png",this,SEL_MenuHandler(&MailListTile::selectDelete)); menuItem->setTag(mail.email_id); menuItem->setPosition(ccp(bgSpr->getPositionX() + bgSpr->getContentSize().width - menuItem->getContentSize().width / 2 - m_nSide,pos.y + m_nSide + menuItem->getContentSize().height / 2)); m_mMenu->addChild(menuItem); } break; default: break; } } }
CCTableViewCell* FriendList::tableCellAtIndex(CCTableView *table, unsigned int idx) { EziFacebookFriend* friendDetails = (EziFacebookFriend*)mFriendList->objectAtIndex(idx); std::string friendID = friendDetails->getFBID(); std::string friendName = friendDetails->getName(); std::string installed = ""; std::string score = ""; CCSprite* profilePic = NULL; // Set the score. long mylong = friendDetails->getScore(); std::stringstream mystream; mystream << mylong; score = mystream.str(); // Set the install status if (friendDetails->isInstalled()) { installed = "Installed"; } else { installed = "Not Installed"; } CCTableViewCell *cell = table->dequeueCell(); if (!cell) // Creation of Cell. { cell = new CCTableViewCell(); cell->autorelease(); CCLayerColor* colorLayer = CCLayerColor::create(ccc4(20, 0, 40, 255), SCREEN_WIDTH, CELL_HEIGHT); cell->addChild(colorLayer); CCSprite *sprite = NULL; if (strcmp(friendDetails->getPhotoPath(), "") != 0) { const char* picPath = friendDetails->getPhotoPath(); sprite = CCSprite::create(picPath); } else { sprite = CCSprite::create(FB_DEFAULT_PHOTO); } if (sprite == NULL) { CCLOG("Sprite is NULL"); } sprite->setAnchorPoint(ccp(0, 0.5)); sprite->setPosition(ccp(20, CELL_HEIGHT/2)); cell->addChild(sprite); //sprite->setScale(0.9); sprite->setTag(FRIEND_PHOTO_TAG); // Friend Facebook ID CCLabelTTF *friendIDLabel = CCLabelTTF::create(friendID.c_str(), "Helvetica", 20.0 * MENU_FONT_SCALE); float gapY = (CELL_HEIGHT - (friendIDLabel->getContentSize().height * 2)) / 3; if (sprite) { friendIDLabel->setPosition(ccp(sprite->getPositionX() + sprite->getContentSize().width + 20, CELL_HEIGHT - gapY)); } friendIDLabel->setAnchorPoint(ccp(0, 1)); friendIDLabel->setTag(FRIEND_ID_LABEL_TAG); cell->addChild(friendIDLabel); // Friend Facebook Name CCLabelTTF *friendNameLabel = CCLabelTTF::create(friendName.c_str(), "Helvetica", 20.0 * MENU_FONT_SCALE); friendNameLabel->setPosition(ccp(friendIDLabel->getPositionX(), friendIDLabel->getPositionY() - friendIDLabel->getContentSize().height - gapY)); friendNameLabel->setAnchorPoint(ccp(0, 1)); friendNameLabel->setTag(FRIEND_NAME_LABEL_TAG); cell->addChild(friendNameLabel); // High Score CCLabelTTF *scoreLabel = CCLabelTTF::create(score.c_str(), "Helvetica", 20.0 * MENU_FONT_SCALE); scoreLabel->setPosition(ccp(SCREEN_WIDTH - 20, friendIDLabel->getPositionY())); scoreLabel->setAnchorPoint(ccp(1, 1)); scoreLabel->setTag(FRIEND_SCORE_LABEL_TAG); cell->addChild(scoreLabel); // Installed String CCLabelTTF *installedLabel = CCLabelTTF::create(installed.c_str(), "Helvetica", 20.0 * MENU_FONT_SCALE); installedLabel->setPosition(ccp(SCREEN_WIDTH - 20, friendNameLabel->getPositionY())); installedLabel->setAnchorPoint(ccp(1, 1)); installedLabel->setTag(FRIEND_INSTALLED_LABEL_TAG); cell->addChild(installedLabel); } else { // Set the Friend ID CCLabelTTF *friendIDLabel = (CCLabelTTF*)cell->getChildByTag(FRIEND_ID_LABEL_TAG); friendIDLabel->setString(friendID.c_str()); // Set the Friend Name CCLabelTTF *friendNameLabel = (CCLabelTTF*)cell->getChildByTag(FRIEND_NAME_LABEL_TAG); friendNameLabel->setString(friendName.c_str()); CCLabelTTF *highScoreLabel = (CCLabelTTF*)cell->getChildByTag(FRIEND_SCORE_LABEL_TAG); if (highScoreLabel != NULL) { highScoreLabel->setString(score.c_str()); } highScoreLabel->setVisible(mEnableHighScoreDisplay); CCLabelTTF *installedLabel = (CCLabelTTF*)cell->getChildByTag(FRIEND_INSTALLED_LABEL_TAG); if (installedLabel != NULL) { installedLabel->setString(installed.c_str()); } installedLabel->setVisible(mEnableInstalledDisplay); CCSprite* cellProfilePic = (CCSprite*)cell->getChildByTag(FRIEND_PHOTO_TAG); if (strcmp("", friendDetails->getPhotoPath()) != 0 ) { const char* picPath = friendDetails->getPhotoPath(); profilePic = CCSprite::create(picPath); } else { profilePic = CCSprite::create(FB_DEFAULT_PHOTO); } cellProfilePic->setTexture(profilePic->getTexture()); } return cell; }
bool HelpLayer::init(){ ////////////////////////////// // 1. super init first if (!CCLayer::init()){ return false; } CCScale9Sprite *pBackground = CCScale9Sprite::create("Dialog_bg.png"); pBackground->setAnchorPoint(ccp(0.5f,0.5f)); CCSize frameSize = CCEGLView::sharedOpenGLView()->getFrameSize(); float scale = frameSize.width / DESIGN_WIDTH; float newScaleY = 1.0f; if (scale > 0){ float scaleY = frameSize.height / DESIGN_HEIGHT; if (scaleY > scale){ newScaleY = scaleY / scale; } } pBackground->setPreferredSize(CCSizeMake(DESIGN_WIDTH - 20,(DESIGN_HEIGHT - 130) * newScaleY)); CCSize size = pBackground->getContentSize(); pBackground->setPosition(VisibleRect::center()); addChild(pBackground); CCSprite *pTitleBgSp = CCSprite::create("Dialog_Title.png"); pTitleBgSp->setPosition(ccp(pBackground->getPositionX(),pBackground->getPositionY() + pBackground->getContentSize().height / 2)); addChild(pTitleBgSp); CCSprite *pTitleSp = CCSprite::create("Title_Help.png"); pTitleSp->setPosition(ccp(pTitleBgSp->getPositionX(),pTitleBgSp->getPositionY() + pTitleSp->getContentSize().height / 2 + 5)); addChild(pTitleSp); CCSprite *pItemNormal = CCSprite::create("cancel_s.png"); CCSprite *pItemSelected = CCSprite::create("cancel_s.png"); CCMenuItem *pClose = CCMenuItemSprite::create(pItemNormal, pItemSelected, this, menu_selector(HelpLayer::close)); pClose->setPosition(ccp(pTitleSp->getPositionX() + pTitleSp->getContentSize().width * 3 / 2, pTitleSp->getPositionY())); pItemSelected->setScale(1.1f); pItemSelected->setAnchorPoint(ccp(0.05f, 0.05f)); CCMenu *pMenu = CCMenu::create(pClose, NULL); pMenu->setPosition(CCPointZero); addChild(pMenu, 1); CCDictionary *text = CCDictionary::createWithContentsOfFile(XML_DATA); CCString *msg = (CCString*)text->objectForKey("rule"); CCLabelTTF *msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 21,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(pTitleBgSp->getPositionX(),pTitleBgSp->getPositionY() - pTitleBgSp->getContentSize().height / 2 - msgLabel->getContentSize().height / 2 - 5)); addChild(msgLabel); CCSprite *phSp = CCSprite::create("Help_1.png"); phSp->setPosition(ccp(msgLabel->getPositionX(),msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - phSp->getContentSize().height / 2 - 3)); addChild(phSp); msg = (CCString*)text->objectForKey("scoreTips"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 21,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentCenter); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(phSp->getPositionX(),phSp->getPositionY() - phSp->getContentSize().height / 2 - msgLabel->getContentSize().height / 2 - 10)); addChild(msgLabel); phSp = CCSprite::create("Help_2.png"); phSp->setPosition(ccp(msgLabel->getPositionX(),msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - phSp->getContentSize().height / 2 - 3)); addChild(phSp); msg = (CCString*)text->objectForKey("pro"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 21,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + msgLabel->getContentSize().width / 2 + 10, phSp->getPositionY() - phSp->getContentSize().height / 2 - msgLabel->getContentSize().height / 2 - 3)); addChild(msgLabel); CCSprite* bombSp = CCSprite::create("Props_Bomb.png"); bombSp->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + bombSp->getContentSize().width / 2 + 10, msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - bombSp->getContentSize().height / 2 - 3)); addChild(bombSp); msg = (CCString*)text->objectForKey("bomb"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 18,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(bombSp->getPositionX() + bombSp->getContentSize().width / 2 + msgLabel->getContentSize().width / 2 + 5, bombSp->getPositionY() + 13)); addChild(msgLabel); msg = (CCString*)text->objectForKey("useCoin"); CCString *showUseString = CCString::createWithFormat(msg->getCString(),GameData::getInstance()->m_nBombUseCoin); CCLabelTTF *showUseLabel = CCLabelTTF::create(showUseString->getCString(), "Arial", 14,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); showUseLabel->setColor(ccc3(0,0,0)); showUseLabel->setPosition(ccp(bombSp->getPositionX() + bombSp->getContentSize().width / 2 + showUseLabel->getContentSize().width / 2 + 5, msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - showUseLabel->getContentSize().height / 2 - 2)); addChild(showUseLabel); CCSprite *paintSp = CCSprite::create("Props_Paint.png"); paintSp->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + paintSp->getContentSize().width / 2 + 10, bombSp->getPositionY() - bombSp->getContentSize().height / 2 - paintSp->getContentSize().height / 2 - 10)); addChild(paintSp); msg = (CCString*)text->objectForKey("shua"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 18,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(paintSp->getPositionX() + paintSp->getContentSize().width / 2 + msgLabel->getContentSize().width / 2 + 5, paintSp->getPositionY() + 13)); addChild(msgLabel); msg = (CCString*)text->objectForKey("useCoin"); showUseString = CCString::createWithFormat(msg->getCString(),GameData::getInstance()->m_nPaintUseCoin); showUseLabel = CCLabelTTF::create(showUseString->getCString(), "Arial", 14,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); showUseLabel->setColor(ccc3(0,0,0)); showUseLabel->setPosition(ccp(paintSp->getPositionX() + paintSp->getContentSize().width / 2 + showUseLabel->getContentSize().width / 2 + 5, msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - showUseLabel->getContentSize().height / 2 - 2)); addChild(showUseLabel); CCSprite *rainSp = CCSprite::create("Props_Rainbow.png"); rainSp->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + rainSp->getContentSize().width / 2 + 10, paintSp->getPositionY() - paintSp->getContentSize().height / 2 - rainSp->getContentSize().height / 2 - 10)); addChild(rainSp); msg = (CCString*)text->objectForKey("zhuan"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 18,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(rainSp->getPositionX() + rainSp->getContentSize().width / 2 + msgLabel->getContentSize().width / 2 + 5, rainSp->getPositionY() + 13)); addChild(msgLabel); msg = (CCString*)text->objectForKey("useCoin"); showUseString = CCString::createWithFormat(msg->getCString(),GameData::getInstance()->m_nReflashUseCoin); showUseLabel = CCLabelTTF::create(showUseString->getCString(), "Arial", 14,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); showUseLabel->setColor(ccc3(0,0,0)); showUseLabel->setPosition(ccp(rainSp->getPositionX() + rainSp->getContentSize().width / 2 + showUseLabel->getContentSize().width / 2 + 5, msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - showUseLabel->getContentSize().height / 2 - 2)); addChild(showUseLabel); msg = (CCString*)text->objectForKey("quese"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 21,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + msgLabel->getContentSize().width / 2 + 10, rainSp->getPositionY() - rainSp->getContentSize().height / 2 - 25)); addChild(msgLabel); msg = (CCString*)text->objectForKey("phone"); showUseLabel = CCLabelTTF::create(msg->getCString(), "Arial", 21,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); showUseLabel->setColor(ccc3(0,0,0)); showUseLabel->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + showUseLabel->getContentSize().width / 2 + 10, msgLabel->getPositionY() - msgLabel->getContentSize().height / 2 - showUseLabel->getContentSize().height / 2 - 2)); addChild(showUseLabel); msg = (CCString*)text->objectForKey("qq"); msgLabel = CCLabelTTF::create(msg->getCString(), "Arial", 21,CCSizeMake(DESIGN_WIDTH - 40, 0),kCCTextAlignmentLeft); msgLabel->setColor(ccc3(0,0,0)); msgLabel->setPosition(ccp(pBackground->getPositionX() - pBackground->getContentSize().width / 2 + msgLabel->getContentSize().width / 2 + 10, showUseLabel->getPositionY() - showUseLabel->getContentSize().height / 2 - msgLabel->getContentSize().height / 2 - 2)); addChild(msgLabel); setPosition(ccp(0, -0.5 * getContentSize().height)); return true; }
void TanSuoLayer::menuItemClicked_TanSuo(CCObject *pSender) { int tag = ((CCMenuItem*)pSender)->getTag(); if (tag == Tag_MenuItem_YiJianTanSuo) { if (m_bIsJieFeng) { string infoStr = LFStrings::getValue("XuYaoJieFeng"); UnblockWarnDialog* pDlg = UnblockWarnDialog::create(infoStr); CCDirector::sharedDirector()->getRunningScene()->addChild(pDlg, 300); return; } if (MyselfManager::getManager()->getMyZhuJueData()->getVipLevel() < 3) { FXToast *layer = FXToast::create(LFStrings::getValue("XunBao_VipNeed")); CCDirector::sharedDirector()->getRunningScene()->addChild(layer); return; } m_bDiscoverAll = true; addObserver(callfuncO_selector(TanSuoLayer::rsp_tansuo), MSG_discoverRsp); mCmdHlp->cmdDiscover(m_bDiscoverAll); } else if (tag == Tag_MenuItem_TanSuo) { m_bDiscoverAll = false; addObserver(callfuncO_selector(TanSuoLayer::rsp_tansuo), MSG_discoverRsp); mCmdHlp->cmdDiscover(m_bDiscoverAll); } else if (tag == Tag_MenuItem_JieFen) { if (mDestroyCount >= m_nMaxCountDestroy) { m_bIsJieFeng = true; m_nSelectProId = -1; if (! EquipmentManager::getManager()->isSpareEnoughToSaveEquip(1)) { EquipBagNotEnoughDialog *layer = new EquipBagNotEnoughDialog; layer->showGoToFenJieDialog(); } CCSize visSize = CCDirector::sharedDirector()->getWinSize(); BaseSprite* dialog = BaseSprite::create("juqing_duihuakuang.png"); dialog->setPosition(ccp(visSize.width/2, visSize.height/2)); //label 提示 { /*CCLabelTTF* label = CCLabelTTF::create(LFStrings::getValue("XunBao_XuanZeHeroTiShi").c_str(), fontStr_kaiti, m_nFontSize, CCSize(425, 0), kCCTextAlignmentLeft); label->setAnchorPoint(ccp(0.5, 1)); label->setPosition(ccp(dialog->getContentSize().width/2, 250)); dialog->addChild(label, 1);*/ CCLabelTTF *title = CCLabelTTF::create(LFStrings::getValue("JieChuFengYin").c_str(),fontStr_kaiti,m_nFontSize); title->setAnchorPoint(ccp(0.5,1)); title->setPosition(ccp(dialog->getContentSize().width/2, 250)); dialog->addChild(title, 1); CCLabelTTF *chuanqi = CCLabelTTF::create(LFStrings::getValue("ChuanQiZhuangBei").c_str(),fontStr_kaiti,m_nFontSize); chuanqi->setAnchorPoint(ccp(0.5,1)); chuanqi->setPosition(ccp(title->getPositionX() - title->getContentSize().width / 2 + m_nFontSize * 7 + chuanqi->getContentSize().width / 2, 250)); dialog->addChild(chuanqi, 1); chuanqi->setColor(ccc3(235,106,12)); } { m_lMenuItemList.clear(); //mHeros = MyselfManager::getManager()->getTeamActors_ZhenShen(Actor_All, LF_UnLock); mHeros = MyselfManager::getManager()->getTeamActors_ZhenShen(Actor_ShangZheng, LF_UnLock); //tabel view CCTableView *tabelView = CCTableView::create(this, CCSizeMake(560, 158)); tabelView->setDirection(kCCScrollViewDirectionHorizontal); tabelView->setPosition(ccp(41, 44)); tabelView->setDelegate(this); dialog->addChild(tabelView); tabelView->reloadData(); } //确认 取消按键 CCMenu* menu = CCMenu::create(); menu->setPosition(CCPointZero); menu->setTag(0); // { LFAlert* lfAlert = new LFAlert(); lfAlert->setTag(TAG_AwardDisplayer_Layer); lfAlert->setBaseContainer(dialog,menu); lfAlert->setZoneCanotTouch(); CCDirector::sharedDirector()->getRunningScene()->addChild(lfAlert,128, TAG_AwardDisplayer_Layer); lfAlert->release(); } return; } else { MessageDisplay* layer = MessageDisplay::create("ERROR!"); CCDirector::sharedDirector()->getRunningScene()->addChild(layer); return; } } }
void TanSuoLayer::rsp_query(CCObject *msg) { removeObserver(MSG_queryDiscoverInfoRsp); GameDirector::getDirector()->hideWaiting(); SPCmd_QueryDiscoverInfoRsp* data = (SPCmd_QueryDiscoverInfoRsp*) ((MSG_Rsp*)msg)->getData(); if(data->err_code != Success) { MessageDisplay* layer = MessageDisplay::create(mCmdHlp->getMessage(data->err_code)); CCDirector::sharedDirector()->getRunningScene()->addChild(layer); return; } mMainMenu->setVisible(true); CCString temp; int xunBaoCount = CS::getDiscoverLimitTimes(MyselfManager::getManager()->getMyZhuJueData()->getVipLevel());//寻宝次数上限 //当前剩余次数 /*temp.initWithFormat("%u/%u", data->remainder_times, CS::getDiscoverLimitTimes(MyselfManager::getManager()->getMyZhuJueData()->getVipLevel()));*/ temp.initWithFormat("%u", data->remainder_times); CCLabelTTF *numLabel = CCLabelTTF::create(temp.getCString(), fontStr_BookAntiqua, m_nFontSize); mBg->addChild(numLabel, 1, Tag_Label_CurNum); //numLabel->setAnchorPoint(ccp(0, 0.5)); numLabel->setPosition(ccp(374, mBg->getContentSize().height-762)); numLabel->setColor(ccGREEN); //int shengyuTimes = MAX_TANSUOTIMES - data->discovered_times; int shengyuTimes = MAX_TANSUOTIMES - data->discovered_times; unsigned int serverTime = ServerTime::getTime(); int tm = 360 - (serverTime - data->last_modify_timestamp) % 360; string timeStr = getTimeForString(tm); m_nRefreshTime = tm; CCLabelTTF *timeTTF = CCLabelTTF::create(CCString::createWithFormat("(%s)",timeStr.c_str())->getCString(), fontStr_kaiti, m_nFontSize); mBg->addChild(timeTTF, 1); //haixuNumLabel->setAnchorPoint(ccp(0,0.5)); timeTTF->setPosition(ccp( numLabel->getPositionX() + numLabel->getContentSize().width / 2 + timeTTF->getContentSize().width / 2 + 10, numLabel->getPositionY())); timeTTF->setColor(ccWHITE); m_tRefreshTimeTTF = timeTTF; if (xunBaoCount == data->remainder_times) { timeTTF->setVisible(false); //haixuNumLabel->setPosition(ccp( mBg->getContentSize().width / 2 - 15, 44)); } else { schedule(SEL_SCHEDULE(&TanSuoLayer::refreshTime),1.0f); //str = CCString::createWithFormat("()") } if (data->discovered_times >= MAX_TANSUOTIMES) { temp.initWithFormat(LFStrings::getValue("XunBaoYiJing_DianLiang_String").c_str()); CCLabelTTF *yidianliangLabel = CCLabelTTF::create(temp.getCString(), fontStr_kaiti, m_nFontSize, CCSize(0,0), kCCTextAlignmentCenter); mBg->addChild(yidianliangLabel, 1, Tag_Label_YiDianLiang); //yidianliangLabel->setAnchorPoint(ccp(0,0.5)); //yidianliangLabel->setPosition(ccp(370, 54)); yidianliangLabel->setPosition(ccp( mBg->getContentSize().width / 2, 44)); yidianliangLabel->setColor(fonColor_PuTong); m_tHaixuTTF = NULL; m_nHadCount = data->remainder_times; } else { CCString *str = CCString::createWithFormat("%s %s",LFStrings::getValue("XunBaoHaixu_String").c_str(),LFStrings::getValue("XunBaoDianLiang_String").c_str()); CCLabelTTF *haixuNumLabel1 = CCLabelTTF::create(str->getCString(), fontStr_kaiti, m_nFontSize, CCSize(0,0), kCCTextAlignmentCenter); mBg->addChild(haixuNumLabel1, 1,Tag_Label_ShengyuNum); //haixuNumLabel->setAnchorPoint(ccp(0,0.5)); haixuNumLabel1->setPosition(ccp( mBg->getContentSize().width / 2, 44)); haixuNumLabel1->setColor(fonColor_PuTong); CCLabelTTF *haixuNumLabel = CCLabelTTF::create(CCString::createWithFormat("%d",shengyuTimes)->getCString(), fontStr_kaiti, m_nFontSize, CCSize(0,0), kCCTextAlignmentCenter); mBg->addChild(haixuNumLabel, 1,Tag_Label_Haixu); //haixuNumLabel->setAnchorPoint(ccp(0,0.5)); haixuNumLabel->setPosition(ccp(haixuNumLabel1->getPositionX() - haixuNumLabel1->getContentSize().width / 2 + m_nFontSize * 2 + haixuNumLabel->getContentSize().width / 2, haixuNumLabel1->getPositionY())); haixuNumLabel->setColor(ccWHITE); m_tHaixuTTF = haixuNumLabel; m_nHadCount = data->remainder_times; /* //还需 temp.initWithFormat(LFStrings::getValue("XunBaoHaixu_String").c_str()); CCLabelTTF *haixuNumLabel = CCLabelTTF::create(temp.getCString(), fontStr_kaiti, m_nFontSize, CCSize(0,0), kCCTextAlignmentCenter); mBg->addChild(haixuNumLabel, 1, Tag_Label_Haixu); //haixuNumLabel->setAnchorPoint(ccp(0,0.5)); haixuNumLabel->setPosition(ccp( mBg->getContentSize().width / 2, 44)); haixuNumLabel->setColor(fonColor_PuTong); //右边剩余次数 temp.initWithFormat(" %d ", shengyuTimes); CCLabelTTF *rightnumLabel = CCLabelTTF::create(temp.getCString(), fontStr_BookAntiqua, m_nFontSize, CCSize(40,0), kCCTextAlignmentCenter); mBg->addChild(rightnumLabel, 1, Tag_Label_ShengyuNum); rightnumLabel->setColor(ccGREEN); if (shengyuTimes < 10) { rightnumLabel->setPosition(ccp(haixuNumLabel->getPositionX()+ 60, haixuNumLabel->getPositionY())); } else { rightnumLabel->setPosition(ccp(haixuNumLabel->getPositionX()+ 55, haixuNumLabel->getPositionY())); } //次点亮石碑 temp.initWithFormat(LFStrings::getValue("XunBaoDianLiang_String").c_str()); CCLabelTTF *shibeiLabel = CCLabelTTF::create(temp.getCString(), fontStr_kaiti, m_nFontSize, CCSize(0,0), kCCTextAlignmentLeft); mBg->addChild(shibeiLabel, 1, Tag_Label_DianLiang); shibeiLabel->setAnchorPoint(ccp(0,0.5)); shibeiLabel->setPosition(ccp(haixuNumLabel->getPositionX()+ 80, haixuNumLabel->getPositionY())); shibeiLabel->setColor(fonColor_PuTong);*/ } //恢复提示 /*CCLabelTTF *tishiLabel = CCLabelTTF::create(LFStrings::getValue("XunBaoHuiFuTiShi").c_str(), fontStr_kaiti, m_nFontSize); mBg->addChild(tishiLabel); tishiLabel->setAnchorPoint(ccp(0, 0.5)); tishiLabel->setColor(fonColor_CiYao); tishiLabel->setPosition(ccp(20, mBg->getContentSize().height-802)); */ //fengyin { CCPoint pos[6] = {ccp(319,838-356), ccp(444,838-386), ccp(486,838-464) , ccp(319,838-534), ccp(152,838-464), ccp(194,838-386)}; float scale[6] = {.6f, .75f, .9f, 1.0f, .9f, .75f}; char buf[128]; int i=0; mDestroyCount = data->destroy_seal; for (int count=mDestroyCount; i<count; ++i) { CCSprite *img = CCSprite::create("xunbao_fengyinshi.png"); mBg->addChild(img, 10-(i-3)*(i-3), Tag_Img_FenYing + i); img->setScale(scale[i]); img->setPosition(pos[i]); sprintf(buf, "xunbao_fengyinshi_fuwen_%d.png", i+1); CCSprite *fwImg = CCSprite::create(buf); img->addChild(fwImg); fwImg->setPosition(ccp(img->getContentSize().width/2, img->getContentSize().height/2)); } for (; i<6; ++i) { CCSprite *img = CCSprite::create("xunbao_fengyinshi.png"); mBg->addChild(img, 10-(i-3)*(i-3), Tag_Img_FenYing + i); img->setScale(scale[i]); img->setPosition(pos[i]); } TanSuoManager *manager = TanSuoManager::getManager(); if (manager->canJieFeng()) { m_bIsJieFeng = true; m_nSelectProId = -1; mMainMenu->getChildByTag(Tag_MenuItem_JieFen)->setVisible(true); } else { mMainMenu->getChildByTag(Tag_MenuItem_JieFen)->setVisible(false); } } }
bool Recipe15::init() { if ( !CCLayerGradient::initWithColor(ccc4(170,145,25,255),ccc4(17,220,160,255),ccp(0.0f,1.0f))) { return false; } CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); m_points = 0; m_actionType = 1; this->setTouchMode(kCCTouchesOneByOne); this->setTouchEnabled(true); CCSprite *player = CCSprite::create("monkey01.png"); player->setTag(1); player->setPosition(ccp(player->getContentSize().height*3/2, visibleSize.width/2)); player->setOpacity(210); this->addChild(player); this->schedule(schedule_selector(Recipe15::gameLogic),3.0); this->scheduleUpdate(); CCMenuItemImage* pCloseItem = CCMenuItemImage::create( "button_close.png", "button_close_pressed.png", this, menu_selector(Recipe15::menuCloseCallback)); pCloseItem->setPosition(ccp( visibleSize.width - pCloseItem->getContentSize().width/2, pCloseItem->getContentSize().height/2)); //CCMenu* pMenu = CCMenu::create(pCloseItem,NULL); //pMenu->setPosition(CCPointZero); // this->addChild(pMenu); CCSprite* item1 = CCSprite::create("button_close.png"); CCSprite* item2 = CCSprite::create("button_close.png"); item2->setColor(ccc3(102,102,255)); CCMenuItemSprite* pCloseItem2 = CCMenuItemSprite::create(item1,item2,this, menu_selector(Recipe15::menuCloseCallback)); pCloseItem2->setPosition(ccp( visibleSize.width -pCloseItem->getContentSize().width*3/2, pCloseItem->getContentSize().height/2)); CCMenu* pMenu2 = CCMenu::create(pCloseItem,pCloseItem2,NULL); pMenu2->setPosition(CCPointZero); this->addChild(pMenu2); CCMenuItemImage* menuItemOff = CCMenuItemImage::create( "button_check_off.png", "button_check_off_pressed.png",NULL); CCMenuItemImage* menuItemOn = CCMenuItemImage::create( "button_check_on.png", "button_check_on_pressed.png",NULL); CCMenuItemToggle* toggleItem = CCMenuItemToggle::createWithTarget(this,menu_selector(Recipe15::changeMode),menuItemOff,menuItemOn,NULL); toggleItem->setPosition(ccp( toggleItem->getContentSize().width/2, visibleSize.height - toggleItem->getContentSize().height/2)); CCMenu* toggleMenu = CCMenu::create(toggleItem,NULL); toggleMenu->setPosition(0,0); toggleMenu->setTag(3); this->addChild(toggleMenu); CCLabelTTF *scoreLabel = CCLabelTTF::create("SCORE","aria",48); scoreLabel->setPosition(ccp(visibleSize.width/2,visibleSize.height - scoreLabel->getContentSize().height/2)); scoreLabel->setTag(10); this->addChild(scoreLabel); CCLabelTTF* pointsLabel = CCLabelTTF::create("0","arial",48); pointsLabel->setPosition(ccp(scoreLabel->getPositionX() + scoreLabel->getContentSize().width, visibleSize.height - pointsLabel->getContentSize().height/2)); pointsLabel->setTag(11); this->addChild(pointsLabel); return true; }
void SGAnnouncementLayer::initScrollView() { //ResourceManager::sharedInstance()->bindTexture("sgannouncementlayer/sgannouncementlayer2.plist", RES_TYPE_LAYER_UI, sg_announcementLayer); m_scrollview->getContainer()->removeAllChildrenWithCleanup(true); int positionY = 0;// Y轴纵向偏移, int border_shift = 20;//内容窗口偏移 int text_wid_expand = 40;//文本区宽度扩展 if (CCEGLView::sharedOpenGLView()->getFrameSize().width == ipadResource.size.width ||CCEGLView::sharedOpenGLView()->getFrameSize().width == ipadhdResource.size.width) { text_wid_expand = 28; } //记录上一个内容窗口的底线位置 float lastWindowBorderPos = 0.0f; for(int i = 0; i < m_arrayAnn->count(); i++) //for (int i = 0; i < 6; i++) { //=======================获取数据================================ SGAnnouncementDataModel *ann = (SGAnnouncementDataModel *)m_arrayAnn->objectAtIndex(i); CCString *title = ann->getTitle(); CCString *content = ann->getContent(); int viewId = ann->getViewId();//跳转至哪个页面 //=======================获取数据================================ CCLayer *layer = (CCLayer*)m_scrollview->getContainer();//获取scrollview的容器 CCLayerColor* contentWindow = initContentWindow(content, viewId > 0); contentWindow->setAnchorPoint(ccp(0.5, 0)); contentWindow->ignoreAnchorPointForPosition(false); CCSize cwSize = contentWindow->getContentSize(); CCSprite * sprite = CCSprite::createWithSpriteFrameName("Tips.png"); sprite->setScaleX(cwSize.width / 584.0); sprite->setScaleY(cwSize.height / 522.0); sprite->setPosition(ccp(cwSize.width * 0.5, cwSize.height * 0.5)); contentWindow->addChild(sprite, 2); //根据上一个内容窗口的位置计算下一个窗口的位置 contentWindow->setPosition(ccp(layer->getContentSize().width * 0.5, lastWindowBorderPos + border_shift)); /* tips.png图片拉长的倍数 */ float pngScale = cwSize.height / 522 ; // CCLOG("*******************>>>"); // CCLOG("i = %d" , i); // CCLOG("title = %s" , title->getCString()); // CCLOG("content = %s" , content->getCString()); // CCLOG("pos: x=%f , y = %f" , contentWindow->getPositionX() , contentWindow->getPositionY()); // CCLOG("cwSize: width=%f, height=%f", cwSize.width, cwSize.height); // CCLOG("lastWindowBorderPos = %f" , lastWindowBorderPos); // CCLOG("<<<********************"); lastWindowBorderPos = contentWindow->getPositionY() + cwSize.height; //公告title CCLabelTTF *label = CCLabelTTF::create(title->getCString(), FONT_PANGWA, 35); label->setColor(COLOR_RED); label->setAnchorPoint(ccp(0.5 , 1)); label->setPosition(ccp(cwSize.width *0.5f, cwSize.height - pngScale * 20)); contentWindow->addChild(label, 100); //公告内容 // CCSize maybeTextSize = stringInLabelRect(content->getCString()); // CCLabelTTF *label_content=CCLabelTTF::create(content->getCString(), FONT_PENGYOU, 24,CCSizeMake(maybeTextSize.width + text_wid_expand * 4,maybeTextSize.height + text_hei_expand),kCCTextAlignmentLeft); CCLabelTTF *label_content=CCLabelTTF::create(content->getCString(), FONT_PENGYOU, 24,CCSizeMake(cwSize.width - 40 * widthFactor, cwSize.height - label->getContentSize().height),kCCTextAlignmentLeft); label_content->setAnchorPoint(ccp(0.5, 1));//内容顶线对齐 label_content->setColor(ccBLACK); label_content->setPosition(ccp(label->getPositionX(), label->getPositionY() - label->getContentSize().height)); label_content->setZOrder(102); contentWindow->addChild(label_content); //点击前往按钮 if (viewId > 0) { SGButton *goButton = SGButton::create("box_btnbg.png", NULL, this, menu_selector(SGAnnouncementLayer::AnnounceButton),CCPointZero,false,true); CCString *go = CCString::createWithFormat(str_Hit_goto); SGCCLabelTTF *go_label = SGCCLabelTTF::create(go->getCString(), FONT_PANGWA, 30); goButton->addChild(go_label); goButton->setTag(viewId);//跳转到某个视图界面 go_label->setPosition(ccp(goButton->getContentSize().width / 2, goButton->getContentSize().height / 2)); //立即前往Button CCMenu *menu = CCMenu::create(goButton, NULL); menu->setTouchPriority(0); menu->setPosition(CCPointZero); goButton->setScale(0.7); goButton->setZOrder(200); //goButton->setPosition(ccp(label->getPositionX(), goButton->getContentSize().height / 1.5)); goButton->setAnchorPoint(ccp(0.5, 0)); goButton->setPosition(ccp(label->getPositionX(), pngScale * 18)); menu->setZOrder(200); contentWindow->addChild(menu); } layer->addChild(contentWindow); //每次加对应的contentWindow的大小,为之后计算scrollview的内容体偏移 positionY += (cwSize.height + border_shift); } //layer->setContentSize(CCSizeMake(504, m_scrollview->getContentSize().height)); //控制是否可以滑动 iscanmove = (positionY)>791?true:false;//@note:591是m_scrollview的可视区域高度 m_scrollview->setContentOffset(ccp(0, -positionY + m_scrollview->getContentSize().height - 30));//20是顶部窗口的起始位置偏移,不减去会有一小部分遮挡 m_scrollview->setContentSize(CCSizeMake(m_scrollview->getContentSize().width, positionY));//scrollview的真正大小 m_scrollview->getContainer()->setContentSize(CCSizeMake(m_scrollview->getContentSize().width, positionY + 10));//滚动重置时的container位置 }
void ZhuangbeiXilianUI::onEnter() { BaseLayer::onEnter(); CCMenu *menu = CCMenu::create(); menu->setAnchorPoint(CCPointZero); menu->setPosition(CCPointZero); addChild(menu); m_mMenu = menu; /* CCMenuItemImage *item = CCMenuItemImage::create("CloseNormal.png","CloseSelected.png",this,SEL_MenuHandler(&MainLayerUI::click)); menu->addChild(item); item->setAnchorPoint(CCPointZero); item->setPosition(CCPointZero); */ { int max = 0; if (mEquipment->getEquipColor() == ZhuangbeiColour_Xiyou) { max = 23; } else if (mEquipment->getEquipColor() == ZhuangbeiColour_Chuanqi) { max = 50; } CCLabelTTF *titleTTF = CCLabelTTF::create(); CCLabelTTF *ttf1 = CCLabelTTF::create(LFStrings::getValue("XilianFanwei").c_str(),fontStr_kaiti, 25.0f); ttf1->setColor(ccc3(195,145,96)); ttf1->setPosition(ccp(ttf1->getContentSize().width / 2, ttf1->getContentSize().height / 2)); // titleTTF->addChild(ttf1); CCLabelTTF *ttf2 = CCLabelTTF::create(CCString::createWithFormat(" %s1~%d%s%%",LFStrings::getValue("dakuohaoLeft").c_str(),max,LFStrings::getValue("dakuohaoRight").c_str())->getCString(),fontStr_kaiti, 25.0f); ttf2->setColor(ccc3(79,110,217)); ttf2->setPosition(ccp(ttf2->getContentSize().width / 2 + ttf1->getContentSize().width, ttf2->getContentSize().height / 2)); //ttf1->setPosition(ccp(this->getContentSize().width / 2,645)); titleTTF->addChild(ttf2); titleTTF->setPosition(ccp(this->getContentSize().width / 2 - ( ttf1->getContentSize().width + ttf2->getContentSize().width ) / 2,655)); addChild(titleTTF); } CCLabelTTF *nameTTF = CCLabelTTF::create(mEquipment->getName().c_str(),fontStr_kaiti, 30.0f); nameTTF->setPosition(POS_EqName); switch (mEquipment->getEquipColor()) { case ZhuangbeiColour_Xiyou: { nameTTF->setColor(ccc3(253,180,40)); } break; case ZhuangbeiColour_Chuanqi: { nameTTF->setColor(ccc3(181,93,6)); } break; default: break; } m_sBackSpr->addChild(nameTTF); { CCMenuItemImage* closeItem = CCMenuItemImage::create( "close.png", "close_select.png", this,menu_selector(ZhuangbeiXilianUI::cilickClose) ); CCPoint pos = POS_EqName; closeItem->setPosition(ccp(m_sBackSpr->getContentSize().width - closeItem->getContentSize().width,pos.y)); m_mMenu->addChild(closeItem); } CCSprite *shuomingSpr = CCSprite::create("zhuangbei_xiangxi_xilian_shuoming_1.png"); shuomingSpr->setPosition(POS_ShuoMing); m_sBackSpr->addChild(shuomingSpr); bool isFirstIn = false; if (!History::getHistory()->getBoolFromCurrentHero(Key_First_LookXilianShuoming,isFirstIn)) { History::getHistory()->putInCurrentHero(Key_First_LookXilianShuoming,false); CCPoint pos = shuomingSpr->getParent()->convertToWorldSpace(shuomingSpr->getPosition()); GuideLayerBase *guideLayer = new GuideLayer_SimpleLayer; guideLayer->init(shuomingSpr->getContentSize(), pos , LFStrings::getValue("first_chuanqi_shuoming"), NULL, false); CCDirector::sharedDirector()->getRunningScene()->addChild(guideLayer, 1024); } CCMenuItemImage *item = CCMenuItemImage::create("zhuangbei_xiangxi_xilian.png","zhuangbei_xiangxi_xilian_select.png",this,SEL_MenuHandler(&ZhuangbeiXilianUI::clickXilian)); menu->addChild(item); item->setPosition(ccp(POS_ShuoMing.x,50)); CCMenuItemImage *shuomingItem = CCMenuItemImage::create("xuesejiaotang_anniu_shuoming.png","xuesejiaotang_anniu_shuoming_select.png",this,SEL_MenuHandler(&ZhuangbeiXilianUI::clickShuoming)); menu->addChild(shuomingItem); shuomingItem->setPosition(ccp(shuomingItem->getContentSize().width / 2 + 10,POS_ShuoMing.y)); vector<ZBAttr> data_list = mEquipment->getEquipData().purify_attr_vec; int max_count = CS::getPurifyMaxHoles(mEquipment->getEquipData().zhuangbei_type,mEquipment->getEquipColor(),mEquipment->getLevel()); int count = data_list.size(); CCSprite *layer = CCSprite::create("zhuangbei_xiangxi_xilian_shuxing_bg.png"); layer->setPosition(ccp(POS_EqName.x,465)); m_sBackSpr->addChild(layer); int atter_type_index[5] = {AttrType_baoshang,AttrType_hp_percent,AttrType_skillresult,mEquipment->getMainProType(),0}; float side = 0; { CCSprite *bgSpr = CCSprite::create("zhuangbei_xiangxi_xilian_shuxing.png"); side = (layer->getContentSize().height - bgSpr->getContentSize().height * 5 ) / 10.0f; } m_sShuxingShowSpr = layer; for(int i=0; i!= max_count; ++i) { ZhuangbeiXilianOption *option = ZhuangbeiXilianOption::create(); option->setCallBack(this,SEL_CallFuncN(&ZhuangbeiXilianUI::clickSelect)); if (i < count) { option->setValue(i,CS::getPurifyLevel(data_list[i].attr_value),data_list[i].attr_value,atter_type_index[i]); m_uOptionList.push_back(option); } else { option->setValue(i,-1,-1,-1); } layer->addChild(option); option->setPosition(ccp(layer->getContentSize().width / 2,layer->getContentSize().height - (i * 2 + 1) * ( side + option->getContentSize().height / 2))); } if (m_uOptionList.size() == 1) { for (vector<ZhuangbeiXilianOption *>::iterator iter = m_uOptionList.begin() ; iter != m_uOptionList.end() ; iter ++) { (*iter)->selectSelf(); } } m_nTodayFreeCount = MyselfManager::getManager()->getRuntionData()->purify_free_times; if (m_nTodayFreeCount <= 0) { CCSprite *bgSpr = CCSprite::create("daoju_kuang_bg.png"); bgSpr->setPosition(ccp(this->getContentSize().width / 2 + 2,185)); m_sBackSpr->addChild(bgSpr); CCMenuItemImage *XilianJinghuaItem = CCMenuItemImage::create("daoju_youlanzhiye.png","daoju_youlanzhiye.png",this,SEL_MenuHandler(&ZhuangbeiXilianUI::clickXilianJingHua)); XilianJinghuaItem->setPosition(ccp(this->getContentSize().width / 2,185)); m_mMenu->addChild(XilianJinghuaItem); /*CCSprite *spr = CCSprite::create("daoju_youlanzhiye.png"); spr->setPosition(ccp(this->getContentSize().width / 2,185)); m_sBackSpr->addChild(spr);*/ int haveCount = WuPinManager::getManager()->getWuPin(ItemsType_Purify_Scroll)->getCount(); int count = 1; CCLabelTTF *strTTF = CCLabelTTF::create(LFStrings::getValue("XilianJinghua").c_str(),fontStr_kaiti, 20.0f); strTTF->setPosition(ccp(bgSpr->getPositionX() - bgSpr->getContentSize().width / 2 + strTTF->getContentSize().width / 2 - 30,115)); m_sBackSpr->addChild(strTTF); strTTF->setColor(ccc3(255,255,255)); CCLabelTTF *xuTTF = CCLabelTTF::create(CCString::createWithFormat(" %d / ",count)->getCString(),fontStr_kaiti, 20.0f); xuTTF->setPosition(ccp(strTTF->getPositionX() + strTTF->getContentSize().width / 2 + xuTTF->getContentSize().width / 2,115)); m_sBackSpr->addChild(xuTTF); xuTTF->setColor(ccc3(255,255,255)); CCLabelTTF *countTTF = CCLabelTTF::create(CCString::createWithFormat("%d",haveCount)->getCString(),fontStr_kaiti, 20.0f); countTTF->setPosition(ccp(xuTTF->getPositionX() + xuTTF->getContentSize().width / 2 + countTTF->getContentSize().width / 2,115)); m_sBackSpr->addChild(countTTF); if (haveCount <= 0) { countTTF->setColor(ccRED); } m_tXilianJinghuaCountTTF = countTTF; } else { m_tXilianJinghuaTTF = CCLabelTTF::create(LFStrings::getValue("Free").c_str(),fontStr_kaiti, 30.0f); m_tXilianJinghuaTTF->setPosition(ccp(POS_EqName.x,172)); m_sBackSpr->addChild(m_tXilianJinghuaTTF); m_tXilianJinghuaTTF->setColor(ccGREEN); } CCLabelTTF *countTTF = CCLabelTTF::create(CCString::createWithFormat("%s %u",LFStrings::getValue("todayFreeCount").c_str(),m_nTodayFreeCount)->getCString(),fontStr_kaiti, 20.0f); countTTF->setPosition(ccp(POS_EqName.x,252)); m_sBackSpr->addChild(countTTF); countTTF->setColor(ccc3(255,255,255)); m_tFreeCountsTTF = countTTF; m_lData_list = data_list; }
void ZhuangbeiXilianUI::addShuxingShow(vector<ZBAttr> old_list,vector<ZBAttr> list) { if (m_bIsRefreshXilian) { m_uOptionList.clear(); m_sShuxingShowSpr->removeAllChildren(); int old_count = old_list.size(); int count = list.size(); int atter_type_index[5] = {AttrType_baoshang,AttrType_hp_percent,AttrType_skillresult,mEquipment->getMainProType(),0}; float side = 0; { CCSprite *bgSpr = CCSprite::create("zhuangbei_xiangxi_xilian_shuxing.png"); side = (m_sShuxingShowSpr->getContentSize().height - bgSpr->getContentSize().height * 5 ) / 10.0f; } int max_count = CS::getPurifyMaxHoles(mEquipment->getEquipData().zhuangbei_type,mEquipment->getEquipColor(),mEquipment->getLevel()); for(int i=0; i!= max_count; ++i) { ZhuangbeiXilianOption *option = ZhuangbeiXilianOption::create(); option->setCallBack(this,SEL_CallFuncN(&ZhuangbeiXilianUI::clickSelect)); if (i < count) { if ((i < old_count && ( ( CS::getPurifyLevel(list[i].attr_value) + 1 ) / 2 > ( CS::getPurifyLevel(old_list[i].attr_value) + 1 ) / 2 ))) { option->setLevelSheng(); } if ((i < old_count && ( list[i].attr_value > old_list[i].attr_value))) { option->setValueSheng(); } option->setValue(i,CS::getPurifyLevel(list[i].attr_value),list[i].attr_value,atter_type_index[i]); m_uOptionList.push_back(option); } else { option->setValue(i,-1,-1,-1); } m_sShuxingShowSpr->addChild(option); option->setPosition(ccp(m_sShuxingShowSpr->getContentSize().width / 2,m_sShuxingShowSpr->getContentSize().height - (i * 2 + 1) * ( side + option->getContentSize().height / 2))); if (i >= old_count && i < count) { option->addNewShuxing(); } if (i == ( m_nSelectIndex )) { option->selectSelf(); } } m_bIsRefreshXilian = false; } m_nTodayFreeCount = MyselfManager::getManager()->getRuntionData()->purify_free_times; if (m_nTodayFreeCount <= 0) { if (m_tXilianJinghuaTTF) { m_tXilianJinghuaTTF->removeFromParent(); m_tXilianJinghuaTTF = NULL; } if (m_tXilianJinghuaCountTTF) { int haveCount = WuPinManager::getManager()->getWuPin(ItemsType_Purify_Scroll)->getCount(); int count = 1; m_tXilianJinghuaCountTTF->setString(CCString::createWithFormat(" %d",haveCount)->getCString()); if (haveCount <= 0) { m_tXilianJinghuaCountTTF->setColor(ccRED); } } else { CCSprite *bgSpr = CCSprite::create("daoju_kuang_bg.png"); bgSpr->setPosition(ccp(this->getContentSize().width / 2 + 2,185)); m_sBackSpr->addChild(bgSpr); CCMenuItemImage *XilianJinghuaItem = CCMenuItemImage::create("daoju_youlanzhiye.png","daoju_youlanzhiye.png",this,SEL_MenuHandler(&ZhuangbeiXilianUI::clickXilianJingHua)); XilianJinghuaItem->setPosition(ccp(this->getContentSize().width / 2,185)); m_mMenu->addChild(XilianJinghuaItem); /*CCSprite *spr = CCSprite::create("daoju_youlanzhiye.png"); spr->setPosition(ccp(this->getContentSize().width / 2,185)); m_sBackSpr->addChild(spr);*/ int haveCount = WuPinManager::getManager()->getWuPin(ItemsType_Purify_Scroll)->getCount(); int count = 1; CCLabelTTF *strTTF = CCLabelTTF::create(LFStrings::getValue("XilianJinghua").c_str(),fontStr_kaiti, 20.0f); strTTF->setPosition(ccp(bgSpr->getPositionX() - bgSpr->getContentSize().width / 2 - 30 + strTTF->getContentSize().width / 2,115)); m_sBackSpr->addChild(strTTF); strTTF->setColor(ccc3(255,255,255)); CCLabelTTF *xuTTF = CCLabelTTF::create(CCString::createWithFormat(" %d / ",count)->getCString(),fontStr_kaiti, 20.0f); xuTTF->setPosition(ccp(strTTF->getPositionX() + strTTF->getContentSize().width / 2 + xuTTF->getContentSize().width / 2,115)); m_sBackSpr->addChild(xuTTF); xuTTF->setColor(ccc3(255,255,255)); CCLabelTTF *countTTF = CCLabelTTF::create(CCString::createWithFormat("%d",haveCount)->getCString(),fontStr_kaiti, 20.0f); countTTF->setPosition(ccp(xuTTF->getPositionX() + xuTTF->getContentSize().width / 2 + countTTF->getContentSize().width / 2,115)); m_sBackSpr->addChild(countTTF); if (haveCount <= 0) { countTTF->setColor(ccRED); } m_tXilianJinghuaCountTTF = countTTF; } } if (m_tFreeCountsTTF) { m_tFreeCountsTTF->setString(CCString::createWithFormat("%s %u",LFStrings::getValue("todayFreeCount").c_str(),m_nTodayFreeCount)->getCString()); } else { CCLabelTTF *countTTF = CCLabelTTF::create(CCString::createWithFormat("%s %u",LFStrings::getValue("todayFreeCount").c_str(),m_nTodayFreeCount)->getCString(),fontStr_kaiti, 20.0f); countTTF->setPosition(ccp(POS_EqName.x,252)); m_sBackSpr->addChild(countTTF); countTTF->setColor(ccc3(255,255,255)); m_tFreeCountsTTF = countTTF; } }
BaseSprite* ImageManager::getSpriteOfZhuangbei(string equipKeyWords,ZhuangbeiColourExt color,unsigned holdNum,vector<ItemsType> diamonds,QianghuaData qinghua,unsigned int jingLianTime /* = 0 */) { std::string pic_file = "minute_" + equipKeyWords + ".png"; BaseSprite* sprite = BaseSprite::create(pic_file); BaseSprite* hole1 = BaseSprite::create(); BaseSprite* hole2 = BaseSprite::create(); BaseSprite* hole3 = BaseSprite::create(); // 精炼 { if (jingLianTime > 0) { //BaseSprite* icon = BaseSprite::create("gongjiang_jinglian_tubiao.png"); BaseSprite* icon = BaseSprite::create(); icon->setContentSize(CCSizeMake(20,50)); char temp[16]; sprintf(temp,"+%u",jingLianTime); CCLabelTTF* lableNum = CCLabelTTF::create(temp,fontStr_BookAntiqua,40,CCSizeMake(0,0),kCCTextAlignmentRight); lableNum->setAnchorPoint(ccp(1.0f,0.5f)); //{ // ccColor3B lableColor; // switch (color) // { // case ImageManager::ZhuangbeiColourExt_Baizhuang: // //lableColor = get // break; // case ImageManager::ZhuangbeiColourExt_Fumo: // break; // case ImageManager::ZhuangbeiColourExt_Xiyou: // break; // case ImageManager::ZhuangbeiColourExt_Chuanqi: // break; // case ImageManager::ZhuangbeiColourExt_ChuanQiTaoZhuang: // break; // case ImageManager::ZhuangbeiColourExt_ShengBing: // break; // case ImageManager::ZhuangbeiColourExt_ShengBingTaoZhuang: // break; // default: // break; // } // lableNum->setColor(lableColor); //} sprite->addChild(lableNum); sprite->addChild(icon); icon->setPositionY(sprite->getContentSize().height - icon->getContentSize().height/2); lableNum->setPosition(ccp(sprite->getContentSize().width - lableNum->getContentSize().width/2,icon->getPositionY())); icon->setPositionX(lableNum->getPositionX() - lableNum->getContentSize().width/2 - icon->getContentSize().width/2); } } // 强化 { //sort for(int i=0; i<qinghua.qianghua_count; ++i) { for(int j=i; j<qinghua.qianghua_count; ++j) { if( (qinghua.info_arr[i].level < qinghua.info_arr[j].level) || (qinghua.info_arr[i].level == qinghua.info_arr[j].level && qinghua.info_arr[i].percent < qinghua.info_arr[j].percent) ) { swap(qinghua.info_arr[i], qinghua.info_arr[j]); } } } //float scale = 0.32f/(124/297.0f); float scale = 0.3f/(124/297.0f); BaseSprite* temp = BaseSprite::create("gongjiang_qianghua_jieguo_jin.png"); float posX = temp->getContentSize().width/2 * scale; float posY = temp->getContentSize().height/2; for (int i=0;i<qinghua.max_qianghua_time;i++) { BaseSprite* imageStar = NULL; if (i < qinghua.qianghua_count) { switch (qinghua.info_arr[i].level) { case 4: case QianghuaLevel_jin_special: imageStar = BaseSprite::create("gongjiang_qianghua_jieguo_jin.png"); break; case 3: imageStar = BaseSprite::create("gongjiang_qianghua_jieguo_yin.png"); break; case 2: imageStar = BaseSprite::create("gongjiang_qianghua_jieguo_tong.png"); break; case 1: imageStar = BaseSprite::create("gongjiang_qianghua_jieguo_tie.png"); break; default: CCLog("Error : %s --> qiangjhua_level = %d",__FUNCTION__,qinghua.info_arr[i].level); imageStar = BaseSprite::create("gongjiang_qianghua_jieguo_tie.png"); CCAssert(false,"未知的level"); } } else { imageStar = BaseSprite::create("gongjiang_qianghua_jieguo_kong.png"); } sprite->addChild(imageStar); imageStar->setPosition(ccp(posX,posY)); imageStar->setScale(scale); posX += temp->getContentSize().width * imageStar->getScaleX() - 8; } } if(holdNum == 1) { hole1 = BaseSprite::create("zhuangbei_kong.png"); sprite->addChild(hole1); hole1->setPosition(ccp(sprite->getContentSize().width/2, sprite->getContentSize().height/2)); } else if(holdNum == 2) { hole1 = BaseSprite::create("zhuangbei_kong.png"); sprite->addChild(hole1); hole1->setPosition(ccp(sprite->getContentSize().width/2, sprite->getContentSize().height*3.3f/5)); hole2 = BaseSprite::create("zhuangbei_kong.png"); sprite->addChild(hole2); hole2->setPosition(ccp(sprite->getContentSize().width/2, sprite->getContentSize().height*1.7f/5)); } else if(holdNum == 3) { hole1 = BaseSprite::create("zhuangbei_kong.png"); sprite->addChild(hole1); hole1->setPosition(ccp(sprite->getContentSize().width/2, sprite->getContentSize().height*3.5f/5)); hole2 = BaseSprite::create("zhuangbei_kong.png"); sprite->addChild(hole2); hole2->setPosition(ccp(sprite->getContentSize().width/2, sprite->getContentSize().height* 1.0f/2.0f)); hole3 = BaseSprite::create("zhuangbei_kong.png"); sprite->addChild(hole3); hole3->setPosition(ccp(sprite->getContentSize().width/2, sprite->getContentSize().height*1.5f/5)); } hole1->setScale(0.7f); hole2->setScale(0.7f); hole3->setScale(0.7f); if(diamonds.size() == 1) { if(hole1 != NULL) { BaseSprite* baoshi = BaseSprite::create(getBaoshiFilename(diamonds[0])); hole1->addChild(baoshi); baoshi->setPosition(ccp(hole1->getContentSize().width/2, hole1->getContentSize().height/2)); } } else if(diamonds.size() == 2) { if(hole1 != NULL) { BaseSprite* baoshi = BaseSprite::create(getBaoshiFilename(diamonds[0])); hole1->addChild(baoshi); baoshi->setPosition(ccp(hole1->getContentSize().width/2, hole1->getContentSize().height/2)); } if(hole2 != NULL) { BaseSprite* baoshi = BaseSprite::create(getBaoshiFilename(diamonds[1])); hole2->addChild(baoshi); baoshi->setPosition(ccp(hole2->getContentSize().width/2, hole2->getContentSize().height/2)); } } else if(diamonds.size() == 3) { if(hole1 != NULL) { BaseSprite* baoshi = BaseSprite::create(getBaoshiFilename(diamonds[0])); hole1->addChild(baoshi); baoshi->setPosition(ccp(hole1->getContentSize().width/2, hole1->getContentSize().height/2)); } if(hole2 != NULL) { BaseSprite* baoshi = BaseSprite::create(getBaoshiFilename(diamonds[1])); hole2->addChild(baoshi); baoshi->setPosition(ccp(hole2->getContentSize().width/2, hole2->getContentSize().height/2)); } if(hole3 != NULL) { BaseSprite* baoshi = BaseSprite::create(getBaoshiFilename(diamonds[2])); hole3->addChild(baoshi); baoshi->setPosition(ccp(hole3->getContentSize().width/2, hole3->getContentSize().height/2)); } } return sprite; }
void BaseScene::buildHeader(int highlightIndex, const char* title, const char* description) { _currentMenuIndex = highlightIndex; CCMenuItemImage* homeButton = CCMenuItemImage::create(); homeButton->setNormalSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_home_nrl")); homeButton->setSelectedSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_home_prd")); homeButton->setDisabledSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_home_prd")); homeButton->setTarget(this, menu_selector(BaseScene::loadHomeScene)); homeButton->setAnchorPoint(ccp(1.0f, 1.0f)); CCMenuItemImage* fbActionButton = CCMenuItemImage::create(); fbActionButton->setNormalSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_fb_action_nrl")); fbActionButton->setSelectedSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_fb_action_prd")); fbActionButton->setDisabledSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_fb_action_dis")); fbActionButton->setTarget(this, menu_selector(BaseScene::loadFBActionScene)); fbActionButton->setAnchorPoint(ccp(1.0f, 1.0f)); if (EziSocialObject::sharedObject()->isFacebookSessionActive() == false) { fbActionButton->setEnabled(false); } CCMenuItemImage* helpButton = CCMenuItemImage::create(); helpButton->setNormalSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_help_nrl")); helpButton->setSelectedSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_help_prd")); helpButton->setDisabledSpriteFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("btn_help_prd")); helpButton->setTarget(this, menu_selector(BaseScene::loadHelpScene)); helpButton->setAnchorPoint(ccp(1.0f, 1.0f)); switch (highlightIndex) { case 0: homeButton->setEnabled(false); break; case 1: fbActionButton->setEnabled(false); break; case 2: helpButton->setEnabled(false); break; default: break; } CCMenu* homeMenu = CCMenu::create(homeButton, fbActionButton, helpButton, NULL); homeMenu->alignItemsHorizontally(); this->addChild(homeMenu); PlaceNode(homeMenu, 0.88, 0.98); // Add a line. CCLayerColor* lineLayer = CCLayerColor::create(ccc4(204, 204, 204, 204), CCDirector::sharedDirector()->getVisibleSize().width, 1.0 * AppDelegate::SCREEN_SCALE_FACTOR); this->addChild(lineLayer); PlaceNode(lineLayer, 0.0, 0.8); lineLayer->setPositionY(homeMenu->getPositionY() - homeButton->getContentSize().height - (7 * AppDelegate::SCREEN_SCALE_FACTOR)); // Add Title CCLabelTTF* titleLabel = CCLabelTTF::create(title, "Arial", 50.0 * AppDelegate::SCREEN_SCALE_FACTOR); this->addChild(titleLabel); titleLabel->setAnchorPoint(ccp(0.0f, 0.0f)); //PlaceNode(titleLabel, 0.02, 0.98); CCLabelTTF* descriptionLabel = CCLabelTTF::create(description, "Arial", SCALED_VALUE(22.0f)); this->addChild(descriptionLabel); descriptionLabel->setAnchorPoint(ccp(0.0f, 0.0f)); PlaceNode(descriptionLabel, 0.02, 0.98); descriptionLabel->setPositionY(homeMenu->getPositionY() - homeButton->getContentSize().height); descriptionLabel->setColor(ccc3(204, 204, 204)); titleLabel->cocos2d::CCNode::setPosition(descriptionLabel->getPositionX(), descriptionLabel->getPositionY() + descriptionLabel->getContentSize().height - 2.0f); }
void MailInfoListLayer::setSystemMail(Email mail) { //CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this,-132,true); ListMenu *menu = ListMenu::create(); menu->setPosition(CCPointZero); menu->setAnchorPoint(CCPointZero); menu->setContentSize(this->getContentSize()); addChild(menu); m_mMenu = menu; //m_mMenu->runAction(CCCallFuncND::create(this, callfuncND_selector(MailInfoListLayer::changeMenuPriority_callfuncND), (void*)(-133))); m_eEmail = mail; sortMail(mail); int count = 0; int height = m_nHeight; int width = count * 100; m_nWidth = width; count = 0; int side = 50; int bWidth = 0; int _width = 0; int pos_x = 0; for (map<string,string>::iterator iter = m_lThingsList.begin(); iter != m_lThingsList.end() ; iter ++) { CCSprite *cailiaoSpr = CCSprite::create("daoju_kuang_bg.png"); cailiaoSpr->setScale(0.7f); bWidth = cailiaoSpr->getContentSize().width * cailiaoSpr->getScaleX(); cailiaoSpr->setPosition(ccp(count * bWidth + ( side * ( count * 2 + 1 ) ) + bWidth / 2 ,height - cailiaoSpr->getContentSize().height * cailiaoSpr->getScaleY() / 2 - 5)); addChild(cailiaoSpr); CCSprite *daojuSpr = CCSprite::create(iter->first.c_str()); daojuSpr->setScale(0.7f); bWidth = daojuSpr->getContentSize().width * cailiaoSpr->getScaleX(); daojuSpr->setPosition(ccp(cailiaoSpr->getContentSize().width / 2, cailiaoSpr->getContentSize().height / 2)); cailiaoSpr->addChild(daojuSpr); CCLabelTTF *nameTTF = CCLabelTTF::create(iter->second.c_str(),fontStr_kaiti,25.0f); nameTTF->setPosition(ccp(cailiaoSpr->getPositionX(),nameTTF->getContentSize().height / 2 + 5)); addChild(nameTTF); nameTTF->setColor(ccWHITE); _width += cailiaoSpr->getPositionX() - pos_x; pos_x = cailiaoSpr->getPositionX(); count ++; } _width += bWidth / 2 + side; for (vector<Flat_DuanzaoGroupZBInfo>::iterator iter = mail.equipVec.begin(); iter != mail.equipVec.end() ; iter ++) { CCLabelTTF *nameTTF = CCLabelTTF::create(iter->zhuangbei_name.c_str(),fontStr_kaiti,25.0f); nameTTF->setPosition(ccp(count * bWidth + ( side * ( count * 2 + 1 ) ) + bWidth / 2 + nameTTF->getContentSize().height / 2 ,nameTTF->getContentSize().height / 2 + 20)); addChild(nameTTF); nameTTF->setColor(ccWHITE); //string nameTemp = CS::getItemName(iter->zb_group_id) + LFStrings::getValue("zhi") + LFStrings::getValue("suipian") + getStrByInt(iter->suipian_id); string equipfile = iter->zhuangbei_pic; equipfile = "minute_" + equipfile + ".png"; m_lThingsList.insert(map<string,string>::value_type(equipfile,iter->zhuangbei_name)); string diwenStr = ImageManager::getManager()->getImageData_DiWen_WithBianKuang(iter->zhuangbei_colour); CCMenuItemImage *eqDiwenImg = CCMenuItemImage::create(diwenStr.c_str(), diwenStr.c_str(), this, menu_selector(MailInfoListLayer::menuItemClicked_Equip)); m_mMenu->addChild(eqDiwenImg); eqDiwenImg->setTag(iter->zb_group_id); eqDiwenImg->setScale(0.8f); bWidth = eqDiwenImg->getContentSize().width * eqDiwenImg->getScaleX(); eqDiwenImg->setPosition(ccp( nameTTF->getPositionX(),nameTTF->getPositionY() + nameTTF->getContentSize().height / 2 + eqDiwenImg->getContentSize().height / 2 + 5)); CCSprite *daojuSpr = CCSprite::create(equipfile.c_str()); daojuSpr->setScale(0.24f); bWidth = daojuSpr->getContentSize().width * eqDiwenImg->getScaleX(); daojuSpr->setPosition(ccp(eqDiwenImg->getContentSize().width / 2, eqDiwenImg->getContentSize().height / 2)); eqDiwenImg->addChild(daojuSpr); /*CCSprite *cailiaoSpr = CCSprite::create("daoju_kuang_bg.png"); cailiaoSpr->setScale(0.7f); bWidth = cailiaoSpr->getContentSize().width * cailiaoSpr->getScaleX(); cailiaoSpr->setPosition(ccp(count * bWidth + ( side * ( count * 2 + 1 ) ) + bWidth / 2 ,height - cailiaoSpr->getContentSize().height * cailiaoSpr->getScaleY() / 2 - 5)); addChild(cailiaoSpr);*/ _width += eqDiwenImg->getPositionX() - pos_x; pos_x = eqDiwenImg->getPositionX(); count ++; } _width += bWidth / 2 + side; m_nWidth = _width; this->setContentSize(CCSizeMake(m_nWidth,m_nHeight)); }