gpt4 book ai didi

cocos2d-iphone - 在 cocos2d 中实现动画按钮

转载 作者:行者123 更新时间:2023-12-04 04:25:18 25 4
gpt4 key购买 nike

我希望克隆在 Candy Crush Saga 中找到的按钮动画效果。
我也想知道如何制作这样流畅漂亮的动画。
Cocos2d-iPhone 可以吗?

这是糖果粉碎圣人的链接:

http://www.youtube.com/watch?v=KAMUWIqYN24

它是使用图像序列完成的吗?

最佳答案

有可能的。只需在按钮普通 Sprite 上运行动画。

GTAnimSprite *frame_normal   = [GTAnimSprite spriteWithFile:@"play_button_normal.png"];
GTAnimSprite *frame_sel = [GTAnimSprite spriteWithFile:@"play_button_selected.png"];
frame_sel.color = ccc3(128,128,128);

CCMenuItemSprite *plyBtn = [CCMenuItemSprite itemWithNormalSprite:frame_normal
selectedSprite:frame_sel
target:self
selector:@selector(playBtnPress:) ];

plyBtn.position = ccp(size.width*0.77f, size.height*0.1f);

CCMenu *menu2 = [CCMenu menuWithItems:plyBtn, nil];
menu2.position = ccp(0.0f,0.0f);
[self addChild:menu2 z:2 ];

//这里是类文件: GTAnimSprite.h
#import <Foundation/Foundation.h>
#import "cocos2d.h"

@interface GTAnimSprite : CCSprite
{
bool bouncing;
float counter;

}
@end

//这里是类文件: GTAnimSprite.mm
#import "GTAnimSprite.h"

@implementation GTAnimSprite

-(void)onEnter
{
[super onEnter];

counter = 0.0f;

bouncing = true;

[self scheduleUpdate];
}

-(void)update:(ccTime)dt
{
if (bouncing)
{
counter += dt;

self.scaleX = ( (sin(counter*10) + 1)/2.0 * 0.1 + 1);
self.scaleY = ( (cos(counter*10) + 1)/2.0 * 0.1 + 1);

if (counter > M_PI*10){
counter = 0;
}
}
}

-(void)onExit
{
[self unscheduleUpdate];

[super onExit];
}

@end

这是 XCODE 示例源:https://www.box.com/s/52i4xyznetyyc329evcu

关于cocos2d-iphone - 在 cocos2d 中实现动画按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16419368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com