Search code examples
cocos2d-android

How to do Android COCOS-2d Menuitem Animation?


Cocos2d-android - I have an animation which has 5 Frames. which will rolling in position. how to make the button rolling like a globe.


Solution

  • I don't know if it can be done like menuitem, but you can make a sprite with forever action(animation of yours 5 frames)and in ccTouchesBegan/ccTouchesEnded you add code to go to another scene or for do an another function after touching on your sprite.

    `private CCSprite animatedButton; // Make your sprite visible at begin of your class/layer.`
    
    
    `animatedButton = CCSprite.sprite("yourImage.png");
     CCAnimation buttonAnimation = CCAnimation.animation("", 1f);
     buttonAnimation.addFrame("1.png");     
     buttonAnimation.addFrame("2.png"); 
     addChild(animatedButton, 1);
     CCIntervalAction buttonAction = CCAnimate.action(duration, buttonAnimation, false);
     animatedButton.runAction(CCRepeatForever.action(buttonAction));
     `
    

    Now should be your button(CCSprite) animating. I didnt tried code. And now you just find out in ccTouchesBegan or ccTouchesEnded if your button was touched. If yes, you could do what you want. :)

    `if(animatedButton.getBoundingBox.contains(x,y)){
       CCScene scene = GameLayer.scene();       
       CCDirector.sharedDirector().replaceScene(scene);
     }`
    

    X and y are coordinates of touch;