Cocos2d-x动作

一、动作由继承Node类的对象执行(Layer,Sprite,Label)

MoveBy(移动坐标):

auto action = MoveBy::create(时间,Vec2());
sqr->runAction(action);

MoveTo(移动到):

auto action = MoveTo::create(时间,Vec2());
sqr->runAction(action);

JumpBy(跳跃坐标):贝塞尔曲线

&auto action = JumpBy::create(时间,Vec2(),高度,次数);
sqr->runAction(action);

JumpTo(跳跃到坐标):贝塞尔曲线

auto action = JumpTo::create(时间,Vec2(),高度,次数);
sqr->runAction(action);

BezierBy,BezierTo:贝塞尔曲线

ccBezierConfig bc;//声明结构体
bc.controlPoint1 = Vec2();//第一个控制点坐标
bc.controlPoint2 = Vec2();//第二个控制点坐标
bc.endPosition = Vec2();//终点坐标
auto action = BezierTo::create(时间,bc);

Place:

auto action = Place::create(Vec2());

ScaleBy(以当前对象为基准缩放),ScaleTo(将对象缩放到指定大小):

auto action = ScaleTo::create(时间,倍数);

RotateBy(根据角度旋转),RotateTo(最快旋转到达目标点):正负表示方向

auto action = RotateBy::create(时间,角度);
sqr->runAction(action);

Show=setVisible(true)

auto action = Show::create();
Hide=setVisible(false)
auto action = Hide::create();
ToggleVisibility改变可视性
auto action = ToggleVisibilty::create();

Blink指定时间将节点对象闪烁指定次数:

auto action = Blink::create(时间,次数);

FadeIn淡入:透明度从0到255

auto action = FadeIn::create(时间);

FadeOut淡出:透明度从255到0

auto action = FadeOut::create(时间);

FadeTo在指定时间把对象透明度变为指定值:

sqr->setOpacity(0-255);
auto action = FadeTo::create(时间,0-255);

TintBy,TintTo改变对象颜色:

auto action = TintTo::create(时间,RGB值);

二、复合动作:

序列动作

auto action = Sequence::create(action1,action2,NULL);

并列动作:

auto action = Spawn::create(action1,action2,NULL);

逆动作(通常以by结尾的动作):

auto action = action1->reverse();

延时动作:

auto action = DelayTime::create(时间);

重复、无限重复动作:

auto action = Repeat::create(action1,次数);

变速动作(施加加速度):

1.EaseIn,EaseOut,EaseInOut(降低速度):

auto action = EaseIn::create(action1,加速度比率);

2.EaesSineIn,EaseSineOut,EaseSineInOut(与加速比率为1.5的Ease动作类似):

auto action = EaseIn::create(action1);

3.EaseExponentialIn,EaseExponentialOut,EaseExponentialInOut(与加速比率为6.5的Ease动作类似):

auto action = EaseExponentialIn::create(action1);

4.EaseElasticIn,EaseElasticOut,EaseElasticInOut(橡皮筋弹跳):

auto action = EaseElasticIn::create(action1);

5.EaseBackIn,EaseBackOut,EaseBackInOut(回力效果):

auto action = EaseBackIn::create(action1);

6.EaseBounceIn,EaseBounceOut,EaseBounceInOut(皮球弹跳):

auto action = EaseBounceIn::create(action1);

7.CallFunction动作:调用方法

CallFunc不含参,CallFuncN含参
.h头文件:
void setCallFunc_0();
void setCallFunc_1(Ref *sender);
void setCallFunc_2(Ref *sender,void *d);
void setCallFunc_3(Ref *sender,Ref object);
.cpp文件:
auto action = CallFunc::create(CC_CALLBACK_0,(HelloWorld::setCallFunc_0,this));
auto action = CallFunc::create(CC_CALLBACK_1,(HelloWorld::setCallFunc_1,this));
auto action = CallFunc::create(CC_CALLBACK_1,(HelloWorld::setCallFunc_2,this,(void
)“Cocos2d-x”));
auto action = CallFunc::create(CC_CALLBACK_1,(HelloWorld::setCallFunc_3,this,sqr_2));

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值