void ThirdServerScene::toServerList() { if (this->getChildByTag(loginLayerTag) != NULL) { this->removeChildByTag(loginLayerTag,true); } CCLayer* loginLayer = CCLayer::create(); loginLayer->setTag(loginLayerTag); loginLayer->setPosition(ccp(0,0)); CCLayer* displayLayer = CCLayer::create(); CCSprite* loginBack = CCSprite::createWithSpriteFrameName("serverShadow.png"); loginBack->setPosition(ccp(0,0)); loginBack->setAnchorPoint(ccp(1,0)); loginBack->setScale(2); displayLayer->addChild(loginBack); displayLayer->setTag(loginDisplayLayerTag); loginLayer->addChild(displayLayer); displayLayer->setPosition(ccp(winSize.width-645,960)); CCSprite* serverListLabel = CCSprite::createWithSpriteFrameName("serverlistTipLabel.png"); serverListLabel->setPosition(ccp(-285,325)); displayLayer->addChild(serverListLabel); // CCSprite* upTip = CCSprite::createWithSpriteFrameName("serverlistTipCornor.png"); // upTip->setPosition(ccp(-300,65)); // upTip->setRotation(180); // upTip->setScale(0.66); // upTip->setColor(ccc3(200,200,200)); // upTip->setTag(upTipTag); // // displayLayer->addChild(upTip); CCSprite* downTip = CCSprite::createWithSpriteFrameName("serverlistTipCornor.png"); downTip->setPosition(ccp(-300,50)); downTip->setScale(0.66); downTip->setColor(ccc3(200,200,200)); downTip->setTag(downTipTag); downTip->runAction(CCRepeatForever::create(static_cast<CCSequence*>(CCSequence::create( CCEaseIn::create(CCMoveBy::create(0.25,ccp(0,-10)),1.5),CCEaseOut::create(CCMoveBy::create(0.25,ccp(0,10)),1.5),NULL)))); displayLayer->addChild(downTip); displayLayer->runAction(CCEaseElasticOut::create(CCMoveTo::create(0.35, ccp(winSize.width-394,280)), 1)); CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect("sfx_popCreator.mp3"); CCObject* obj; int i = 0; ServerSelectScroll2* scroll = ServerSelectScroll2::create(-507); scroll->setOriPosition(ccp(winSize.width-890,370)); scroll->setContentSize(CCSizeMake(450, 200)); scroll->setMapSize(CCSizeMake(450, 50*(beans->count()+3))); scroll->setPosition(ccp(winSize.width-765+0.33*50*(beans->count()-1)-224,-scroll->getMapSize().height+scroll->getViewSize().height+scroll->getOriPosition().y+680)); scroll->runAction(CCEaseElasticOut::create(CCMoveBy::create(0.35, ccp(224,-680)), 1)); CCARRAY_FOREACH(beans,obj) { SeverInfoBean* bean = (SeverInfoBean*)obj; CCSprite* layer = CCSprite::create("transparent.png"); // CCSprite* transParent = CCSprite::create("transparent.png"); layer->setScaleX(270/layer->getContentSize().width); layer->setScaleY(33/layer->getContentSize().height); layer->setContentSize(CCSizeMake(225,33)); layer->setOpacity(100); CCLabelTTF* label = CCLabelTTF::create(bean->getServerName()->getCString(),"Arial",33); label->setPosition(ccp(90/layer->getScaleX(),16/layer->getScaleY())); layer->addChild(label,2); label->setTag(serverNameLabelTag); label->setScaleX(1/layer->getScaleX()); label->setScaleY(1/layer->getScaleY()); if (bean->serverId == cacheServerId) { label->setColor(ccc3(155,155,155)); } CCLabelTTF* stateLabel =CCLabelTTF::create(bean->getServerStatus()->getCString(),"Arial",30); stateLabel->setPosition(ccp(236/layer->getScaleX(),16/layer->getScaleY())); if (bean->getServerStatus()->compare("正常") == 0 || bean->getServerStatus()->compare("推荐") == 0) { stateLabel->setColor(ccc3(0,255,0)); } else if (bean->getServerStatus()->compare("繁忙") == 0) { stateLabel->setColor(ccc3(255,255,0)); } else if (bean->getServerStatus()->compare("火爆") == 0) { stateLabel->setColor(ccc3(167,87,168)); } else { stateLabel->setColor(ccc3(166,166,166)); } stateLabel->setScaleX(1/layer->getScaleX()); stateLabel->setScaleY(1/layer->getScaleY()); layer->addChild(stateLabel,2); MyMenuItem* serverItem = MyMenuItem::create(layer,this,menu_selector(ThirdServerScene::toChangeServer)); serverItem->setPosition(ccp(-(i+3)*17+135,26+50*(i+3))); // serverItem->setAnchorPoint(ccp(0,0)); serverItem->setUserObject(bean); scroll->addChild(serverItem); // dividingLength*i+33 i++; }