void renderIcon(const String &data, uint16_t column, uint16_t row) { uint32_t xOffset = column * _canvasWidth; uint32_t yOffset = row * _canvasHeight; _canvas->save(); _canvas->translate(xOffset / ((float)_canvasWidth / (float)_originalWidth), yOffset / ((float)_canvasHeight / (float)_originalHeight)); Rc<draw::Path> path; if (data.compare(0, 7, "path://") == 0) { path = Rc<draw::Path>::create(data.substr(7)); } else { path = Rc<draw::Path>::create(FilePath(data)); } if (!path) { return; } path->setFillColor(Color4B(255, 255, 255, 255)); path->drawOn(_canvas); _canvas->restore(); }
bool GameScene::init() { if ( !Layer::init() ) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Point origin = Director::getInstance()->getVisibleOrigin(); //设置触摸事件监听 auto touchListener = EventListenerTouchOneByOne::create(); touchListener->onTouchBegan = CC_CALLBACK_2(GameScene::onTouchBegan, this); touchListener->onTouchEnded = CC_CALLBACK_2(GameScene::onTouchEnded, this); _eventDispatcher->addEventListenerWithSceneGraphPriority(touchListener, this); //加入游戏背景 auto layerColorBG = LayerColor::create(Color4B(180, 170, 160, 255)); this->addChild(layerColorBG); //创建分数 auto cardNumberTitle = LabelTTF::create("SCORE","Consolas",80); cardNumberTitle->setPosition(Point(visibleSize.width/2 + 340, visibleSize.height/2 + 130)); addChild(cardNumberTitle); score = 0; cardNumberTTF = LabelTTF::create("0", "Consolas", 70); cardNumberTTF->setPosition(Point(visibleSize.width/2 + 340, visibleSize.height/2 - 100)); addChild(cardNumberTTF); //创建4X4卡片 createCardSprite(visibleSize); //初始时生成两个2 createCardNumber(); createCardNumber(); return true; }
// on "init" you need to initialize your instance bool MainLoadingScene::init() { if ( !Scene::init() ) { return false; } LayerColor *layer = LayerColor::create(); layer->initWithColor(Color4B(255, 255, 255, 255), VisibleRect::right().x , VisibleRect::top().y); layer->setPosition(VisibleRect::center()); layer->setAnchorPoint(Vec2(0.5f, 0.5f)); layer->setIgnoreAnchorPointForPosition(false); this->addChild(layer, 0); Sprite *fondo = Sprite::create("fondo.png"); fondo->setPosition(VisibleRect::center()); this->addChild(fondo); Sprite *sprite = Sprite::create("logo.png"); sprite->setPosition(VisibleRect::center()); this->addChild(sprite); Label *progress = Label::createWithTTF ("Kargatzen ari da.\nMesedez, minutu pare bat itxaron.", "fonts/PT_Sans-Web-Regular.ttf", 10); progress->setPosition(Vec2(VisibleRect::center().x, VisibleRect::bottom().y + 12)); progress->setAnchorPoint(Vec2(0.5,0.5)); progress->setColor(Color3B(0,0,0)); addChild(progress); loading = Sprite::create("loading.png"); loading->setPosition(Vec2(VisibleRect::center().x, VisibleRect::bottom().y + progress->getContentSize().height + loading->getContentSize().height / 2)); addChild(loading); ActionInterval* rotate = RotateBy::create(5.0f, 360.0f); RepeatForever *repeat = RepeatForever::create(rotate); loading->runAction(repeat); return true; }
MainLayer::MainLayer() { setTouchEnabled(true); setTouchMode(Touch::DispatchMode::ONE_BY_ONE); auto sprite = Sprite::create(s_pathGrossini); auto layer = LayerColor::create(Color4B(255,255,0,255)); addChild(layer, -1); addChild(sprite, 0, kTagSprite); sprite->setPosition( Point(20,150) ); sprite->runAction( JumpTo::create(4, Point(300,48), 100, 4) ); layer->runAction( RepeatForever::create( Sequence::create( FadeIn::create(1), FadeOut::create(1), NULL) )); }
bool TetrisGameAreaLayer::init() { LayerColor::initWithColor(Color4B(255, 100, 100, 255)); auto keyListener = EventListenerKeyboard::create(); keyListener->setEnabled(true); keyListener->onKeyReleased = std::bind(&TetrisGameAreaLayer::onKeyReleased, this, std::placeholders::_1,std::placeholders::_2); keyListener->onKeyPressed = std::bind(&TetrisGameAreaLayer::onKeyDown, this, std::placeholders::_1, std::placeholders::_2); _eventDispatcher->addEventListenerWithSceneGraphPriority(keyListener, this); auto dtor = Director::getInstance(); Size vSize = dtor->getVisibleSize(); Vec2 org = dtor->getVisibleOrigin(); //left bottom Vec2 vlb(org.x + KWBorder, org.y + KHBorder); int areaHeight = vSize.height * KAreaHRationInVisible; setContentSize(Size(areaHeight / 2 - 2 * KWBorder, areaHeight - 4 * KWBorder)); setAnchorPoint(Vec2(0 ,0)); setPosition(vlb); initBlockRectSprite(); //schedule(schedule_selector(TetrisGameAreaLayer::onBlockUpdate), 0.0); scheduleUpdate(); return true; }
// on "init" you need to initialize your instance void UILayer::init(cocos2d::Node* parent) { Layer = this; auto vis = Director::getInstance()->getOpenGLView()->getVisibleRect(); auto height = vis.size.height - VisibleRect::top().y; mLayer = LayerColor::create(Color4B(0x1E,0xB5,0xC7,0xFF), VisibleRect::right().x, height); parent->addChild(mLayer, 1500); mLayer->setPositionY(VisibleRect::top().y); TTFConfig config("fonts/Montserra.ttf",15); mFileNameLabel = Label::createWithTTF(config,""); mFileNameLabel->setPosition(0,30); mLayer->addChild(mFileNameLabel); auto uiLayer = new UIColorEditor(); uiLayer->init(mLayer); setFileName("untitled"); }
// on "init" you need to initialize your instance bool HelloWorld::init() { if ( !LayerColor::initWithColor(Color4B(255,255,255,255)) ) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); //创建精灵 auto player = Sprite::create("Player.png", Rect(0, 0, 27, 40)); player->setPosition(Point(player->getContentSize().width/2, visibleSize.height / 2)); this->addChild(player, 0); //更新函数 this->schedule(schedule_selector(HelloWorld::gameLogic), 1.0f); this->scheduleUpdate(); CocosDenshion::SimpleAudioEngine::getInstance()->playBackgroundMusic("background-music-aac.caf"); return true; }
bool FrameLayer::init() { if (!LayerColor::initWithColor(Color4B(0, 0, 0, 0))) { return false; } auto l1 = Sprite::create("frame/l.png"); auto l2 = Sprite::create("frame/l.png"); l1->setPosition(45, 360); this->addChild(l1); l2->setPosition(1280-45, 360); this->addChild(l2); return true; }
void PopupLayer::setPublishLotteryContext(Size size) { //添加转盘 m_turnBg = Sprite::create("LotteryTurn/turn_bg.png"); m_turnBg->setPosition(Vec2(winSize.width / 2, winSize.height / 2)); addChild(m_turnBg); //添加指针 auto arrNor = Sprite::create("LotteryTurn/turn_arrow.png"); arrNor->setPosition(Vec2(winSize.width / 2, winSize.height * 0.557)); arrNor->setScale(0.5); addChild(arrNor); //添加中奖之后的简单界面 awardLayer = LayerColor::create(Color4B(0, 0, 0, 100)); awardLayer->setPosition(Point::ZERO); awardLayer->setTag(100); addChild(awardLayer, 10); awardLayer->setVisible(false); addPlayersInfo(size); }
bool HelloWorld::init() { if (!LayerColor::initWithColor(Color4B(255, 255, 255, 255))) { return false; } tmap = TMXTiledMap::create("TileMaps/TestDesert.tmx"); this->addChild(tmap, 0, 11); auto objects = tmap->getObjectGroup("Objects"); ValueMap spawnPoint = objects->getObject("SpawnPoint"); int x = spawnPoint["x"].asInt(); int y = spawnPoint["y"].asInt(); dragonPosition = Vec2(x, y); this->createDragon(); return true; }
bool PRKitDemoScene::init() { if(!Layer::init()) { return false; } auto color_bg = LayerColor::create(Color4B(125, 125, 125, 125)); addChild(color_bg); auto demo_info_label = Label::create(demo_info(), "Helvetica", 25, Size(500, 200), TextHAlignment::LEFT); this->addChild(demo_info_label); demo_info_label->setAnchorPoint(Point(0.0f, 1.0f)); demo_info_label->setColor(Color3B(255, 255, 255)); demo_info_label->setPosition(VisibleRect::leftTop() + Point(60, -60)); auto backMenuItem = MenuItemImage::create("backNormal.png", "backSelected.png", CC_CALLBACK_1(PRKitDemoScene::backCallback, this)); auto restartMenuItem = MenuItemImage::create("refreshNormal.png", "refreshSelected.png", CC_CALLBACK_1(PRKitDemoScene::restartCallback, this)); restartMenuItem->setPosition(VisibleRect::rightTop() + Point(-200, -80)); backMenuItem->setPosition(restartMenuItem->getPosition() + Point(90, 0)); auto menu = Menu::create(backMenuItem, restartMenuItem, NULL); menu->setPosition(Point::ZERO); this->addChild(menu, 300); Vector2dVector polygonPoints; polygonPoints.push_back(Vector2d(100, 100)); polygonPoints.push_back(Vector2d(200, 100)); polygonPoints.push_back(Vector2d(300, 200)); polygonPoints.push_back(Vector2d(400, 300)); polygonPoints.push_back(Vector2d(500, 500)); Texture2D *texture = Director::getInstance()->getTextureCache()->addImage("pattern1.png"); PRFilledPolygon *filledPolygon = PRFilledPolygon::filledPolygonWithPointsAndTexture(polygonPoints, texture); addChild(filledPolygon); return true; }
TextLayer::TextLayer(void) : BaseTest() { LayerColor *background = LayerColor::create( Color4B(32,128,32,255) ); this->addChild(background,-20); _gridNodeTarget = NodeGrid::create(); auto effect = getAction(); _gridNodeTarget->runAction(effect); addChild(_gridNodeTarget, 0, kTagBackground); auto bg = Sprite::create(s_back3); _gridNodeTarget->addChild(bg, 0); // bg->setAnchorPoint( Vec2::ZERO ); bg->setPosition(VisibleRect::center()); auto grossini = Sprite::create(s_pathSister2); _gridNodeTarget->addChild(grossini, 1); grossini->setPosition( Vec2(VisibleRect::left().x+VisibleRect::getVisibleRect().size.width/3,VisibleRect::center().y) ); auto sc = ScaleBy::create(2, 5); auto sc_back = sc->reverse(); grossini->runAction( RepeatForever::create(Sequence::create(sc, sc_back, NULL) ) ); auto tamara = Sprite::create(s_pathSister1); _gridNodeTarget->addChild(tamara, 1); tamara->setPosition( Vec2(VisibleRect::left().x+2*VisibleRect::getVisibleRect().size.width/3,VisibleRect::center().y) ); auto sc2 = ScaleBy::create(2, 5); auto sc2_back = sc2->reverse(); tamara->runAction( RepeatForever::create(Sequence::create(sc2, sc2_back, NULL)) ); auto label = Label::createWithTTF((effectsList[actionIdx]).c_str(), "fonts/Marker Felt.ttf", 32); label->setPosition( Vec2(VisibleRect::center().x,VisibleRect::top().y-80) ); addChild(label); label->setTag( kTagLabel ); schedule( schedule_selector(TextLayer::checkAnim) ); }
bool PauseLayer::init() { if (!Layer::init()) { return false; } const Size &size=Director::getInstance()->getWinSize(); //灰色背景 LayerColor* backLayerColor = LayerColor::create(Color4B(25, 25, 25, 125)); this->addChild(backLayerColor); // 暂停 MenuItemFont *menuItemPause = MenuItemFont::create("Continue", CC_CALLBACK_1(PauseLayer::menuContinueCallBack, this)); menuItemPause->setPosition(Point(size.width / 2 - 100, size.height / 2)); // 重新开始 MenuItemFont *menuItemRestart = MenuItemFont::create("Restart", CC_CALLBACK_1(PauseLayer::menuRestartCallBack, this)); menuItemRestart->setPosition(Point(size.width / 2 + 100, size.height / 2)); Menu *menu=Menu::create(menuItemPause, menuItemRestart, NULL); menu->setPosition(Point::ZERO); this->addChild(menu); //不声明 不定义 ontouchbegan的使用方法 // auto callback = [](Touch * ,Event *) // { // return true; // }; // auto listener = EventListenerTouchOneByOne::create(); // listener->onTouchBegan = callback; // listener->setSwallowTouches(true); // _eventDispatcher->addEventListenerWithSceneGraphPriority(listener,this); EventListenerTouchOneByOne* listener = EventListenerTouchOneByOne::create(); listener->onTouchBegan = CC_CALLBACK_2(PauseLayer::onTouchBegan, this); listener->setSwallowTouches(true); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); return true; }
// on "init" you need to initialize your instance bool HelloWorld::init() { if ( !LayerColor::initWithColor(Color4B(255,255,255,255)) ) { return false; } ///////////////////////////// auto pMenuItem = MenuItemFont::create("Action", CC_CALLBACK_1(HelloWorld::doAction, this)); pMenuItem->setColor(Color3B::BLACK); auto pMenu = Menu::create(pMenuItem, nullptr); pMenu->setPosition(Vec2(240, 50)); this->addChild(pMenu); pBall = Sprite::create("Images/r1.png"); pBall->setPosition(Vec2(50, 100)); pBall->setScale(0.7f); this->addChild(pBall); pMan = Sprite::create("Images/grossini.png"); pMan->setPosition(Vec2(50, 150)); pMan->setScale(0.5f); this->addChild(pMan); pWomen1 = Sprite::create("Images/grossinis_sister1.png"); pWomen1->setPosition(Vec2(50, 220)); pWomen1->setScale(0.5f); this->addChild(pWomen1); pWomen2 = Sprite::create("Images/grossinis_sister2.png"); pWomen2->setPosition(Vec2(50, 280)); pWomen2->setScale(0.5f); this->addChild(pWomen2); return true; }
// on "init" you need to initialize your instance bool Bug914Layer::init() { // always call "super" init // Apple recommends to re-assign "self" with the "super" return value if (BugsTestBaseLayer::init()) { setTouchEnabled(true); // ask director the the window size Size size = Director::getInstance()->getWinSize(); LayerColor *layer; for( int i=0;i < 5;i++) { layer = LayerColor::create(Color4B(i*20, i*20, i*20,255)); layer->setContentSize(Size(i*100, i*100)); layer->setPosition(Point(size.width/2, size.height/2)); layer->setAnchorPoint(Point(0.5f, 0.5f)); layer->ignoreAnchorPointForPosition(false); addChild(layer, -1-i); } // create and initialize a Label LabelTTF *label = LabelTTF::create("Hello World", "Marker Felt", 64); MenuItem *item1 = MenuItemFont::create("restart", CC_CALLBACK_1(Bug914Layer::restart, this)); Menu *menu = Menu::create(item1, NULL); menu->alignItemsVertically(); menu->setPosition(Point(size.width/2, 100)); addChild(menu); // position the label on the center of the screen label->setPosition(Point( size.width /2 , size.height/2 )); // add the label as a child to this Layer addChild(label); return true; } return false; }
void CardSprite::enemyInit(int numbers, int wight, int height, float CardSpriteX, float CardSpriteY) { number = numbers; layerColorBG = LayerColor::create( Color4B(200, 190, 180, 255), wight-15, height-15); layerColorBG->setPosition(Point(CardSpriteX, CardSpriteY) ); if(number >0 ) { labTTFCardNumber = LabelTTF::create(__String::createWithFormat("%i", number)->getCString(), "HirakakuProN_WG", 100); labTTFCardNumber ->setPosition(Point(layerColorBG->getContentSize().width/2, layerColorBG->getContentSize().height/2)); layerColorBG->addChild(labTTFCardNumber); } else { labTTFCardNumber = LabelTTF::create("", "HirakakuProN_WG", 100); labTTFCardNumber ->setPosition(Point(layerColorBG->getContentSize().width/2, layerColorBG->getContentSize().height/2)); layerColorBG->addChild(labTTFCardNumber); } addChild(layerColorBG); }
bool GDebugLoadScene::init() { auto size = Director::getInstance()->getWinSize(); auto layer = LayerColor::create(Color4B(255,255,255,255),size.width,size.height); this->addChild(layer); this->label_text = Label::createWithSystemFont("", "", 24); this->label_text->setTextColor(Color4B::BLACK); this->label_text->setPosition(size.width/3,size.height*0.6); this->label_text->setAnchorPoint(Vec2(0,0.5)); this->addChild(this->label_text); this->label_file = Label::createWithSystemFont("", "", 20); this->label_file->setTextColor(Color4B::BLACK); this->label_file->setPosition(size.width/2,size.height*0.4); this->addChild( this->label_file); this->_num = 0; this->scheduleOnce(schedule_selector(GDebugLoadScene::loadBase), 0.3); this->schedule(schedule_selector(GDebugLoadScene::updateLabel), 0.3); return true; }
bool MainMenuLayer::init() { if( !CCLayerColor::initWithColor(Color4B(255, 255, 255, 255)) ) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Vec2 origin = Director::getInstance()->getVisibleOrigin(); auto playbuttonItem = MenuItemImage::create("button_play.png", "button_play.png", CC_CALLBACK_1(MainMenuLayer::onMenuPlayButton, this)); auto tutorialbuttonItem = MenuItemImage::create("button_tutorial.png", "button_tutorial.png", CC_CALLBACK_1(MainMenuLayer::onMenuTutorialButton, this)); auto menubuttonItem = MenuItemImage::create("button_menu.png", "button_menu.png", CC_CALLBACK_1(MainMenuLayer::onMenuMenuButton, this)); auto menu = Menu::create(playbuttonItem, tutorialbuttonItem, menubuttonItem, NULL); menu->alignItemsVerticallyWithPadding(20); menu->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + visibleSize.height/2 - playbuttonItem->getContentSize().height/2)); this->addChild(menu, 1); return true; }
bool TRenderApplication::applicationDidFinishLaunching(){ Director* director = Director::getInstance(); EGLView* glView = EGLView::getInstance(); director->setOpenGLView(glView); Size FrameSize = glView->getFrameSize(); glView->setDesignResolutionSize(900,600,ResolutionPolicy::NO_BORDER); director->setDisplayStats(false); director->setAnimationInterval(1.0/60); SetFilePath(std::string("..\\resource\\")); Scene* scene = Scene::create(); TBaseObject * worklayer = new TBaseObject; if(worklayer && worklayer->initWithColor(Color4B(0,100,100,255))){ SetWorkScene((int)worklayer); worklayer->setScale(0.35f); worklayer->autorelease(); scene->addChild(worklayer); } scene->setPositionX(-200); scene->setPositionY(100); director->runWithScene(scene); return true; }
void PBase::initAdsBanner() { if (m_adsLayer || Common::isAdsRemoved()) return; Size adsSize = Common::getAdsSize(); Vec2 adsLayerPosHide = Vec2(0, m_visibleRect.getMaxY() + adsSize.height + 5); m_adsLayer = LayerColor::create(Color4B(110, 110, 110, 125)); m_adsLayer->setContentSize(Size(m_winSize.width, adsSize.height)); m_adsLayer->ignoreAnchorPointForPosition(false); m_adsLayer->setAnchorPoint(Vec2(0, 1.0f)); m_adsLayer->setPosition(adsLayerPosHide); m_adsLayerVisible = false; this->addChild(m_adsLayer, ZORDER_ADS_LAYER); refreshAdBanner(0); this->runAction(RepeatForever::create( Sequence::createWithTwoActions( DelayTime::create(0.2f), CallFunc::create(CC_CALLBACK_0(PBase::refreshAdBanner, this, 0.2f))))); }
bool CTextRichBasicTest::init() { CTextRichTestSceneBase::init(); setTitle("CTextRichBasicTest"); setDescription("a basic text rich widget with a single line"); CTextRich* pTextRich = CTextRich::create(); pTextRich->insertElement("TEXT", "", 20); pTextRich->insertElement("Rich", "", 45); pTextRich->insertElement("And", "", 25, Color3B::RED); pTextRich->insertElement("cocos2d-x", "", 70, Color3B::BLUE); pTextRich->setPosition(Vec2(960/2, 640/2)); pTextRich->reloadData(); CColorView* pColor = CColorView::create(Color4B(255, 0, 0, 50)); pColor->setContentSize(pTextRich->getContentSize()); pColor->setPosition(Vec2(960/2, 640/2)); m_pWindow->addChild(pColor); m_pWindow->addChild(pTextRich); return true; }
void GuideLayer::initGuide() { //遮罩 auto mask = LayerColor::create(Color4B(255,255,255,200)); //new clippingNode clippingNode = ClippingNode::create(); addChild(clippingNode); //clipping config clippingNode->addChild(mask); clippingNode->setInverted(true); clippingNode->setAlphaThreshold(1.0f); //step setStep(1); //touch auto listener = EventListenerTouchOneByOne::create(); listener->setSwallowTouches(true);// true:不向下传递 false:向下传递 listener->onTouchBegan = CC_CALLBACK_2(GuideLayer::onTouchBegan,this); Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener,this); }
// on "init" you need to initialize your instance bool HelloWorld::init() { if ( !Layer::init() ) { return false; } // 创建一个菜单按钮,用于读取文件中的内容 auto* background = LayerColor::create(Color4B(255, 255, 255, 255)); addChild(background); auto* readLabel = Label::create("read", "Arial", 56); readLabel->setColor(Color3B(0, 0, 0)); auto* pReadLabel = MenuItemLabel::create(readLabel, this, menu_selector(HelloWorld::readCallback)); auto* buttonReadLabel = Menu::create(pReadLabel, NULL); buttonReadLabel->setPosition(320, 260); addChild(buttonReadLabel); auto* saveLabel = Label::create("save", "Arial", 56); saveLabel->setColor(Color3B(0, 0, 0)); auto* pSaveLabel = MenuItemLabel::create(saveLabel, this, menu_selector(HelloWorld::saveCallback)); auto* buttonSaveLabel = Menu::create(pSaveLabel, NULL); buttonSaveLabel->setPosition(320, 100); addChild(buttonSaveLabel); return true; }
bool GameLayer::init() { if( !LayerColor::initWithColor( Color4B(250, 248, 238, 255)) ) { return false; } _visibleSize = Director::getInstance()->getVisibleSize(); _origin = Director::getInstance()->getVisibleOrigin(); auto touchListener = EventListenerTouchOneByOne::create(); touchListener->setSwallowTouches(true); touchListener->onTouchBegan = CC_CALLBACK_2(GameLayer::onTouchBegan, this); touchListener->onTouchEnded = CC_CALLBACK_2(GameLayer::onTouchEnded, this); Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(touchListener, this); addMapBg(); addScore(); schedule(schedule_selector(GameLayer::updateScore), 0.2f, kRepeatForever, 0); return true; }
bool GameOver::init() { if (!Layer::init()) { return false; } _director = Director::getInstance(); Size visibleSize = _director->getVisibleSize(); Vec2 origin = _director->getVisibleOrigin(); _background = LayerColor::create(Color4B(0, 0, 0, 255)); _background->setPosition(Vec2(origin.x + visibleSize.width / 2, origin.y + visibleSize.height / 2)); this->addChild(_background); auto label = Label::createWithTTF("GAME OVER", "fonts/Marker Felt.ttf", 96); label->setPosition(Vec2(origin.x + visibleSize.width / 2, origin.y + visibleSize.height / 2)); this->addChild(label, 1); return true; }
bool NovelLayer::init() { if (!LayerColor::initWithColor(Color4B(0, 0, 0, 0))) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); setContentSize(visibleSize); // アトラス読み込み // auto cache = SpriteFrameCache::getInstance(); // cache->addSpriteFramesWithFile("chat_images.plist","chat_images.png"); // touch callbacks auto dispatcher = Director::getInstance()->getEventDispatcher(); auto listener = EventListenerTouchOneByOne::create(); listener->setSwallowTouches(true); listener->onTouchBegan = [this](Touch* touch, Event* event) { if (this->_touchAbsorber != NULL) { this->_touchAbsorber->processTap(); } return true; }; dispatcher->addEventListenerWithSceneGraphPriority(listener, this); // skipボタン作成 auto skipItem = MenuItemImage::create("ui/skip_button.png", "ui/skip_button.png", CC_CALLBACK_1(NovelLayer::_pushedSkipButton, this)); skipItem->setAnchorPoint(Vec2(1.0f, 1.0f)); skipItem->setPosition(Vec2(visibleSize.width - 20, visibleSize.height - 20)); auto menu = Menu::create(skipItem, NULL); menu->setPosition(Vec2::ZERO); menu->setName("skip_menu"); addChild(menu, 1); return true; }
Node *TopData::createTopView() { for (int i = 0; i < LEVEL_ELEMENT_COUNT; i++) { this->restElements[i] = this->levelDict->elements[i]; } Point origin = Director::getInstance()->getVisibleOrigin(); Size sceneSize = Director::getInstance()->getVisibleSize(); Node *topNode = NULL; if (UserData::getInstance()->relaxed == 1) { topNode = CSLoader::createNode("TopRelaxedNode.csb"); } else if (this->type == LEVEL_TYPE_ELEMENT) { topNode = CSLoader::createNode("TopResNode.csb"); this->setupElementScoreNode(topNode, this->levelDict, Color4B(231, 194, 227, 255), -15); } else if (this->type == LEVEL_TYPE_CROWN) { topNode = CSLoader::createNode("TopCrownNode.csb"); } else { topNode = CSLoader::createNode("TopScoreNode.csb"); } auto background = topNode->getChildByName("BackgroundTop"); float targetY = origin.y + sceneSize.height - background->getContentSize().height / 2; topNode->setPosition(origin.x + background->getContentSize().width / 2, targetY); topNode->setTag(MAIN_SCENE_TOP_NODE); return topNode; }
bool BattleUICardBoard::init(){ if (!Node::init()){ return false; } _backgroundBoard = Sprite::createWithSpriteFrameName("battle_ui_cardBoard.png"); _backgroundBoard->setAnchorPoint(Vec2(0, 0)); _backgroundBoard->setPosition(0, 0); this->addChild(_backgroundBoard, 0); _nextCardLabel = Label::createWithSystemFont("下一个:", "Arial", 28); _nextCardLabel->enableOutline(Color4B(0, 0, 0, 255), 2); _nextCardLabel->setPosition(-55, 100); this->addChild(_nextCardLabel, 1); _battleWaterBar = BattleUIWaterBar::createBattleUIWaterBar(_battleLayer); _battleWaterBar->setPosition(15, 3); _backgroundBoard->addChild(_battleWaterBar, 1); _characterNameList = _battleLayer->getCharacterNameList(); for (int characterNameIndex = 0; characterNameIndex < _characterNameList.size(); ++characterNameIndex){ _characterNames.push(_characterNameList[characterNameIndex]); } for (int cardIndex = 0; cardIndex < 4; ++cardIndex){ CharacterCard *card = CharacterCard::createCharacterCard(_characterNames.getNext(), _battleLayer, this); card->setPosition(_cardPosition[cardIndex]); this->addChild(card, 1); card->becomeReadyCard(); card->setID(cardIndex); _readyCards.push_back(card); } _addNewNextCard(); return true; }
bool example00002::init() { CCLOG("init method have been executed."); if(!LayerColor::initWithColor(Color4B(255,125,255,255))) { return false; } //_<_game logic start //create player Size visibleSize = Director::getInstance()->getWinSize(); auto player = Sprite::create("player.png", Rect(0,0,27,40)); player -> setPosition(Vec2(player->getContentSize().width /2 ,visibleSize.height / 2)); this->addChild(player); //create listener auto listener = EventListenerTouchOneByOne::create(); listener->setSwallowTouches(true); listener->onTouchBegan = [=](Touch* touch,Event* event) { return true; }; listener->onTouchEnded = CC_CALLBACK_2(example00002::onTouchEnded,this); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener,this); //execute schedule this->schedule(schedule_selector(example00002::gameLogic), 1.0f); //_>_game logic ended this->scheduleUpdate(); CocosDenshion::SimpleAudioEngine::getInstance()->playBackgroundMusic("background-music-aac.caf"); return true; };
LabelFNTColorAndOpacity::LabelFNTColorAndOpacity() { _time = 0; auto col = LayerColor::create( Color4B(128,128,128,255) ); addChild(col, -10); auto label1 = Label::createWithBMFont("fonts/bitmapFontTest2.fnt", "Test"); label1->setAnchorPoint( Point(0,0) ); addChild(label1, 0, kTagBitmapAtlas1); auto fade = FadeOut::create(1.0f); auto fade_in = fade->reverse(); auto seq = Sequence::create(fade, fade_in, NULL); auto repeat = RepeatForever::create(seq); label1->runAction(repeat); auto label2 = Label::createWithBMFont("fonts/bitmapFontTest2.fnt", "Test"); label2->setAnchorPoint( Point::ANCHOR_MIDDLE ); label2->setColor( Color3B::RED ); addChild(label2, 0, kTagBitmapAtlas2); auto tint = Sequence::create(TintTo::create(1, 255, 0, 0), TintTo::create(1, 0, 255, 0), TintTo::create(1, 0, 0, 255), NULL); label2->runAction( RepeatForever::create(tint) ); auto label3 = Label::createWithBMFont("fonts/bitmapFontTest2.fnt", "Test"); label3->setAnchorPoint( Point(1,1) ); addChild(label3, 0, kTagBitmapAtlas3); label1->setPosition( VisibleRect::leftBottom() ); label2->setPosition( VisibleRect::center() ); label3->setPosition( VisibleRect::rightTop() ); schedule( schedule_selector(LabelFNTColorAndOpacity::step) );//:@selector(step:)]; }