cocos2d-html5学习笔记(六)--alpha2中cc.Sequence.create中的bug
http://blog.csdn.net/allenice1/article/details/7747425
今天学习了action,可是练习cc.Sequence.create的时候。发现了问题。
cc.Sequence.create能够传一个action的数组进去,可是我试了非常多次,还是没成功。无奈之下,我去看了源码。
一看。原来是推断參数是否是数组的语句错了
- cc.Sequence.create = function (/*Multiple Arguments*/tempArray) {
- var paraArray = (typeof tempArray == "Array") ?
tempArray : arguments;
- var prev = paraArray[0];
- for (var i = 1; i < paraArray.length; i++) {
- if (paraArray[i] != null) {
- prev = cc.Sequence._actionOneTwo(prev, paraArray[i]);
- }
- }
- return prev;
- };
类型推断没有“Array”的,所以传数组进去的话,还是会当成传一个action进去,而不是一个action数组。
解决的方法就是替换推断參数是否是数组那一句,可是我们不能直接改cocos2d的源码。
我的解决的方法是新建一个文件,重写这种方法,然后载入cocos2d的库后,再载入我重写那个方法的文件。
下面是重写的代码:
Sequence.js
- cc.Sequence.create = function (/*Multiple Arguments*/tempArray) {
- var paraArray = (isArray(tempArray)) ? tempArray : arguments;
- var prev = paraArray[0];
- for (var i = 1; i < paraArray.length; i++) {
- if (paraArray[i] != null) {
- prev = cc.Sequence._actionOneTwo(prev, paraArray[i]);
- }
- }
- return prev;
- };
- function isArray (obj) {
- return Object.prototype.toString.call(obj) === '[object Array]';
- }
注意载入的顺序:
- cc.loadjs('lib/Cocos2d-html5-canvasmenu-min.js');
- cc.loadjs('lib/Sequence.js');
cocos2d-html5学习笔记(六)--alpha2中cc.Sequence.create中的bug的更多相关文章
- HTML5学习笔记<六>: HTML5框架, 背景和实体
HTML5框架 1. 框架标签(frame): 框架对于页面的设计有着很大的作用 2. 框架集标签(<frameset>): 框架集标签定义如何将窗口分割为框架 每个frameset定义一 ...
- HTML5学习笔记(二十):JavaScript中的标准对象
这里提到的标准对象指ECMAScript中定义的对象,无论JavaScript运行那种环境(浏览器.Node.js)下都存在的对象. typeof 在JavaScript的世界里,一切都是对象. 但是 ...
- # go微服务框架kratos学习笔记六(kratos 服务发现 discovery)
目录 go微服务框架kratos学习笔记六(kratos 服务发现 discovery) http api register 服务注册 fetch 获取实例 fetchs 批量获取实例 polls 批 ...
- Spring Boot 学习笔记(六) 整合 RESTful 参数传递
Spring Boot 学习笔记 源码地址 Spring Boot 学习笔记(一) hello world Spring Boot 学习笔记(二) 整合 log4j2 Spring Boot 学习笔记 ...
- html5学习笔记一
HTML5学习笔记 <video>标记:定义视频,Ogg.MPEG4.WebM三种格式 <video src=”movie.ogg” controls=”controls”> ...
- java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)
java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...
- Typescript 学习笔记六:接口
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- python3.4学习笔记(六) 常用快捷键使用技巧,持续更新
python3.4学习笔记(六) 常用快捷键使用技巧,持续更新 安装IDLE后鼠标右键点击*.py 文件,可以看到Edit with IDLE 选择这个可以直接打开编辑器.IDLE默认不能显示行号,使 ...
- Go语言学习笔记六: 循环语句
Go语言学习笔记六: 循环语句 今天学了一个格式化代码的命令:gofmt -w chapter6.go for循环 for循环有3种形式: for init; condition; increment ...
随机推荐
- TMapTextfile v.99/1
By Hellinger Software. Class to handle text files as memory mapped files. Including efficient method ...
- warning: suggest parentheses around assignment used as truth value
编译时的警告如下:
- python 实现Hadoop的partitioner和二次排序
我们知道,一个典型的Map-Reduce过程包 括:Input->Map->Partition->Reduce->Output. Partition负责把Map任务输出的中间结 ...
- [翻译] SFRoundProgressCounterView 带有进度显示的倒计时视图
SFRoundProgressCounterView 带有进度显示的倒计时视图 https://github.com/simpliflow/SFRoundProgressCounterView A c ...
- 仿LOL项目开发第五天
仿LOL项目开发第五天 by草帽 今天呢,我们看下能开发什么内容,首先上节我们已经讲了UI框架的搭建,上节还遗留下很多问题,比如说消息的字符是代码里面自己赋值的. 那么就比较死板,按照正常的逻辑,那些 ...
- Webharvest网络爬虫应用总结,web-harvest 编写脚本 读取 百度 博客 实例
Webharvest网络爬虫应用总结 Web-Harvest是一个Java开源Web数据抽取工具.它能够收集指定的Web页面并从这些页面中提取有用的数据.其实现原理是,根据预先定义的配置文件用ht ...
- 机器学习: 神经网络中的Error函数
利用神经网络做分类的时候,可以将神经网络看成一个mapping function,从输入到输出经过复杂的非线性变换.而输出的预测值与实际的目标值总是存在一定偏差的,一般利用这种偏差建立error 函数 ...
- Spring Bean 注入 2 注解篇
1. 自动装配注解 配置applicationContext.xml开启注解 <?xml version="1.0" encoding="UTF-8"?& ...
- SpEL笔记
SpEL使用示例 <bean id="chineseA" class="com.xxx.bean.Chinese" scope="prototy ...
- .net 序列化与反序列化
1.序列化 反序列化 C#中如果需要:将一个结构很复杂的类的对象存储起来,或者通过网路传输到远程的客户端程序中去,这时就需要用到序列化,反序列化(Serialization & Deseria ...