关于Cocos2d-x的一些认识(4)
接上篇: 1.飘字效果的三个动作用sequence来组合,因为放大和缩小的执行只在一瞬间,然后它会根据设置动作持续时间来播放,但是执行只是一瞬间,所以要是用spawn来组合播放的话只会一下子闪过。 2.create _func这个宏里 写了调用init函数,所以只要有creat func的类就一定会有init(),并且创建对象,场景等这些需要初始化(写init())的都要写createfunc,创建的时候会自动调用init()。宏里面是一系列代码,所以创建类的时候这么多代码一起执行了,所以create func里的东西一定会被调用) 3.CocoStudio 2.x版本导均使用node*x=csloder::createnode()来创建,而且ui场景想要播放动画,一个节点只能播放同一个文件里创建的动画,并且必须用gotoframeandplay来设置是否循环播放和播放到第几帧,不然不播放 4.(cocos经常使用)参数类型是父类,用其子类作为参数传入没有错误。 5.事件派发机制:首先在需要接受消息的类里写addobserve(a,b,c,d);再在需要发送消息的类里写上postnotification(e,f);来发送,接受方会根据c(必须是string类型,不然要强制转换)来识别是不是该接受这个消息,再利用回调函数b来执行收到消息后该做的响应(全写在里面)。a一般写this表示本类接受。d可以传入传出数据(代替全局变量),f也可以做同样的事,但是必须是ref*类型,不然要自己进行强制转换,而且两个函数里不能同时写不一样的数据,不然会发生冲突导致什么都不显示。。。 6.cocostudio设置了交互以后,会吞没它下面的所有触摸事件。即表示该控件是否拦截输入,触摸等消息。使得只有这一层有交互属性(暂停跳出的界面就不用担心前一层了啦) 7.Map->getmapsize获取的是瓦片的数量而不是单块瓦片的大小,width是x方向的数量,height是y方向的 8.私有成员在头文件声明的时候没有初始化,记得在init里create或new,不然可能报错 9.?Moveto匀速技巧,算出触摸点和主角之间的距离,然后除以一个比较大的数来获得你满意的移动速度 10.头文件直接不能相互包含,不然会报错说"缺少;在*前面,缺少类型说明符,假定为int" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- vb.net – 相当于“打开文件名输出为#1”VB6到.NET
- ruby-on-rails – Geocoder,当ip为127.0.0.1时如何在本地测
- Blob列SQlite Adob??e AIR中的第一个字节是什么? Blob Siz
- Swift借助CocoaPods库实现UI功能上的串串烧
- c# – 在ASP.NET网页中枚举字典
- c – 是否可以在QTreeWidget中设置多个项目?
- 需要Flex说明:width,min(max)Width,explicitWidth,explici
- ReactiveCocoa比较区分replay, replayLast和replayLazily
- Github上提交项目(一)—Https方式
- ruby – 为什么这段代码会两次打印相同的东西?