ScreenProgressBar::ScreenProgressBar() :_nodeBase(NULL), _layerFrame(NULL), _layerProgressBar(NULL), _controller(NULL) { { CCSize size; size.width = SingleElementWidth(); size.height = CCDirector::sharedDirector()->getWinSize().height; setContentSize(size); } { CCLayerColor* layerN = CCLayerColor::create(normalColor(), SingleElementWidth(), 30); CCLabelTTF *label = CCLabelTTF::create("Loading. Please stand by.", MAX_DEFAULT_FONT, 10); label->setTag(BUTTON_LABEL_TAG); label->setColor(MAX_COLOR_WHITE); CCSize sz = layerN->getContentSize(); sz.height /= 2; label->setPosition(ccp((int)(sz.width * 0.25), (int)(sz.height * 0.25))); sz.width *= CCDirector::sharedDirector()->getContentScaleFactor(); sz.height *= CCDirector::sharedDirector()->getContentScaleFactor(); label->setContentSize(sz); label->setAnchorPoint(ccp(0, 0)); layerN->addChild(label); CocosHelper::MoveNode(layerN->getChildByTag(11), ccp(15, 5)); addChild(layerN); _buttons->addObject(layerN); } if (!_nodeBase) { _nodeBase = CCNode::create(); _nodeBase->setContentSize(CCSizeMake(SingleElementWidth(), SingleElementHeight())); _nodeBase->setAnchorPoint(ccp(0, 0)); _nodeBase->setPosition(ccp(0, 0)); addChild(_nodeBase); _buttons->addObject(_nodeBase); } ccColor4B color; color = normalColor(); if (!_layerFrame) { _layerFrame = CCLayerColor::create(color, SingleElementWidth(), 50); _layerFrame->setAnchorPoint(ccp(0, 0)); _layerFrame->setPosition(ccp(0, 0)); _nodeBase->addChild(_layerFrame); } color = selectedColor(); if (!_layerProgressBar) { _layerProgressBar = CCLayerColor::create(color, 0, 50); _layerProgressBar->setAnchorPoint(ccp(0, 0)); _layerProgressBar->setPosition(ccp(0, 0)); _nodeBase->addChild(_layerProgressBar); } SetProgress(0.0); }
bool CCLobbyView::init( CCNetworkLogic* network, const CCSize& mySize ) { if( CCLayer::init() ) { CCSize winSize = CCDirector::sharedDirector()->getWinSize(); const CCPoint& center = ccpMult( ccpFromSize( mySize ), 0.5f ); CCPoint position = CCPointZero; CCSize size = CCSizeZero; int length = 0; int fontSize = 0; this->setNetwork( network ); CCSprite* s = CCSprite::create("Images/r1.png"); s->retain(); CCRect rect = CCRectZero; rect.size = s->getContentSize(); s->release(); fontSize = 12; CCLabelTTF* label = CCLabelTTF::create( "Connect", "fonts/American Typewriter.ttf", fontSize ); label->setColor( ccc3( 0, 0, 0 ) ); CCScale9Sprite* sprite = CCScale9Sprite::create("Images/r1.png", rect, rect ); sprite->setScaleX( 1.4f ); sprite->setScaleY( 0.8f ); CCControlButton* button = CCControlButton::create( label, sprite ); button->addTargetWithActionForControlEvents( this, cccontrol_selector( CCLobbyView::connectButtonCallback ), CCControlEventTouchUpInside); button->setPreferredSize( rect.size ); position = center; position.y -= 136; position.x -= 100; button->setPosition( position ); this->setConnectButton( button ); label = CCLabelTTF::create( "Create Room", "fonts/American Typewriter.ttf", fontSize ); label->setColor( ccc3( 0, 0, 0 ) ); sprite = CCScale9Sprite::create("Images/r1.png", rect, rect ); sprite->setScaleX( 1.4f ); sprite->setScaleY( 0.8f ); button = CCControlButton::create( label, sprite ); button->addTargetWithActionForControlEvents( this, cccontrol_selector( CCLobbyView::createGameButtonCallback ), CCControlEventTouchUpInside); button->setPreferredSize( rect.size ); position = center; position.y -= 136; //position.x += 0; button->setPosition( position ); this->setCreateGameButton( button ); label = CCLabelTTF::create( "Random Room", "fonts/American Typewriter.ttf", fontSize ); label->setColor( ccc3( 0, 0, 0 ) ); sprite = CCScale9Sprite::create("Images/r1.png", rect, rect ); sprite->setScaleX( 1.6f ); sprite->setScaleY( 0.8f ); button = CCControlButton::create( label, sprite ); button->addTargetWithActionForControlEvents( this, cccontrol_selector( CCLobbyView::joinGameButtonCallback ), CCControlEventTouchUpInside); button->setPreferredSize( rect.size ); position = center; position.y -= 136; position.x += 100; button->setPosition( position ); this->setRandomGameButton( button ); this->_lobbyViewDataSource = new CCLobbyViewDataSource( this ); fontSize = 16; length = mySize.width; size = this->_lobbyViewDataSource->cellSizeForTable( NULL ); size.height *= 3; CCTableView* table = CCTableView::create( this->_lobbyViewDataSource, size ); table->setContentOffset( CCPointZero ); table->setDirection(kCCScrollViewDirectionVertical); position = center; position.x -= size.width * 0.5f; position.y -= fontSize + ( size.height * 0.17f ); table->setPosition( position ); table->setDelegate( this ); table->setVerticalFillOrder(kCCTableViewFillTopDown); this->setRoomTable( table ); table->reloadData(); fontSize = 16; label = CCLabelTTF::create("Running games:", "fonts/American Typewriter.ttf", fontSize, winSize, kCCTextAlignmentCenter, kCCVerticalTextAlignmentCenter); position = center; position.x -= size.width * 0.4f; position.y += size.height - ( fontSize * 0.5f ); label->setPosition( position ); //label->setAnchorPoint( CCPointZero ); this->setRoomTableLabel( label ); fontSize = 16; CCLabelTTF* console = CCLabelTTF::create("disconnected", "fonts/American Typewriter.ttf", fontSize, winSize, kCCTextAlignmentCenter, kCCVerticalTextAlignmentCenter); console->setColor( ccc3(255, 255, 255) ); console->setContentSize(winSize); position = center; position.y += 100; console->setPosition( position ); this->setConsole( console ); label = CCLabelTTF::create( "localhost:5055", "fonts/American Typewriter.ttf", fontSize ); position.y += fontSize; label->setPosition( position ); this->setDisplayAddress( label ); // top fontSize = 24; length = 19; size = CCSize( length * fontSize * 0.7f, fontSize * 1.7f ); CCEditBox* edit = CCEditBox::create( size, CCScale9Sprite::create( "extensions/green_edit.png" ) ); edit->setPosition( center ); edit->setFontColor(ccBLACK); edit->setPlaceHolder("ip:port"); edit->setMaxLength( 19 ); edit->setReturnType(kKeyboardReturnTypeDone); edit->setDelegate(this); position.y -= fontSize * 2; edit->setPosition( position ); this->setEditAddress( edit ); //CCChatRoom* chatroom = CCChatRoom::create(this->getNetwork()); //this->setChatRoom( chatroom ); this->scheduleUpdate(); return true; } return false; }