博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d programming guide 基本动作
阅读量:7272 次
发布时间:2019-06-29

本文共 1162 字,大约阅读时间需要 3 分钟。

动作

动作是由任意的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 ] ;

基本动作

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

位置:

比例:

旋转:

可见:

不透明:

r,g,b:

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)。

转载地址:http://mencm.baihongyu.com/

你可能感兴趣的文章
centos重启网卡提示:/org/freedesktop/NetworkManager/ActiveConnection/3
查看>>
通过XShell链接虚拟机的CentOS
查看>>
java numa
查看>>
度量快速开发平台中调用存储过程介绍
查看>>
慎用动态编译
查看>>
XenDesktop 5.5和XenApp 6.5三季度发布
查看>>
03_04 Linux用户及权限详解(上)
查看>>
marathon参考(11):ports端口设置
查看>>
Ubuntu更新源
查看>>
istio中的流量管理的核心组件是Pilot(理论)
查看>>
xxtea加密算法的PHP实现
查看>>
【撸码师的备忘录】 Java bean 与 xml 互相转化-JDK Marshaller
查看>>
前端之vue2.0 创建项目
查看>>
硬盘读写原理
查看>>
dedecms插件开发教程
查看>>
Linux容易忘记或忽略的基础细节(二)
查看>>
MONDRIAN使用心得
查看>>
Web开发框架DevExtreme发布v16.2.3|附下载
查看>>
Python之配置日志模块logging
查看>>
ecshop设置商品促销由天具体到时分秒
查看>>