//------------------------------------------------------------------ // // LabelTTFTest // //------------------------------------------------------------------ LabelTTFTest::LabelTTFTest() { CCSize s = CCDirector::sharedDirector()->getWinSize(); // CCLabelBMFont CCLabelTTF *left = CCLabelTTF::labelWithString("align left", CCSizeMake(s.width, 50), CCTextAlignmentLeft, "Marker Felt", 32); CCLabelTTF *center = CCLabelTTF::labelWithString("align center", CCSizeMake(s.width, 50), CCTextAlignmentCenter, "Marker Felt", 32); CCLabelTTF *right = CCLabelTTF::labelWithString("align right", CCSizeMake(s.width, 50), CCTextAlignmentRight, "Marker Felt", 32); left->setPosition(ccp(s.width / 2, 200)); center->setPosition(ccp(s.width / 2, 150)); right->setPosition(ccp(s.width / 2, 100)); addChild(left); addChild(center); addChild(right); }
// on "init" you need to initialize your instance bool MainScene::init() { ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin(); CCSprite* bgSprite = CCSprite::create("img_direct.jpg"); bgSprite->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y)); this->addChild(bgSprite); CCLabelTTF* pLabelTitle = CCLabelTTF::create("SOOMLA Store\nExample", "GoodDog.otf", 54); pLabelTitle->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height - 100 + origin.y)); this->addChild(pLabelTitle, 1); CCLabelTTF* pLabelGame = CCLabelTTF::create("[YOUR GAME HERE]", "GoodDog.otf", 54); pLabelGame->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 - 0 + origin.y)); this->addChild(pLabelGame, 1); pRightBox = CCSprite::create("right_bg.png"); pRightBox->setScale(2.0f); pRightBox->setPosition(ccp(origin.x + visibleSize.width - (pRightBox->boundingBox().size.width / 2) - 50, 250 + origin.y)); this->addChild(pRightBox, 0); Soomla* pSoomla = Soomla::create("soomla_logo_new.png", pRightBox); pSoomla->setScale(2.0f); pSoomla->setPosition(ccp(origin.x + (pSoomla->boundingBox().size.width / 2) + 50, 250 + origin.y)); this->addChild(pSoomla, 0); CCLabelTTF* pLabelInstructions = CCLabelTTF::create("Drag the SooMLA-bot to the box top open store", "GoodDog.otf", 24); pLabelInstructions->setPosition(ccp(visibleSize.width/2 + origin.x, 100 + origin.y)); this->addChild(pLabelInstructions, 1); this->setKeypadEnabled(true); return true; }
bool TextFieldTTFActionTest::onTextFieldInsertText(CCTextFieldTTF * pSender, const char * text, int nLen) { // if insert enter, treat as default to detach with ime if ('\n' == *text) { return false; } // if the textfield's char count more than m_nCharLimit, doesn't insert text anymore. if (pSender->getCharCount() >= m_nCharLimit) { return true; } // create a insert text sprite aScut do some action CCLabelTTF * label = CCLabelTTF::create(text, FONT_NAME, FONT_SIZE); this->addChild(label); ccColor3B color = { 226, 121, 7}; label->setColor(color); // move the sprite from top to position CCPoint endPos = pSender->getPosition(); if (pSender->getCharCount()) { endPos.x += pSender->getContentSize().width / 2; } CCSize inputTextSize = label->getContentSize(); CCPoint beginPos(endPos.x, CCDirector::sharedDirector()->getWinSize().height - inputTextSize.height * 2); float duration = 0.5; label->setPosition(beginPos); label->setScale(8); CCAction * seq = CCSequence::create( CCSpawn::create( CCMoveTo::create(duration, endPos), CCScaleTo::create(duration, 1), CCFadeOut::create(duration), 0), CCCallFuncN::create(this, callfuncN_selector(TextFieldTTFActionTest::callbackRemoveNodeWhendidAction)), 0); label->runAction(seq); return false; }
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)); } } } }
// on "init" you need to initialize your instance bool PPMainMenuLayer::init() { bool bRet = false; do { ////////////////////////////////////////////////////////////////////////// // super init first ////////////////////////////////////////////////////////////////////////// CC_BREAK_IF(! CCLayerColor::initWithColor( ccc4(240, 235, 239, 255) ) ); ////////////////////////////////////////////////////////////////////////// CCEGLView* pEGLView = CCEGLView::sharedOpenGLView(); CCSize size = pEGLView->getVisibleSize(); CCLabelTTF* label = CCLabelTTF::create("JELLY", "Consolas", 40); label->setColor( ccc3(0, 0, 0) ); label->setAnchorPoint( ccp(0.5, 0.5) ); label->setPosition( ccp(size.width / 2, size.height * 2 / 3) ); addChild(label); PPCube* p = new PPCube( PPCube::PPCubeType_S ); p->setAnchorPoint( ccp(0.5, 0.5) ); p->setPosition( ccp( size.width / 2, (size.height * 2 / 3 - label->getContentSize().height) ) ); addChild(p); p->release(); label = CCLabelTTF::create("Play", "Consolas", 20); label->setColor( ccc3(0, 0, 0) ); CCMenuItemLabel* pMenuItem = CCMenuItemLabel::create(label, this, menu_selector(PPMainMenuLayer::MainMenuCallback)); CCMenu* pMenu =CCMenu::create(pMenuItem, NULL); pMenu->setAnchorPoint( ccp(0.5, 0.5) ); pMenu->setPosition( ccp(size.width / 2, size.height / 4) ); addChild(pMenu); bRet = true; } while (0); return bRet; }
CCTableViewCell* MainScene::tableCellAtIndex(CCTableView *table, unsigned int idx) { CCString *string = CCString::createWithFormat("%d", idx); CCTableViewCell *cell = table->dequeueCell(); if (!cell) { cell = new CCTableViewCell(); cell->autorelease(); CCSprite *sprite = CCSprite::create("Icon-144.png"); sprite->setAnchorPoint(CCPointZero); sprite->setPosition(ccp(0, 0)); sprite->setScaleX(2); cell->addChild(sprite); CCLabelTTF *label = CCLabelTTF::create(string->getCString(), "Helvetica", 20.0); label->setPosition(CCPointZero); label->setAnchorPoint(CCPointZero); label->setTag(123); cell->addChild(label); CCMenuItemImage *pBtn = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(MainScene::tableViewSubBtnCallback)); CCMenu* pMenu = CCMenu::create(pBtn, NULL); pBtn->setPosition(ccp(pBtn->getContentSize().width/2,pBtn->getContentSize().height/2)); pMenu->setPosition(CCPointZero); cell->addChild(pMenu, 1); cell->setTag(idx); } else { CCLabelTTF *label = (CCLabelTTF*)cell->getChildByTag(123); label->setString(string->getCString()); } return cell; }
void MainGameScene::showGameCountLabel() { CCString* countString = CCString::createWithFormat("%d",totalGameCount); CCSprite* pTouchWaku = (CCSprite*)this->getChildByTag(tagTouchWaku); if(pTouchWaku){ CCLabelTTF* countLabel = (CCLabelTTF*)pTouchWaku->getChildByTag(tagGameCountLavel); if(countLabel){ countLabel->setString(countString->getCString()); return; } }else{ CCSize winSize = CCDirector::sharedDirector()->getWinSize(); CCSprite* pTouchWaku= CCSprite::create("touch_waku.png"); pTouchWaku->setScale(0.5); CCSize pTouchSize = pTouchWaku->getContentSize(); pTouchWaku->setPosition(ccp(winSize.width - pTouchSize.width * 0.4, winSize.height - pTouchSize.height * 0.4)); pTouchWaku->setTag(tagTouchWaku); CCLabelTTF* countLabel; countLabel = CCLabelTTF::create(countString->getCString(), "Arial", 80.0); countLabel->setPosition(ccp(pTouchSize.width * 0.5, pTouchSize.height * 0.6)); countLabel->setColor(ccc3(0, 0, 0)); countLabel->setTag(tagGameCountLavel); CCLabelTTF* countLabel2; countLabel2 = CCLabelTTF::create("touch", "Arial", 50.0); countLabel2->setPosition(ccp(pTouchSize.width * 0.5, pTouchSize.height * 0.3)); countLabel2->setColor(ccc3(0, 0, 0)); pTouchWaku->addChild(countLabel); pTouchWaku->addChild(countLabel2); this->addChild(pTouchWaku); } }
bool GameButton::initWithText(const char * text, bool isBig) { if (!CCSprite::init()) { return false; } CCString* btnFrame = (isBig) ? CCString::create("button_big.png") : CCString::create("button_small.png"); int fSize = 18 * Utils::getArtScaleFactor(); this->setDisplayFrame(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName(btnFrame->getCString())); CCLabelTTF *label = CCLabelTTF::create(text, CCString::createWithFormat("%s.ttf",FONT_MAIN)->getCString(), fSize + isBig * fSize); label->setPosition(ccp(this->getContentSize().width/2,this->getContentSize().height/2)); this->addChild(label,1); CCLabelTTF *labelShadow = CCLabelTTF::create(text, CCString::createWithFormat("%s.ttf",FONT_MAIN)->getCString(), fSize + isBig * fSize); labelShadow->setPosition(ccp(this->getContentSize().width/2 - (2 + isBig * 2),this->getContentSize().height/2)); labelShadow->setColor(ccBLACK); labelShadow->setOpacity(150); this->addChild(labelShadow,0); this->setScale(Utils::getScale()); return true; }
void ArmatureTestLayer::onEnter() { CCLayer::onEnter(); // add title and subtitle std::string str = title(); const char *pTitle = str.c_str(); CCLabelTTF *label = CCLabelTTF::create(pTitle, "Arial", 18); label->setColor(ccc3(0, 0, 0)); addChild(label, 1, 10000); label->setPosition( ccp(VisibleRect::center().x, VisibleRect::top().y - 30) ); std::string strSubtitle = subtitle(); if( ! strSubtitle.empty() ) { CCLabelTTF *l = CCLabelTTF::create(strSubtitle.c_str(), "Arial", 18); l->setColor(ccc3(0, 0, 0)); addChild(l, 1, 10001); l->setPosition( ccp(VisibleRect::center().x, VisibleRect::top().y - 60) ); } // add menu backItem = CCMenuItemImage::create(s_pPathB1, s_pPathB2, this, menu_selector(ArmatureTestLayer::backCallback) ); restartItem = CCMenuItemImage::create(s_pPathR1, s_pPathR2, this, menu_selector(ArmatureTestLayer::restartCallback) ); nextItem = CCMenuItemImage::create(s_pPathF1, s_pPathF2, this, menu_selector(ArmatureTestLayer::nextCallback) ); CCMenu *menu = CCMenu::create(backItem, restartItem, nextItem, NULL); menu->setPosition(CCPointZero); backItem->setPosition(ccp(VisibleRect::center().x - restartItem->getContentSize().width * 2, VisibleRect::bottom().y + restartItem->getContentSize().height / 2)); restartItem->setPosition(ccp(VisibleRect::center().x, VisibleRect::bottom().y + restartItem->getContentSize().height / 2)); nextItem->setPosition(ccp(VisibleRect::center().x + restartItem->getContentSize().width * 2, VisibleRect::bottom().y + restartItem->getContentSize().height / 2)); addChild(menu, 100); setShaderProgram(CCShaderCache::sharedShaderCache()->programForKey(kCCShader_PositionTextureColor)); }
TestLayer2::TestLayer2() { float x,y; CCSize size = CCDirector::sharedDirector()->getWinSize(); x = size.width; y = size.height; CCSprite* bg1 = CCSprite::create(s_back2); bg1->setPosition( ccp(size.width/2, size.height/2) ); addChild(bg1, -1); CCLabelTTF* title = CCLabelTTF::create((transitions[s_nSceneIdx]).c_str(), "Thonburi", 32 ); addChild(title); title->setColor( ccc3(255,32,32) ); title->setPosition( ccp(x/2, y-100) ); CCLabelTTF* label = CCLabelTTF::create("SCENE 2", "Marker Felt", 38); label->setColor( ccc3(16,16,255)); label->setPosition( ccp(x/2,y/2)); addChild( label); // menu CCMenuItemImage *item1 = CCMenuItemImage::create(s_pPathB1, s_pPathB2, this, menu_selector(TestLayer2::backCallback) ); CCMenuItemImage *item2 = CCMenuItemImage::create(s_pPathR1, s_pPathR2, this, menu_selector(TestLayer2::restartCallback) ); CCMenuItemImage *item3 = CCMenuItemImage::create(s_pPathF1, s_pPathF2, this, menu_selector(TestLayer2::nextCallback) ); CCMenu *menu = CCMenu::create(item1, item2, item3, NULL); menu->setPosition( CCPointZero ); item1->setPosition(ccp(VisibleRect::center().x - item2->getContentSize().width*2, VisibleRect::bottom().y+item2->getContentSize().height/2)); item2->setPosition(ccp(VisibleRect::center().x, VisibleRect::bottom().y+item2->getContentSize().height/2)); item3->setPosition(ccp(VisibleRect::center().x + item2->getContentSize().width*2, VisibleRect::bottom().y+item2->getContentSize().height/2)); addChild(menu, 1); schedule(schedule_selector(TestLayer2::step), 1.0f); }
TestLayer2::TestLayer2() { float x,y; CCSize size = CCDirector::sharedDirector()->getWinSize(); x = size.width; y = size.height; CCSprite* bg1 = CCSprite::spriteWithFile(s_back2); bg1->setPosition( CCPointMake(size.width/2, size.height/2) ); addChild(bg1, -1); CCLabelTTF* title = CCLabelTTF::labelWithString((transitions[s_nSceneIdx]).c_str(), "Thonburi", 32 ); addChild(title); title->setColor( ccc3(255,32,32) ); title->setPosition( CCPointMake(x/2, y-100) ); CCLabelTTF* label = CCLabelTTF::labelWithString("SCENE 2", "Marker Felt", 38); label->setColor( ccc3(16,16,255)); label->setPosition( CCPointMake(x/2,y/2)); addChild( label); // menu CCMenuItemImage *item1 = CCMenuItemImage::itemFromNormalImage(s_pPathB1, s_pPathB2, this, menu_selector(TestLayer2::backCallback) ); CCMenuItemImage *item2 = CCMenuItemImage::itemFromNormalImage(s_pPathR1, s_pPathR2, this, menu_selector(TestLayer2::restartCallback) ); CCMenuItemImage *item3 = CCMenuItemImage::itemFromNormalImage(s_pPathF1, s_pPathF2, this, menu_selector(TestLayer2::nextCallback) ); CCMenu *menu = CCMenu::menuWithItems(item1, item2, item3, NULL); menu->setPosition( CCPointZero ); item1->setPosition( CCPointMake( x/2 - 100,30) ); item2->setPosition( CCPointMake( x/2, 30) ); item3->setPosition( CCPointMake( x/2 + 100,30) ); addChild(menu, 1); schedule(schedule_selector(TestLayer2::step), 1.0f); }
CCTableViewCell* HelloWorld::tableCellAtIndex(CCTableView *table, unsigned int idx) { CCDictionary* pRecipe = (CCDictionary*)m_pRecipes->objectAtIndex(idx); CCString* pName = (CCString*)pRecipe->objectForKey("name"); CCString* pNo = (CCString*)pRecipe->objectForKey("recipe"); CCString* pStep = (CCString*)pRecipe->objectForKey("step"); CCString* string; if (pStep!=NULL) { string = CCString::createWithFormat("レシピ %s (ステップ%s): %s", pNo->getCString(), pStep->getCString(), pName->getCString()); } else if (pNo->isEqual(CCString::create("0"))) { string = pName; } else { string = CCString::createWithFormat("レシピ %s : %s", pNo->getCString(), pName->getCString()); } CCTableViewCell *cell = table->dequeueCell(); if (!cell) { cell = new CCTableViewCell(); cell->autorelease(); CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); int fontSize = CCEGLView::sharedOpenGLView()->getDesignResolutionSize().height/320.0f * 20; CCLabelTTF *label = CCLabelTTF::create(string->getCString(), "Helvetica", fontSize, CCSizeMake(visibleSize.width, visibleSize.height/5), kCCTextAlignmentCenter); label->setPosition(CCPointZero); label->setAnchorPoint(CCPointZero); label->setTag(123); cell->addChild(label); } else { CCLabelTTF *label = (CCLabelTTF*)cell->getChildByTag(123); label->setString(string->getCString()); } return cell; }
bool GameOverLayer::init() { if( !CCLayer::init() ) return false; CCSize winSize = CCDirector::sharedDirector()->getWinSize(); // add game over text in the middle of the screen with red color CCLabelTTF *gameOverLabel = CCLabelTTF::create("GAME OVER", "Thonburi", 50); gameOverLabel->setColor( ccc3(255, 0, 0) ); gameOverLabel->setPosition( ccp(winSize.width / 2, winSize.height / 2 + 50) ); this->addChild(gameOverLabel); // add instruction below the game over text CCLabelTTF *infoLabel = CCLabelTTF::create("touch to continue", "Thonburi", 20); infoLabel->setColor( ccc3(255, 255, 255) ); infoLabel->setPosition( ccp(winSize.width / 2, winSize.height / 2 - 20) ); this->addChild(infoLabel); this->setTouchEnabled(true); return true; }
void CreatModeDisplayLayer::setResult(bool state,std::string name, double value) { CCLabelTTF *creatStateLabel; if(!state) { creatStateLabel = CCLabelTTF::create("创造失败T T","DFGirlKelvin",60); creatStateLabel->setPosition(ccp(320,500)); this->addChild(creatStateLabel,2); } else { creatStateLabel = CCLabelTTF::create("创造成功^ ^","DFGirlKelvin",60); creatStateLabel->setPosition(ccp(320,500)); this->addChild(creatStateLabel,2); char buffer[30]; sprintf(buffer, "恭喜你创造出 %s",name.c_str()); CCLabelTTF *creatResult = CCLabelTTF::create(buffer,"DFGirlKelvin",40); creatStateLabel->setPosition(ccp(320,300)); this->addChild(creatResult,2); sprintf(buffer, "hasCreated-%s",name.c_str()); if(!CCUserDefault::sharedUserDefault()->getBoolForKey(buffer)) { CCUserDefault::sharedUserDefault()->setBoolForKey(buffer,true); sprintf(buffer, "%s 加入图鉴",name.c_str()); CCLabelTTF *addLabel = CCLabelTTF::create(buffer,"DFGirlKelvin",40); addLabel->setPosition(ccp(320,200)); this->addChild(addLabel,2); } int num = CCUserDefault::sharedUserDefault()->getIntegerForKey(name.c_str()) + 1; CCUserDefault::sharedUserDefault()->setIntegerForKey(name.c_str(), num); } }
bool TitleBarLayer::init() { bool result = false; do { CC_BREAK_IF(!CCLayer::init()); CCSize winSize = CCDirector::sharedDirector()->getWinSize(); CCSprite* titlebar = CCSprite::spriteWithSpriteFrameName("title_start"); CC_BREAK_IF(!titlebar); titlebar->setPosition(CCPointMake(winSize.width * 0.5f, titlebar->getContentSize().height * 0.5f)); addChild(titlebar); CCLabelTTF* descLabel = CCLabelTTF::labelWithString("", CCSizeMake(238.0f, 50.0f), CCTextAlignmentLeft, "Arial", 12.0f); descLabel->setPosition(CCPointMake(190.0f, 55.0f)); descLabel->setColor(ccWHITE); addChild(descLabel,kZLabel,kTagDescriptLabel); CCPoint turnPosition = CCPointMake(34.0f,40.0f); CCLabelTTF* turnLabel = CCLabelTTF::labelWithString("", "Arial-BoldMT", 24.0f); turnLabel->setPosition(turnPosition); turnLabel->setColor(ccBLACK); addChild(turnLabel,kZLabel,kTagTurnLabel); result = true; } while (0); return result; }
void Store::powerupButtonTapped(CCObject*object) { // if([PeanutsPopup isActive])return; AudioManager::PlayEffect(AUDIO_SELECT); CCNode *buttonNode = (CCNode*)object; //CGPoint position = [buttonNode convertToWorldSpace:ccp(0,0)]; //if(position.y>190.0f || position.y < -5.0f)return; //[self doItemSelect:sender]; for(int i = 0; i < NUM_POWERUP_ITEMS; i++) { if(m_PowerUpbuttons[i] == buttonNode) { CCSize dim; dim.width = 200.0f; dim.height = 25.0f; m_PowerUpNames[i]->removeFromParentAndCleanup(true); if(i==0) { //fire if(SaveLoad::m_SaveData.currency >= s_PowerUpItemCost[i]) { SaveLoad::m_SaveData.numLevelFire++; SaveLoad::m_SaveData.currency -= s_PowerUpItemCost[i]; char labelString[32]; sprintf(labelString, "%s(%d)",s_PowerUpItemName[i],SaveLoad::m_SaveData.numLevelFire); CCLabelTTF* label = CCLabelTTF::create(labelString,"Jacoby ICG Black.ttf",20,dim,kCCTextAlignmentLeft); label->setColor(ccc3(237,188,0)); label->setPosition(ccp(NAME_X,NAME_Y)); buttonNode->addChild(label); m_PowerUpNames[i] = label; } else { //[self addChild:[PeanutsPopup node]]; } } else if (i==1) { //slow clock if(SaveLoad::m_SaveData.currency >= s_PowerUpItemCost[i]) { SaveLoad::m_SaveData.numTimeSlow++; SaveLoad::m_SaveData.currency -= s_PowerUpItemCost[i]; char labelString[32]; sprintf(labelString, "%s(%d)",s_PowerUpItemName[i],SaveLoad::m_SaveData.numTimeSlow); CCLabelTTF* label = CCLabelTTF::create(labelString,"Jacoby ICG Black.ttf",20,dim,kCCTextAlignmentLeft); label->setColor(ccc3(237,188,0)); label->setPosition(ccp(NAME_X,NAME_Y)); buttonNode->addChild(label); m_PowerUpNames[i] = label; } else { //[self addChild:[PeanutsPopup node]]; } } else { //peanuts if(SaveLoad::m_SaveData.currency >= s_PowerUpItemCost[i]) { SaveLoad::m_SaveData.numDoubleNuts++; SaveLoad::m_SaveData.currency -= s_PowerUpItemCost[i]; char labelString[32]; sprintf(labelString, "%s(%d)",s_PowerUpItemName[i],SaveLoad::m_SaveData.numDoubleNuts); CCLabelTTF* label = CCLabelTTF::create(labelString,"Jacoby ICG Black.ttf",20,dim,kCCTextAlignmentLeft); label->setColor(ccc3(237,188,0)); label->setPosition(ccp(NAME_X,NAME_Y)); buttonNode->addChild(label); m_PowerUpNames[i] = label; } else { //[self addChild:[PeanutsPopup node]]; } } SaveLoad::Save(); } } }
void Store::BuildBikes(cocos2d::CCMenu* menu) { float scale = ScreenHelper::getTextureScale(); CCMenuItemImage *topBar = CCMenuItemImage::create("ctm_UI_TransparentButton.png","ctm_UI_TransparentButton.png",this,menu_selector(Store::nullButtonTapped)); topBar->setScale(scale); CCLabelTTF* label1 = CCLabelTTF::create("BIKES","Jacoby ICG Black.ttf",20); label1->setColor(ccc3(43,197,231)); label1->setPosition(ccp(-170+CATEGORY_OFFSET,17)); topBar->addChild(label1); menu->addChild(topBar); for(int i = 0; i < NUM_BIKE_ITEMS; i++) { CCMenuItem *temp = CCMenuItemImage::create("ctm_Store_GrayStrip.png","ctm_Store_GrayStrip.png","ctm_Store_LitStrip.png",this,menu_selector(Store::bikeButtonTapped) ); CCSprite *sprite = CCSprite::createWithSpriteFrameName(s_BikeItemImg[i]); sprite->setPosition(ccp(ICON_X,ICON_Y)); temp->addChild(sprite); CCSize dim; dim.width = 200.0f; dim.height = 25.0f; CCLabelTTF *label = CCLabelTTF::create(s_BikeItemName[i],"Jacoby ICG Black.ttf",20,dim,kCCTextAlignmentLeft); label->setColor(ccc3(237,188,0)); label->setPosition(ccp(NAME_X,NAME_Y)); temp->addChild(label); const char *status = NULL; if(SaveLoad::m_SaveData.bikes[i] & SaveLoad::SELECTED) status = "Selected"; else if(SaveLoad::m_SaveData.bikes[i] & SaveLoad::UNLOCKED) status = "Unlocked"; else status = "Locked"; dim.width = 400.0f; dim.height = 18.0f; label = CCLabelTTF::create(status,"Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); temp->addChild(label,0,15); m_BikeDescriptions[i] = label; if(SaveLoad::m_SaveData.bikes[i]==0) { //CGSize dim; dim.width = 50.0f; dim.height = 20.0f; char currencyStr[32]; sprintf(currencyStr,"$%d",s_BikeItemCost[i]); CCLabelBMFont *BMfontLabel = CCLabelBMFont::create(currencyStr,"JacobyICGBlack18pnt.fnt"); BMfontLabel->setAnchorPoint(ccp(1.0f,0.5f)); BMfontLabel->setPosition(ccp(COST_X,COST_Y)); temp->addChild(BMfontLabel,0,42); } temp->setScale(scale); menu->addChild(temp); m_Bikebuttons[i] = temp; } //add a bottom bar to push things up topBar = CCMenuItemImage::create("ctm_UI_TransparentButton.png","ctm_UI_TransparentButton.png",this,menu_selector(Store::nullButtonTapped)); topBar->setScale(scale); menu->addChild(topBar); }
void Store::BuildPowerUps(cocos2d::CCMenu* menu) { float scale = ScreenHelper::getTextureScale(); CCMenuItemImage *topBar = CCMenuItemImage::create("ctm_UI_TransparentButton.png","ctm_UI_TransparentButton.png",this,menu_selector(Store::nullButtonTapped)); topBar->setScale(scale); CCLabelTTF* label1 = CCLabelTTF::create("POWERUPS","Jacoby ICG Black.ttf",20); label1->setColor(ccc3(43,197,231)); label1->setPosition(ccp(-148+CATEGORY_OFFSET,17)); topBar->addChild(label1); menu->addChild(topBar); for(int i = 0; i < NUM_POWERUP_ITEMS; i++) { CCMenuItem *temp = CCMenuItemImage::create("ctm_Store_GrayStrip.png","ctm_Store_GrayStrip.png","ctm_Store_LitStrip.png",this,menu_selector(Store::powerupButtonTapped) ); CCSprite *sprite = CCSprite::createWithSpriteFrameName(s_PowerUpItemImg[i]); sprite->setPosition(ccp(ICON_X,ICON_Y)); temp->addChild(sprite); char labelString[32]; if(i==0) { if(SaveLoad::m_SaveData.numLevelFire) sprintf(labelString,"%s(%d)",s_PowerUpItemName[i],SaveLoad::m_SaveData.numLevelFire); else sprintf(labelString,"%s",s_PowerUpItemName[i]); } if(i==1) { if(SaveLoad::m_SaveData.numTimeSlow) sprintf(labelString,"%s(%d)",s_PowerUpItemName[i],SaveLoad::m_SaveData.numTimeSlow); else sprintf(labelString,"%s",s_PowerUpItemName[i]); } if(i==2) { if(SaveLoad::m_SaveData.numDoubleNuts) sprintf(labelString,"%s(%d)",s_PowerUpItemName[i],SaveLoad::m_SaveData.numDoubleNuts); else sprintf(labelString,"%s",s_PowerUpItemName[i]); } CCSize dim; dim.width = 200.0f; dim.height = 25.0f; CCLabelTTF *label = CCLabelTTF::create(labelString,"Jacoby ICG Black.ttf",20,dim,kCCTextAlignmentLeft); label->setColor(ccc3(237,188,0)); label->setPosition(ccp(NAME_X,NAME_Y)); temp->addChild(label); m_PowerUpNames[i] = label; dim.width = 400.0f; dim.height = 18.0f; label = CCLabelTTF::create(s_PowerUpItemDesc[i],"Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); temp->addChild(label,0,15); //CGSize dim; dim.width = 50.0f; dim.height = 20.0f; char currencyStr[32]; sprintf(currencyStr,"$%d",s_PowerUpItemCost[i]); CCLabelBMFont *BMfontLabel = CCLabelBMFont::create(currencyStr,"JacobyICGBlack18pnt.fnt"); BMfontLabel->setAnchorPoint(ccp(1.0f,0.5f)); BMfontLabel->setPosition(ccp(COST_X,COST_Y)); temp->addChild(BMfontLabel); temp->setScale(scale); menu->addChild(temp); m_PowerUpbuttons[i] = temp; } }
void Store::BuildUpgrades(cocos2d::CCMenu* menu) { float scale = ScreenHelper::getTextureScale(); CCMenuItemImage *topBar = CCMenuItemImage::create("ctm_UI_TransparentButton.png","ctm_UI_TransparentButton.png",this,menu_selector(Store::nullButtonTapped)); topBar->setScale(scale); CCLabelTTF* label1 = CCLabelTTF::create("UPGRADES","Jacoby ICG Black.ttf",20); label1->setColor(ccc3(43,197,231)); label1->setPosition(ccp(-150+CATEGORY_OFFSET,17)); topBar->addChild(label1); menu->addChild(topBar); int unlockLevel[NUM_UPGRADE_ITEMS]; unlockLevel[0] = SaveLoad::m_SaveData.turboLockLevel; unlockLevel[1] = SaveLoad::m_SaveData.trampLockLevel; unlockLevel[2] = SaveLoad::m_SaveData.timeLockLevel; unlockLevel[3] = SaveLoad::m_SaveData.peanutLockLevel; unlockLevel[4] = SaveLoad::m_SaveData.trickLockLevel; unlockLevel[5] = SaveLoad::m_SaveData.flipLockLevel; unlockLevel[6] = SaveLoad::m_SaveData.fireLockLevel; for(int i = 0; i < NUM_UPGRADE_ITEMS; i++) { CCMenuItem *temp = CCMenuItemImage::create("ctm_Store_GrayStrip.png","ctm_Store_GrayStrip.png","ctm_Store_LitStrip.png",this,menu_selector(Store::buyUpgradeButtonTapped) ); CCSprite *sprite; sprite = CCSprite::create("ctm_Store_PurchaseBars.png"); sprite->setPosition(ccp(POWER_UP_BAR_OFFSET+302-120,POWER_UP_BAR_OFFSET_Y+21)); temp->addChild(sprite); if(unlockLevel[i]>=1) { sprite = CCSprite::create("ctm_Store_LitPurchaseBar.png"); sprite->setPosition(ccp(POWER_UP_BAR_OFFSET+290-120,POWER_UP_BAR_OFFSET_Y+20)); temp->addChild(sprite); } if(unlockLevel[i]>=2) { sprite = CCSprite::create("ctm_Store_LitPurchaseBar.png"); sprite->setPosition(ccp(POWER_UP_BAR_OFFSET+305-120,POWER_UP_BAR_OFFSET_Y+20)); temp->addChild(sprite); } if(unlockLevel[i]>=3) { sprite = CCSprite::create("ctm_Store_LitPurchaseBar.png"); sprite->setPosition(ccp(POWER_UP_BAR_OFFSET+320-120,POWER_UP_BAR_OFFSET_Y+20)); temp->addChild(sprite); } sprite = CCSprite::createWithSpriteFrameName(s_UpgradeItemImg[i]); sprite->setPosition(ccp(ICON_X,ICON_Y)); temp->addChild(sprite); CCSize dim; dim.width = 200.0f; dim.height = 25.0f; CCLabelTTF *label = CCLabelTTF::create(s_UpgradeItemName[i],"Jacoby ICG Black.ttf",20,dim,kCCTextAlignmentLeft); label->setColor(ccc3(237,188,0)); label->setPosition(ccp(NAME_X,NAME_Y)); temp->addChild(label); dim.width = 400.0f; dim.height = 18.0f; label = CCLabelTTF::create(s_UpgradeItemDesc[i][unlockLevel[i]],"Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); temp->addChild(label,0,15); //CGSize dim; dim.width = 50.0f; dim.height = 20.0f; char currencyStr[32]; if(s_UpgradeItemCost[i][unlockLevel[i]] > 0) sprintf(currencyStr,"$%d",s_UpgradeItemCost[i][unlockLevel[i]]); else sprintf(currencyStr,"Max"); CCLabelBMFont *BMfontLabel = CCLabelBMFont::create(currencyStr,"JacobyICGBlack18pnt.fnt"); BMfontLabel->setAnchorPoint(ccp(1.0f,0.5f)); BMfontLabel->setPosition(ccp(COST_X,COST_Y)); m_UpgradeCosts[i] = BMfontLabel; temp->addChild(BMfontLabel); temp->setScale(scale); menu->addChild(temp); m_UpgradeButtons[i] = temp; } }
// initialize your instance here Store::Store() { //SaveLoad::m_SaveData.currency = 300000; //SaveLoad::SaveGame(); // enable touches setTouchEnabled( true ); float scale = ScreenHelper::getTextureScale(); float scaleX = ScreenHelper::getTextureScaleX(); float scaleY = ScreenHelper::getTextureScaleY(); CCTextureCache::sharedTextureCache()->addPVRImage("ctm_Buttons.pvr.ccz"); CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("ctm_Buttons.plist"); CCTextureCache::sharedTextureCache()->addPVRImage("ctm_Icons.pvr.ccz"); CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("ctm_Icons.plist"); CCSprite *sprite = CCSprite::create("MainBackFiller.png"); sprite->setScaleX(scaleX*1.2f); sprite->setScaleY(scaleY*1.2f); sprite->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_CENTER,0.0f,-32.0f)); addChild(sprite); sprite = CCSprite::create("ctm_UI_topOverlayA_ver1.png"); sprite->setScaleX(scaleX); sprite->setScaleY(scaleY); sprite->setPosition(ScreenHelper::getAnchorPoint(ScreenHelper::ANCHOR_CENTER)); addChild(sprite,2); CCLabelTTF *label = CCLabelTTF::create("STORE", "impact.ttf", 42*scale); addChild(label, 2); label->setColor(ccc3(0,0,0)); label->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_TOP_CENTER,2.0f,-52.0f)); label = CCLabelTTF::create("STORE", "impact.ttf", 42*scale); addChild(label, 2); label->setColor(ccc3(237,188,0)); label->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_TOP_CENTER,0.0f,-50.0f)); CCMenuItem *BackButton = CCMenuItemSprite::create(CCSprite::createWithSpriteFrameName("ctm_Back_Button.png"), CCSprite::createWithSpriteFrameName("ctm_Back_Button_Down.png"), this, menu_selector(Store::backButtonTapped)); BackButton->setScale(scale); BackButton->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_TOP_LEFT,50.0f,-50.0f)); ReturnButton = BackButton; CCSprite *spritePeanut = CCSprite::createWithSpriteFrameName("ctm_UI_Peanuts_Btn_ver1.png"); CCSprite *spritePeanutDown = CCSprite::createWithSpriteFrameName("ctm_UI_Peanuts_Btn_Down.png"); sprite = CCSprite::createWithSpriteFrameName("ctm_UI_PeanutsGlow_Btn_ver1.png"); sprite->setPosition(ccp(136/2, 104/2)); spritePeanut->addChild(sprite); CCMenuItem *PeanutsButton = CCMenuItemSprite::create(spritePeanut,spritePeanutDown,this,menu_selector(Store::peanutButtonTapped)); PeanutsButton->setScale(scale); PeanutsButton->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_BOTTOM_LEFT,90.0f,130.0f)); CCMenu* backmenu = CCMenu::create(BackButton, NULL); backmenu->setPosition(ScreenHelper::getAnchorPoint(ScreenHelper::ANCHOR_BOTTOM_LEFT)); addChild(backmenu,4); m_slideControl = CCNode::create(); addChild(m_slideControl); CCMenu* peanutmenu = CCMenu::create(PeanutsButton, NULL); peanutmenu->setPosition(ScreenHelper::getAnchorPoint(ScreenHelper::ANCHOR_BOTTOM_LEFT)); m_slideControl->addChild(peanutmenu,4); CCScrollingMenu *screenMenu = CCScrollingMenu::create(); screenMenu->setPosition(0,0); BuildUpgrades(screenMenu); BuildPowerUps(screenMenu); BuildCharacters(screenMenu); BuildBikes(screenMenu); screenMenu->alignItemsVerticallyWithPadding(-10*scaleY); CCSize viewSize; viewSize.width = 320.0f*scaleX; viewSize.height = 1450.0f*scaleY/(scaleY/scale); CCScrollView *scrollView = CCScrollView::create(viewSize,screenMenu); //scrollView->setBounceable(false); //temp = ComingSoonButton->getPositionX()/scaleX-480.0f; //temp += (ComingSoonButton->getContentSize().width)/scale; scrollView->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_BOTTOM_LEFT,160,275.0f*(scaleY/scale)-(viewSize.height/((scaleY+scale)/2.0f))/2.0f)); scrollView->setContentSize(screenMenu->getContentSize()); scrollView->setContentOffset(ccp(312.0f/2.0f*scaleX,0.0f)); scrollView->setDirection(kCCScrollViewDirectionVertical); m_slideControl->addChild(scrollView); char currencyStr[32]; sprintf(currencyStr,"$%d",SaveLoad::m_SaveData.currency); CCSize dim; dim.width = 100.0f; dim.height = 25.0f; m_currency = CCLabelBMFont::create(currencyStr,"JacobyICGBlack22pnt.fnt"); m_currency->setScale(scale); m_currency->setAnchorPoint(ccp(1.0f,0.5f)); m_currency->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_BOTTOM_LEFT,456, 238)); addChild(m_currency,10); if(SaveLoad::m_SaveData.beenToStore==0) { SaveLoad::m_SaveData.beenToStore=1; SaveLoad::Save(); // [TestFlight passCheckpoint:@"STORE_VISIT"]; } scheduleUpdate(); }
void Store::bikeButtonTapped(CCObject*object) { //if([PeanutsPopup isActive])return; AudioManager::PlayEffect(AUDIO_SELECT); CCNode *buttonNode = (CCNode*)object; //CGPoint position = [buttonNode convertToWorldSpace:ccp(0,0)]; //if(position.y>190.0f || position.y < -5.0f)return; //[self doItemSelect:sender]; CCSize dim; for(int i = 0; i < NUM_BIKE_ITEMS; i++) { if(m_Bikebuttons[i] == buttonNode) { if(SaveLoad::m_SaveData.bikes[i] & SaveLoad::SELECTED) return; if(SaveLoad::m_SaveData.bikes[i] & SaveLoad::UNLOCKED) { for(int j = 0; j < NUM_BIKE_ITEMS; j++) { if(SaveLoad::m_SaveData.bikes[j] & SaveLoad::SELECTED) { m_BikeDescriptions[j]->removeFromParentAndCleanup(true); dim.width = 400.0f; dim.height = 18.0f; CCLabelTTF* label = CCLabelTTF::create("Unlocked","Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); m_Bikebuttons[j]->addChild(label); m_BikeDescriptions[j] = label; SaveLoad::m_SaveData.bikes[j] &= ~SaveLoad::SELECTED; } } m_BikeDescriptions[i]->removeFromParentAndCleanup(true); dim.width = 400.0f; dim.height = 18.0f; CCLabelTTF* label = CCLabelTTF::create("Selected","Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); m_Bikebuttons[i]->addChild(label); m_BikeDescriptions[i] = label; SaveLoad::m_SaveData.bikes[i] |= SaveLoad::SELECTED; } else { if(SaveLoad::m_SaveData.currency >= s_BikeItemCost[i]) { for(int j = 0; j < NUM_BIKE_ITEMS; j++) { if(SaveLoad::m_SaveData.bikes[j] & SaveLoad::SELECTED) { m_BikeDescriptions[j]->removeFromParentAndCleanup(true); dim.width = 400.0f; dim.height = 18.0f; CCLabelTTF* label = CCLabelTTF::create("Unlocked","Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); m_Bikebuttons[j]->addChild(label); m_BikeDescriptions[j] = label; SaveLoad::m_SaveData.bikes[j] &= ~SaveLoad::SELECTED; } } SaveLoad::m_SaveData.bikes[i] |= SaveLoad::UNLOCKED; SaveLoad::m_SaveData.bikes[i] |= SaveLoad::SELECTED; SaveLoad::m_SaveData.currency -= s_BikeItemCost[i]; m_Bikebuttons[i]->getChildByTag(42)->removeFromParentAndCleanup(true); m_BikeDescriptions[i]->removeFromParentAndCleanup(true); dim.width = 400.0f; dim.height = 18.0f; CCLabelTTF* label = CCLabelTTF::create("Selected","Jacoby ICG Black.ttf",15,dim,kCCTextAlignmentLeft); label->setColor(ccc3(230,230,230)); label->setPosition(ccp(DESC_X,DESC_Y)); m_Bikebuttons[i]->addChild(label); m_BikeDescriptions[i] = label; } else { // [self addChild:[PeanutsPopup node]]; } } SaveLoad::Save(); } } }
CCLayer* PowerQuest::getDescLayer() { CCLayer* layer = CCLayer::create(); CCLabelTTF* descTitle = CCLabelTTF::create("任务简报:","Arial",25); descTitle->setAnchorPoint(ccp(0,0.5)); descTitle->setPosition(ccp(25,360)); descTitle->setColor(ccc3(255,120,0)); CCLabelTTF* desc = CCLabelTTF::create(GXUtil::insertNewline(getDescStr()->getCString(),15).c_str(),"Arial",23,CCSizeZero, kCCTextAlignmentLeft, kCCVerticalTextAlignmentTop); desc->setAnchorPoint(ccp(0,1)); desc->setPosition(ccp(25,340)); desc->setColor(ccc3(230, 207, 185)); CCLabelTTF* destTitle = CCLabelTTF::create("任务目标:","Arial",25); destTitle->setAnchorPoint(ccp(0,1)); destTitle->setPosition(ccp(25,337-desc->getContentSize().height)); destTitle->setColor(ccc3(255,120,0)); char str[100] = {0}; int i=0; for (i=0; i<costResourceTagList->count(); i++) { int costTag = ((GXintValue*)costResourceTagList->objectAtIndex(i))->getValue(); int costCount = ((GXintValue*)costResourceCountList->objectAtIndex(i))->getValue(); CCSprite* tixing; if (MyGameInfo::getInstance()->getResource(costTag) >= costCount ) { sprintf(str," [已完成] 需消耗%d",costCount); tixing = CCSprite::createWithSpriteFrameName("questAppear.png"); tixing->setScale(0.45); tixing->setPosition(ccp(55,293-desc->getContentSize().height-i*32)); tixing->runAction(CCRepeatForever::create(static_cast<CCSequence*>(CCSequence::create(CCScaleTo::create(1, 0.5), CCScaleTo::create(1,0.45),NULL) ))); } else { sprintf(str," [未完成] 需消耗%d",costCount); tixing = CCSprite::createWithSpriteFrameName("questQuestion.png"); tixing->setScale(0.45); tixing->setPosition(ccp(55,293-desc->getContentSize().height-i*32)); } CCLabelTTF* dest = CCLabelTTF::create(str,"Arial",23); dest->setAnchorPoint(ccp(0,1)); dest->setPosition(ccp(25,305-desc->getContentSize().height-i*32)); dest->setColor(ccc3(230, 207, 185)); CCSprite* icon = MyUtil::getInstance()->getResourceIcon(costTag); icon->setScale(Mathlib::min(32/icon->getContentSize().width,32/icon->getContentSize().height)); icon->setPosition(ccp(35+dest->getContentSize().width,293-desc->getContentSize().height-i*32)); layer->addChild(dest); layer->addChild(icon); layer->addChild(tixing); } if(deadLine > 0) { struct cc_timeval now; CCTime::gettimeofdayCocos2d(&now, NULL); CCSprite* tixing1; if (now.tv_sec <= deadLine/1000 ) { sprintf(str," 需在『%s』之前完成",getdeadLineLabel()->getCString()); tixing1 = CCSprite::createWithSpriteFrameName("questAppear.png"); tixing1->setScale(0.45); tixing1->setPosition(ccp(55,293-desc->getContentSize().height-i*32)); tixing1->runAction(CCRepeatForever::create(static_cast<CCSequence*>(CCSequence::create(CCScaleTo::create(1, 0.5), CCScaleTo::create(1,0.45),NULL) ))); } else { sprintf(str," 已经超过『%s』,无法完成",getdeadLineLabel()->getCString()); tixing1 = CCSprite::createWithSpriteFrameName("questQuestion.png"); tixing1->setScale(0.45); tixing1->setPosition(ccp(55,293-desc->getContentSize().height-i*32)); } CCLabelTTF* dest1 = CCLabelTTF::create(str,"Arial",23); dest1->setAnchorPoint(ccp(0,1)); dest1->setPosition(ccp(25,305-desc->getContentSize().height-i*32)); dest1->setColor(ccc3(230, 207, 185)); layer->addChild(dest1); layer->addChild(tixing1); } layer->addChild(descTitle); layer->addChild(desc); layer->addChild(destTitle); return layer; }
bool MPMapLayer::init() { CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin(); // Exit button CCMenuItemImage *backItem = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(MPMapLayer::titleCallback)); backItem->setPosition(ccp(origin.x + visibleSize.width - backItem->getContentSize().width/2 , origin.y + backItem->getContentSize().height/2)); CCMenu* menu = CCMenu::create(backItem, NULL); menu->setPosition(CCPointZero); this->addChild(menu, 1); // Screen Title CCLabelTTF* label = CCLabelTTF::create("A Map Scene", "Arial", TITLE_FONT_SIZE); label->setPosition(ccp(origin.x + visibleSize.width/2, origin.y + visibleSize.height - label->getContentSize().height)); this->addChild(label, 1); // Tile Map // CCTMXTiledMap *map = CCTMXTiledMap::create("MP_map/desert.tmx"); CCTMXTiledMap *map = CCTMXTiledMap::create("andrew_map/andrew_tilemap.tmx"); this->addChild(map, 0); MPMapLayer::antiAliasMap(map); map->setAnchorPoint(ccp(.5, .5)); map->setPosition(ccp(visibleSize.width * .5, visibleSize.height * .5)); map->setScale(.5); CCTMXLayer* layer = map->layerNamed("Background"); assert(layer != NULL); CCTMXObjectGroup *objectGroup = map->objectGroupNamed("SpawnPointLayer"); assert(objectGroup != NULL); CCSize mapSize = map->getContentSize(); float mapHeight = mapSize.height; float mapWidth = mapSize.width; player = CCSprite::create("andrew_map/Player.png"); CCDictionary *spawnPoint = objectGroup->objectNamed("SpawnPoint"); map->addChild(player,1); const CCString *positionX = spawnPoint->valueForKey("x"); const CCString *positionY = spawnPoint->valueForKey("y"); const CCString *objectName = spawnPoint->valueForKey("name"); std::cout << positionX->getCString() << std::endl; std::cout << mapHeight - positionY->intValue() % 32 << std::endl; std::cout << objectName->getCString() << std::endl; // player->setPosition(ccp(positionX,positionY)); /* CCSprite *tile = layer->tileAt(ccp(5,6)); assert(tile != NULL); layer->removeTileAt(ccp(5, 6)); CCActionInterval* actionBy = CCMoveBy::create(2, ccp(visibleSize.width * .5, visibleSize.height * .5)); map->runAction(actionBy); CCActionInterval* action = CCScaleBy::create(2, 2); map->runAction(action); */ /* CCSize s = layer->getLayerSize(); for (int x = 2; x < s.width; x++) { for (int y = 0; y < s.height; y++) { layer->removeTileAt(ccp(x, y)); } } */ return true; }
// on "init" you need to initialize your instance bool HelloWorld::init() { ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin(); ///////////////////////////// // 2. add a menu item with "X" image, which is clicked to quit the program // you may modify it. // add a "close" icon to exit the progress. it's an autorelease object CCMenuItemImage *pCloseItem = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(HelloWorld::menuCloseCallback)); pCloseItem->setPosition(ccp(origin.x + visibleSize.width - pCloseItem->getContentSize().width/2 , origin.y + pCloseItem->getContentSize().height/2)); // create menu, it's an autorelease object CCMenu* pMenu = CCMenu::create(pCloseItem, NULL); pMenu->setPosition(CCPointZero); this->addChild(pMenu, 1); ///////////////////////////// // 3. add your codes below... // add a label shows "Hello World" // create and initialize a label CCLabelTTF* pLabel = CCLabelTTF::create("Hello World", "Arial", TITLE_FONT_SIZE); // position the label on the center of the screen pLabel->setPosition(ccp(origin.x + visibleSize.width/2, origin.y + visibleSize.height - pLabel->getContentSize().height)); // add the label as a child to this layer this->addChild(pLabel, 1); // add "HelloWorld" splash screen" CCSprite* pSprite = CCSprite::create("HelloWorld.png"); // position the sprite on the center of the screen pSprite->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y)); // add the sprite as a child to this layer this->addChild(pSprite, 0); // CCClippingNode * clippingNodeLeft = CCClippingNode::create(); // addChild(clippingNodeLeft); // clippingNodeLeft->addChild(pSprite,0); // CCDrawNode *shapeLeft = CCDrawNode::create(); // static CCPoint triangleLeft[3]; // triangleLeft[0] = ccp(0, 0); // triangleLeft[1] = ccp(visibleSize.width,0); // triangleLeft[2] = ccp(0,visibleSize.height); // static ccColor4F green = {0, 1, 0, 1}; // shapeLeft->drawPolygon(triangleLeft, 3, green, 0, green); // clippingNodeLeft->setStencil(shapeLeft); // clippingNodeLeft->setInverted(false); return true; }
/* * Control initialization */ void OptionsLayer::initControls() { int xPos = 100; int fontSize = 35; CCSize visibleSize = CCEGLView::sharedOpenGLView()->getVisibleSize(); //Labels CCLabelTTF* lblName = sgl_ControlFactory.createTTFLabel("Name:", ccp(xPos, 500)); this->addChild(lblName); CCLabelTTF* lblGoal = sgl_ControlFactory.createTTFLabel("Goals:", ccp(xPos, 400)); this->addChild(lblGoal); CCLabelTTF* lblColor = sgl_ControlFactory.createTTFLabel("Time:", ccp(xPos, 300)); this->addChild(lblColor); //Controls int controlLimit = xPos + lblGoal->boundingBox().size.width + 20; std::string userName = CCUserDefault::sharedUserDefault()->getStringForKey(USER_DATA_NAME); if (userName.empty()) { userName = "******"; } CCSize editBoxSize = CCSizeMake(visibleSize.width * 0.2f, 50); CCScale9Sprite* sp = CCScale9Sprite::create("textbg.png"); _txtName = CCEditBox::create(editBoxSize, sp); _txtName->setPosition(ccp(controlLimit+10, 480)); _txtName->setFontName(S_F_TYPE.c_str()); _txtName->setFontSize(fontSize); _txtName->setFontColor(ccRED); _txtName->setPlaceHolder(userName.c_str()); _txtName->setPlaceholderFontColor(ccWHITE); _txtName->setMaxLength(15); _txtName->setReturnType(kKeyboardReturnTypeDone); _txtName->setDelegate(this); _txtName->setZOrder(1); _txtName->setAnchorPoint(ccp(0,0)); addChild(_txtName); int goals = CCUserDefault::sharedUserDefault()->getIntegerForKey(GOALS_DATA_NAME); if (goals < 1) goals = 10; _goalNoSlider = CCControlSlider::create("sliderTrack.png", "sliderProgress.png", "sliderThumb.png"); _goalNoSlider->setTouchEnabled(true); _goalNoSlider->setMinimumValue(1.0f); // Sets the min value of range _goalNoSlider->setMaximumValue(goals); // Sets the max value of range _goalNoSlider->setPosition(ccp(controlLimit+100, 400)); _goalNoSlider->setAnchorPoint(ccp(0,0)); _goalNoSlider->addTargetWithActionForControlEvents(this, cccontrol_selector(OptionsLayer::sliderEvent), CCControlEventValueChanged); _goalNoSlider->setTag(goalTag); _lblGoalSelection = sgl_ControlFactory.createTTFLabel("", ccp(controlLimit+_goalNoSlider->boundingBox().size.width+100, 400)); this->addChild(_lblGoalSelection); _timeSlider = CCControlSlider::create("sliderTrack.png", "sliderProgress.png", "sliderThumb.png"); _timeSlider->setTouchEnabled(true); _timeSlider->setPosition(ccp(controlLimit+100, 300)); _timeSlider->setAnchorPoint(ccp(0,0)); _timeSlider->addTargetWithActionForControlEvents(this, cccontrol_selector(OptionsLayer::sliderEvent), CCControlEventValueChanged); _timeSlider->setTag(timerTag); addChild(_goalNoSlider); addChild(_timeSlider); }
// on "init" you need to initialize your instance bool HelloWorld::init() { ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } ///////////////////////////// // 2. add a menu item with "X" image, which is clicked to quit the program // you may modify it. // add a "close" icon to exit the progress. it's an autorelease object CCMenuItemImage *pCloseItem = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(HelloWorld::menuCloseCallback) ); pCloseItem->setPosition( ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20) ); // create menu, it's an autorelease object CCMenu* pMenu = CCMenu::create(pCloseItem, NULL); pMenu->setPosition( CCPointZero ); this->addChild(pMenu, 1); ///////////////////////////// // 3. add your codes below... // add a label shows "Hello World" // create and initialize a label CCLabelTTF* pLabel = CCLabelTTF::create("Cocos2dx GreePlatform Binding Test", "Thonburi", 34); // ask director the window size CCSize size = CCDirector::sharedDirector()->getWinSize(); // position the label on the center of the screen pLabel->setPosition( ccp(size.width / 2, size.height - 20) ); // add the label as a child to this layer this->addChild(pLabel, 1); // add "HelloWorld" splash screen" pSprite = CCSprite::create("HelloWorld.png"); // position the sprite on the center of the screen pSprite->setPosition( ccp(size.width/2, size.height/2) ); // add the sprite as a child to this layer this->addChild(pSprite, 0); // GreeButton pGreeButtonText = CCLabelTTF::create("Log in", "Thonburi", 34); pGreeButtonText->setPosition(ccp(size.width - 100, size.height - 40)); this->addChild(pGreeButtonText, 1); CCMenuItemImage *pGree = CCMenuItemImage::create("gree.png", "gree.png", this, menu_selector(HelloWorld::menuGreeButtonCallback)); pGree->setPosition(ccp(size.width - 100, size.height - 100)); CCMenu* pGreeMenu = CCMenu::create(pGree, NULL); this->addChild(pGreeMenu, 1); pGreeMenu->setPosition(CCPointZero); pGree->setScaleY(3.0); pGree->setScaleX(3.0); return true; }
// on "init" you need to initialize your instance bool HelloWorld::init() { bool bRet = false; do { ////////////////////////////////////////////////////////////////////////// // super init first ////////////////////////////////////////////////////////////////////////// CC_BREAK_IF(! CCLayer::init()); ////////////////////////////////////////////////////////////////////////// // add your codes below... ////////////////////////////////////////////////////////////////////////// // 1. Add a menu item with "X" image, which is clicked to quit the program. // Create a "close" menu item with close icon, it's an auto release object. CCMenuItemImage *pCloseItem = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(HelloWorld::menuCloseCallback)); CC_BREAK_IF(! pCloseItem); // Place the menu item bottom-right conner. pCloseItem->setPosition(ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20)); // Create a menu with the "close" menu item, it's an auto release object. CCMenu* pMenu = CCMenu::create(pCloseItem, NULL); pMenu->setPosition(CCPointZero); CC_BREAK_IF(! pMenu); // Add the menu to HelloWorld layer as a child layer. this->addChild(pMenu, 1); // 2. Add a label shows "Hello World". // Create a label and initialize with string "Hello World". CCLabelTTF* pLabel = CCLabelTTF::create("Hello World", "Arial", 24); CC_BREAK_IF(! pLabel); // Get window size and place the label upper. CCSize size = CCDirector::sharedDirector()->getWinSize(); pLabel->setPosition(ccp(size.width / 2, size.height - 50)); // Add the label to HelloWorld layer as a child layer. this->addChild(pLabel, 1); // 3. Add add a splash screen, show the cocos2d splash image. CCSprite* pSprite = CCSprite::create("HelloWorld.png"); CC_BREAK_IF(! pSprite); // Place the sprite on the center of the screen pSprite->setPosition(ccp(size.width/2, size.height/2)); // Add the sprite to HelloWorld layer as a child layer. this->addChild(pSprite, 0); bRet = true; shareCamera->setSceneSize(size.width,size.height); this->addChild((CCNode*)(shareCamera->getGUI())); IrrButton* button = IrrButton::create("CloseNormal.png","CloseSelected.png",false); button->setPosition(300,100); button->addClickEvent(this,irr_gui_clickselector(HelloWorld::onClickHandler)); // shareCamera->appendToGUI(button); std::string name = "btn 0"; button->setName(name); IrrButton* button1 = IrrButton::create("CloseNormal.png","CloseSelected.png",false); button1->addClickEvent(this,irr_gui_clickselector(HelloWorld::onClickHandler)); std::string name1 = "btn 1"; button1->setName(name1); button1->setPosition(300,310); shareCamera->appendToGUI(button1); IrrButton* button2 = IrrButton::create("CloseNormal.png","CloseSelected.png",false); button2->addClickEvent(this,irr_gui_clickselector(HelloWorld::onClickHandler)); std::string name2 = "btn 2"; button2->setName(name2); button2->setPosition(20,0); button1->addWidget(button2); IrrButton* button3= IrrButton::create("CloseNormal.png","CloseSelected.png",false); button3->addClickEvent(this,irr_gui_clickselector(HelloWorld::onClickHandler)); std::string name3 = "btn 3"; button3->setName(name3); button3->setPosition(310,310); shareCamera->appendToGUI(button3); for (int i = 5; i < 500;i++) { // button3= IrrButton::create("CloseNormal.png","CloseSelected.png",false); // button3->addClickEvent(this,irr_gui_clickselector(HelloWorld::onClickHandler)); // name3 = "btn"; // name3 += irr_utils::IrrStringUtils::IntToString(i); // button3->setName(name3); // int x = irr_utils::IrrMathUtils::RandomInt(960); // int y = irr_utils::IrrMathUtils::RandomInt(640); // button3->setPosition(x,y); // shareCamera->appendToGUI(button3); } //shareCamera->appendToGUI(button2); // IrrPngLabel* pPngLabel = IrrPngLabel::create("123123sfdgfgsf2"); // pPngLabel->setPosition(300,300); // pPngLabel->setDimensions(30,300); // // //pPngLabel->setFontSize(18); // //pPngLabel->setVerticalTextAlign(kCCVerticalTextAlignmentBottom); // pPngLabel->setTextAlign(kCCTextAlignmentCenter); // pPngLabel->setTouchable(true); // shareCamera->appendToGUI(pPngLabel); //pPngLabel->setDimensions(300,200); IrrTextFieldTTF* pLabelTTF = IrrTextFieldTTF::create(); pLabelTTF->setString("123123123123123sfds"); shareCamera->appendToGUI(pLabelTTF); pLabelTTF->setPosition(200,200); CCNode* pChild1 = CCNode::create(); CCNode* pChild2 = CCNode::create(); this->addChild(pChild1); this->addChild(pChild2); } while (0); return bRet; }
QuestionMark::QuestionMark() { setTouchEnabled( true ); float scale = ScreenHelper::getTextureScale(); float scaleX = ScreenHelper::getTextureScaleX(); float scaleY = ScreenHelper::getTextureScaleY(); CCTextureCache::sharedTextureCache()->addPVRImage("ctm_Buttons.pvr.ccz"); CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("ctm_Buttons.plist"); CCTextureCache::sharedTextureCache()->addPVRImage("ctm_Icons.pvr.ccz"); CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("ctm_Icons.plist"); CCSprite *sprite = CCSprite::create("MainBackFiller.png"); sprite->setScaleX(scaleX*1.2f); sprite->setScaleY(scaleY*1.2f); sprite->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_CENTER,0.0f,-32.0f)); addChild(sprite); sprite = CCSprite::create("ctm_UI_topOverlayA_ver1.png"); sprite->setScaleX(scaleX); sprite->setScaleY(scaleY); sprite->setPosition(ScreenHelper::getAnchorPoint(ScreenHelper::ANCHOR_CENTER)); addChild(sprite,2); CCLabelTTF *label = CCLabelTTF::create("?", "impact.ttf", 42*scale); addChild(label, 2); label->setColor(ccc3(0,0,0)); label->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_TOP_CENTER,2.0f,-52.0f)); label = CCLabelTTF::create("?", "impact.ttf", 42*scale); addChild(label, 2); label->setColor(ccc3(237,188,0)); label->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_TOP_CENTER,0.0f,-50.0f)); CCMenuItem *BackButton = CCMenuItemSprite::create(CCSprite::createWithSpriteFrameName("ctm_Back_Button.png"), CCSprite::createWithSpriteFrameName("ctm_Back_Button_Down.png"), this, menu_selector(QuestionMark::backButtonTapped)); BackButton->setScale(scale); BackButton->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_TOP_LEFT,50.0f,-50.0f)); CCMenu* menu = CCMenu::create(BackButton, NULL); menu->setPosition(ScreenHelper::getAnchorPoint(ScreenHelper::ANCHOR_BOTTOM_LEFT)); addChild(menu,4); CCSize dim; int randInt = RandomInt(0,100); if(randInt>95) { dim.width = 420*scale; dim.height = 250*scale; const char *colorText = "\"Surely you can't be serious!\" he says, as he slowly ambles back to his crimson hued overstuffed chair. You find yourself contemplating the simian who rebuffed your overture so out of hand. You can't help but admire this modern Grigori Rasputin for his steely determination. With perhaps undue influence of aqua vitae and plantains coloring your reason, you counter with tremendous vigor. With all the potency of Hannibal and his terrene leviathan you fill your hands with your own ordure and volley it squarely into his agape maw."; CCLabelTTF *text = CCLabelTTF::create(colorText,"impact.ttf",16*scale,dim,kCCTextAlignmentCenter); text->setColor(ccc3(230,230,230)); text->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_CENTER, 0.0f, -70.0f)); addChild(text); } else if(randInt>5) { int randomImage = RandomInt(1,14); CCTextureCache::sharedTextureCache()->addPVRImage("QuestionMark.pvr.ccz"); CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("QuestionMark.plist"); char temp[64]; sprintf(temp,"ConceptArt_%02d.png",randomImage); CCSprite *image = CCSprite::createWithSpriteFrameName(temp); image->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_CENTER, 0.0f, -35.0f)); image->setScale(0.5f*scale); addChild(image); } else { dim.width = 420*scale; dim.height = 250*scale; const char *colorText = "?"; CCLabelTTF *text = CCLabelTTF::create(colorText,"impact.ttf",80*scale,dim,kCCTextAlignmentCenter); text->setColor(ccc3(230,230,230)); text->setPosition(ScreenHelper::getAnchorPointPlusOffset(ScreenHelper::ANCHOR_CENTER, 0.0f, -70.0f)); addChild(text); } }
bool LoginScene::init() { if ( !CCLayer::init() ) { return false; } //buttons CCMenuItemImage *pRegister = CCMenuItemImage::create( "wkszLogin/register.png", "wkszLogin/register_p.png", this, menu_selector(LoginScene::registerCB) ); CCMenuItemImage *pLogin = CCMenuItemImage::create( "wkszLogin/login.png", "wkszLogin/login_p.png", this, menu_selector(LoginScene::loginCB) ); CCMenuItemImage *pSurfer = CCMenuItemImage::create( "wkszLogin/surfer.png", "wkszLogin/surfer_p.png", this, menu_selector(LoginScene::surferCB) ); pRegister->setPosition( ccp(500, 100) ); pLogin->setPosition( ccp(650, 450) ); pSurfer->setPosition( ccp(650, 380) ); CCMenu* pMenu = CCMenu::create(pRegister,pLogin,pSurfer,NULL); pMenu->setPosition( CCPointZero ); this->addChild(pMenu); //editbox CCScale9Sprite * ssp1 = CCScale9Sprite::create("wkszLogin/editboxBG.png"); ssp1->setPreferredSize(CCSizeMake(500, 20)); ssp1->setAnchorPoint(ccp(0.5, 0.5)); pEditBox = CCEditBox::create(CCSizeMake(200,40),ssp1); pEditBox->setPlaceHolder("输入用户名"); pEditBox->setFontColor(ccc3(255, 0, 255)); pEditBox->setPosition(ccp(450, 450)); this->addChild(pEditBox); CCScale9Sprite * ssp2 = CCScale9Sprite::create("wkszLogin/editboxBG.png"); ssp2->setPreferredSize(CCSizeMake(500, 20)); ssp2->setAnchorPoint(ccp(0.5, 0.5)); pEditBoxPWD = CCEditBox::create(CCSizeMake(200,40),ssp2); pEditBoxPWD->setPlaceHolder("输入密码"); pEditBoxPWD->setFontColor(ccc3(255, 0, 255)); pEditBoxPWD->setPosition(ccp(450, 380)); pEditBoxPWD->setInputFlag(kEditBoxInputFlagPassword); this->addChild(pEditBoxPWD); //mssages CCLabelTTF* pLabel = CCLabelTTF::create("Hello World", "Thonburi", 34); CCSize size = CCDirector::sharedDirector()->getWinSize(); pLabel->setPosition( ccp(size.width / 2, size.height - 20) ); this->addChild(pLabel, 1); swfBg = CCSWFNode::create("wkszLogin/swfBg.swf"); swfBg->setPosition(ccp(size.width/2+30, size.height/2-100)); swfBg->setScale(0.8f); swfBg->runAction(); swfBg->setRepeat(true); this->addChild(swfBg,-9); swfWK = CCSWFNode::create("wkszLogin/swfWK.swf"); swfWK->setPosition(ccp(800, 280)); swfWK->runAction(); swfWK->setRepeat(true); this->addChild(swfWK,-8); CCSprite *sptmp = CCSprite::create("wkszLogin/tree.png"); sptmp->setPosition(ccp(920,80)); this->addChild(sptmp,-7); swfMovie = NULL; flag = 0; return true; }
void RankScene::getServerTimeRequestCompleted(cocos2d::CCNode *sender, void *data){ year_current = month_current = day_current = clock_current = minute_current = second_current = ""; //1.获取服务器返回的时间信息 CCHttpResponse* response = (CCHttpResponse*)data; if (!response) { return; } int statusCode = response->getResponseCode(); std::vector<char> *buffer = response->getResponseData(); printJson(buffer); //2.解析时间信息 string expStr; int now,exp; for (unsigned int i = 0; i < buffer->size(); i++) { //2.1 当前时间 if ((*buffer)[i] == '"' && (*buffer)[i+1] == 'n' && (*buffer)[i+2] == 'o' && (*buffer)[i+3] == 'w' && (*buffer)[i+4] == '"' && (*buffer)[i+5] == ':'){ for (int j = 0 ; j < 4 ; j++) year_current += (*buffer)[i+7+j]; for (int j = 0 ; j < 2 ; j++){ month_current += (*buffer)[i+12+j]; day_current += (*buffer)[i+15+j]; clock_current += (*buffer)[i+18+j]; minute_current += (*buffer)[i+21+j]; second_current += (*buffer)[i+24+j]; } } //2.2 结算时间 if((*buffer)[i] == 'a' && (*buffer)[i+1] == 't' && (*buffer)[i+2] == '"' && (*buffer)[i+3] == ':' && (*buffer)[i+4] == '"' && (*buffer)[i+5] == '2') for (int j = 0; j < 2 ; j++) expStr += (*buffer)[i+13+j]; } //3.计算下次结算时间 int daysPerMonth[12] = {31,28,31,30,31,30,31,31,30,31,30,31}; if (day_current[0] == 0) now = atoi(&day_current[1]); else now = atoi(day_current.c_str()); if (expStr[0] == 0) exp = atoi(&expStr[1]); else exp = atoi(expStr.c_str()); if (exp < now) { serverTime = exp + daysPerMonth[atoi(month_current.c_str())-1] - now; }else serverTime = exp - now; //4.计算下次回复时间,总的秒数 int nextSecond = 0; if (year_next!="" && month_next!="" && day_next!="" && clock_next!="" && minute_next!="" && second_next!="") { nextSecond += atoi(year_next.c_str())*31536000; for (int i = 0 ; i < atoi(month_next.c_str()); i++) nextSecond += daysPerMonth[i]*24*60*60; nextSecond += atoi(day_next.c_str())*24*60*60; nextSecond += atoi(clock_next.c_str())*60*60; nextSecond += atoi(minute_next.c_str())*60; nextSecond += atoi(second_next.c_str()); }else nextSecond = 0; //5.计算当前的时间,总的秒数 int currentSecond = 0; if (nextSecond!=0) { currentSecond += atoi(year_current.c_str())*31536000; for (int i = 0 ; i < atoi(month_current.c_str()); i++) currentSecond += daysPerMonth[i]*24*60*60; currentSecond += atoi(day_current.c_str())*24*60*60; currentSecond += atoi(clock_current.c_str())*60*60; currentSecond += atoi(minute_current.c_str())*60; currentSecond += atoi(second_current.c_str()); }else currentSecond = 0; nextRecoverySecond = nextSecond - currentSecond; //6.体力部分 for (int i = 0 ; i < 6 ; i++) removeChildByTag(41+i); for (int i = 0 ; i < MainUser->energyNumber ; i++) { CCSprite* energy = CCSprite::createWithSpriteFrameName("heart.png"); energy->setPosition(ccp(size.width*10/80+i*size.width*12.7/240, size.height*2100/2200+winDif*4*(2-alpha))); addChild(energy,10000,41+i); } //7.体力回复时间 if (MainUser->energyNumber < 5) { string nextRecoveryTimStr = int2string(nextRecoverySecond/60) + ":" + int2string(nextRecoverySecond%60); CCLabelTTF* recoveryTime = CCLabelTTF::create(nextRecoveryTimStr.c_str(), "Arial Rounded MT Bold", 24,CCSizeMake(size.width/3, 0),kCCTextAlignmentRight); recoveryTime->setPosition(ccp(size.width*20/80,size.height*2100/2200+winDif*4*(2-alpha))); addChild(recoveryTime,10000,46); schedule(schedule_selector(RankScene::energyTimeCounter), 1); } //5.关闭提示框 MessageBox->closeMessageBox(); //6.下一个动作 if (tableIndex == 1) //如果之前就是排行榜,则直接把信息写上去 rankListContent(); else if(tableIndex == 2)//如果之前是题包列表,则旋转 goToRankList(); }