5七/100
iPhone开发之游戏篇(3)— cocos2d的Actions构成
iPhone开发之游戏篇(3)--- cocos2d的Actions构成
Sequence 顺序
顺序Action能够让你创建一系列的动作,这些动作将会按着顺序被执行。
1 2 3 4 |
id action1 = [MoveTo actionWithDuration:2 position:ccp(100,100)]; id action2 = [MoveBy actionWithDuration:2 position: ccp(80,80)]; id action3 = [MoveBy actionWithDuration:2 position: ccp(0,80)]; [sprite runAction: [Sequence actions:action1, action2, action3, nil]]; |
Action1 将会被首先执行,当action1执行结束,action2将会被执行,当action2结束,是action3。
注意:这个action不能是一个无限的时间。例如,你不能增加一个重复到永远的action到这个顺序action里面。
Spawn 并发
这个action使得你可以在同一个时间运行多个action。这个动做的持续时间是子action的最长时间。
1 2 3 4 |
id action = [Spawn actions: [JumpBy actionWithDuration:2 position:ccp(300,0) height:50 jumps:4], [RotateBy actionWithDuration: 2 angle: 720],nil]; [sprite runAction:action]; |
Repeat 重复
这个重复Action可以让你有限次数的重复一个动作。
1 2 3 4 |
id a1 = [MoveBy actionWithDuration:1 position:ccp(150,0)]; id action1 = [Repeat actionWithAction: [Sequence actions: [Place actionWithPosition:ccp(60,60)], a1, nil]times:3]; [sprite runAction:action1]; |
RepeatForever 永远重复
永远重复这个动作是一个特殊的action,它将会一直持续下去。因为它的时间是无法测量的。
1 2 3 4 |
id a1 = [MoveBy actionWithDuration:1 position:ccp(150,0)]; id action2 = [RepeatForever actionWithAction: [Sequence actions: [[a1 copy] autorelease], [a1 reverse], nil] ]; [sprite runAction:action2]; |
注意:永远重复的这个action不是一个有效的IntervalAction,他不能被放置在一个序列action里面。
相关文章
- iPhone开发之深入浅出 (3) --- ARC之前世今生 - (2012-02-19)
- iPhone开发之深入浅出 (2) --- ARC之@property使用 - (2012-01-04)
- iPhone开发之深入浅出 (1) --- ARC是什么 - (2012-01-01)
- iPhone开发技巧之调试篇(3)--- 程序Crash后的调试技巧 - (2011-11-06)
- iPhone开发之游戏篇(2) --- cocos2d的Actions - (2010-07-03)
- iPhone开发之游戏篇(1) --- cocos2d的基本概念 - (2010-07-01)
- iPhone开发进阶(11)--- 多线程的使用与注意事项 - (2010-03-09)
- iPhone开发进阶(10)--- 在程序中使用 GPS - (2010-03-07)
- iPhone开发进阶(9)--- 用SQLite管理数据库 - (2010-03-06)
- iPhone开发进阶(8)--- 检测屏幕触摸事件 - (2010-03-04)
- iPhone开发进阶(7)--- 利用ModalViewController切换View - (2010-03-02)
- iPhone开发进阶(6)--- 编程定制UIButton - (2010-02-27)
- iPhone开发进阶(5) --- 编程定制UIViewController - (2010-02-25)
- iPhone开发进阶(4) --- 使用Makefile自动编译iPhone程序 - (2010-02-23)
- iPhone开发进阶(3) --- iPhone应用程序的启动过程 - (2010-02-21)
- iPhone开发进阶(2) --- iPhone应用程序/项目的构成 - (2010-02-19)
- iPhone开发进阶(1) --- 深入理解iPhone OS/SDK与Objective-C 2.0 - (2010-02-17)
- iPhone、Android、Symbian … 移动设备应用程序开发的趋势与对策 - (2010-02-14)
- 使用org-mode来GTD(3)--- iPhone中使用org-mode - (2010-02-06)
- iPhone开发入门(11)--- 在App Store上发布程序 - (2010-01-21)
- iPhone开发入门(10)--- 设备上运行程序 - (2010-01-19)
- iPhone开发入门(9)--- 实际开发中的应用技巧 - (2010-01-16)
- iPhone开发入门(8)--- 程序画面与控件调整 - (2010-01-05)
- iPhone开发入门(7)--- 从C/C++语言到Objective-C语言 - (2009-12-31)
- iPhone开发入门(6)--- Action与Objective-C - (2009-12-19)