4737 auto s = Director::getInstance()->getWinSize();
4739 auto cache = SpriteFrameCache::getInstance();
4740 cache->addSpriteFramesWithFile(
"animations/grossini.plist");
4741 cache->addSpriteFramesWithFile(
"animations/grossini_gray.plist",
"animations/grossini_gray.png");
4743 auto spritebatch = SpriteBatchNode::create(
"animations/grossini.png");
4744 addChild(spritebatch);
4746 for(
int i=0;i<3;i++)
4751 auto sprite = Sprite::createWithSpriteFrameName(
"grossini_dance_01.png");
4752 sprite->setPosition(Vec2(s.width/4*(i+1), s.height/2));
4754 auto point = Sprite::create(
"Images/r1.png");
4756 point->setScale(0.25f);
4757 point->setPosition(sprite->getPosition());
4763 sprite->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
4766 sprite->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
4769 sprite->setAnchorPoint(Vec2::ANCHOR_TOP_RIGHT);
4773 point->setPosition(sprite->getPosition());
4775 Vector<SpriteFrame*> animFrames(14);
4776 for(
int j = 0; j < 14; j++)
4779 snprintf(pngName, 30,
"grossini_dance_%02d.png", (j+1));
4780 auto frame = cache->getSpriteFrameByName(pngName);
4781 animFrames.pushBack(frame);
4783 auto animation = Animation::createWithSpriteFrames(animFrames, 0.3f);
4784 sprite->runAction(RepeatForever::create(Animate::create(animation)));
4787 auto skewX = RotateBy::create(2, 45, 0);
4788 auto skewX_back = skewX->reverse();
4789 auto skewY = RotateBy::create(2, 0, 45);
4790 auto skewY_back = skewY->reverse();
4792 auto seq_skew = Sequence::create(skewX, skewX_back, skewY, skewY_back,
nullptr);
4793 sprite->runAction(RepeatForever::create(seq_skew));
4796 auto scale = ScaleBy::create(2, 2);
4797 auto scale_back = scale->reverse();
4798 auto seq_scale = Sequence::create(scale, scale_back,
nullptr);
4799 sprite->runAction(RepeatForever::create(seq_scale));
4801 spritebatch->addChild(sprite, 0);