cocos2d入门教程2:基本概念Actions

来源:互联网 发布:centos7端口无法打开 编辑:程序博客网 时间:2024/06/05 15:44

Actions就像发给任何CCNode对象的命令。这些动作改变对象的一些属性(position,rotation,scale等)。

如果这些属性在一段时间内被改变,用CCIntervalAction,否则用CCInstantAction。

举例来说:CCMoveBy动作在一段时间内改变position属性,因此,它是CCIntervalAction的子类。

程序:

//在2秒内让精灵向右移动50像素,向上移动10像素

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

CCIntervalAction有一些属性:

1:他们能用改变时间的动作来加速(time-altered actions)

(1)CCEaseIn

(2)CCEaseOut

(3)CCEaseInOut

(4)CCSpeed

2:所有相关动作(以“By”结尾的动作)和一些据对动作(以“TO”结尾的动作)都有一个翻转动作(reverse action)

     [action  reverse] 在相反的方向来执行动作。

你能通过CCActionManager来暂停恢复所有的actions

    [[CCActionManager sharedManager ] pauseAllActionsForTarget : sprite ];

    [[CCActionManager sharedManager ] resumeAllActionsForTarget : spite];

基本的动作:

位置position:

CCMoveBy

CCMoveTo

CCJumpBy

  CCJumpTo

CCBezierBy

CCBezierTo

CCPlace

缩放scale

CCScaleBy

CCScaleTo

旋转rotation

CCRotateBy

CCRotateTo

可视visible

CCShow

CCHide

CCBlink

CCToggleVisibility

透明度opacity

  CCFadeIn

CCFadeOut

CCFadeTo

rgb

CCTintBy

CCTintTo

举例:

CGSize s = [[CCDirector sharedDirector] winSize]; id actionTo = [CCMoveTo actionWithDuration: 2 position:ccp(s.width-40, s.height-40)];id actionBy = [CCMoveBy actionWithDuration:2  position: ccp(80,80)]; [sprite1 runAction: actionTo];[sprite2 runAction:actionBy];

	
				
		
原创粉丝点击