cocos2d programming guide 基本动作

本文详细介绍了Cocos2d-x中各种动作的使用方法,包括如何通过CCNode对象来执行不同类型的动作,例如位置、比例、旋转等变化,并提供了具体的代码示例。

动作

动作是由任意的CCNode对象给出的。动作经常来修改一些对象的属性比如位置,旋转,比例等等。如果这些属性是在一段时间内被修改,最好用CCIntervalAction动作或者CCInstantAction动作。

举例来说,CCMoveBy动作在一段时间内修改位置属性。因此它是一个CCIntervalAction子类。

// Move a sprite 50 pixels to the right, and 10 pixels to the topover 2 seconds.

[sprite runAction: [CCMoveBy actionWithDuration:2 position:ccp(50,10)]];

CCintervalAction动作有一些有趣的属性:

CCEaseIn

CCEaseOut

CCEaseInOut

CCSpeed

Etc….

所有相关的动作(以By)和一些绝对的动作(以To)有一个转换动作([actionreverse])来执行相对方向上的动作。

你可以通过CCActionManager来停止/继续所有的动作。

//Pause actions

[[CCActionManagersharedManager ] pauseAllActionsForTarget:sprite ] ;

 

//resume actions

[[CCActionManager sharedManager ]resumeAllActionsForTarget:sprite ] ;

基本动作

有一些基本的修改属性的动作

位置:

CCMoveBy

CCMoveTo

CCJumpBy

CCBezierBy

CCBezierTo

CCPlace

比例:

CCScaleBy

CCScaleTo

旋转:

CCRotateBy

CCRotateTo

可见:

CCShow

CCHide

CCBlink

CCToggleVisibility

不透明:

CCFadeIn

CCFadeOu

tCCFadeTo

r,g,b:

CCTintBy

CCTintTo

CGSize s = [[CCDirector sharedDirector] winSize];

 

id actionTo = [CCMoveToactionWithDuration: 2 position:ccp(s.width-40,s.height-40)];


例子:

id actionBy = [CCMoveByactionWithDuration:2  position: ccp(80,80)];

 

[sprite1runAction: actionTo];

[sprite2 runAction:actionBy];

转换动作:

几乎所有的动作通过转换方法来实现。创建一个基本的动作通过 转换方法。

例子

id move = [CCMoveByactionWithDuration:2  position: ccp(80,80)];

id move_reverse = [move reverse];


move_reverse动作将会每隔2s来执行一次CCMoveBy动作,把坐标的值变为(-80,-80)。

转载于:https://www.cnblogs.com/pengyingh/articles/2433456.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值