cocos2d-x 3.0游戏实例学习笔记 《跑酷》 完结篇--源代码放送
说明:这里是借鉴:晓风残月前辈的博客,他是将泰然网的跑酷教程,用cocos2d-x
2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记
OK,到昨天为止,我们已经将游戏基本上写完了,这里本来就是别人开源的东西,我这里重写,当然要发布源代码。那么这里有两种方式:
第一种:将我执行成功的整个项目打包,VS2012+win7下的,这样的方式就比較大,可是能够打开打开 Run/proj.win32/Run.sln 就能够啦
另外一种:就是我仅仅打包 Resource 和 class里面的东西。。可是这里会遇到 Extension 的相关问题,由于我用了button,这个解决方法在前面的 cocos2d-x
3.0游戏实例学习笔记 《跑酷》 第五步--button控制主角Jump&Crouch 其中有具体解决方法
或者留下邮箱
已经修复bug,而且共享下载地址已经改动-----2014-8-2
链接: 整个项目 204m
---------- 资源&代码1.18m
注意一个地方:PlayScene中的crouchEvent函数中,我们须要加入�一个推断, 在m_runner->getState() == running 的情况下 再运行 m_runner->Crouch();m_runner->setPosition(.......);
不然在跳起来的情况下,buttonCrouch,主角尽管不会Crouch,但是会 setPosition 改变位置。。。。。。。
仅仅是在昨天另一个小问题,本来想昨天攻克了,然后一起在这里给出。谁知道。。。。哎哎。。问题就是:
我们游戏中,主角撞到岩石,然后切换到GameOver 场景,这个场景中有一个button,reStart。又一次開始,按下去回调函数是切换为游戏场景。。。可是button会失效。。。。可是这里并非button写出问题啦,我在AppDelegate中,用GameOver场景,然后button是能够切换到游戏场景。。游戏结束切换到MainScene之后,startbutton又失效啦。。。这里也问了不少人,可是因为个人描写叙述不清,所以没有得到解决,这里希望下载源代码的各位能找到解决方法,与我以及大伙分享下。。。
哈哈哈,仰天长啸。bug解决啦,事实上就是在碰撞检測中加入�事件派发的时候出了问题:
错误的代码改动:
<span style="font-size:14px;">void PlayScene::onEnter(){
Layer::onEnter();
auto contactListenner = EventListenerPhysicsContact::create();
//CC_CALLBACK表示回调函数的參数个数
contactListenner->onContactBegin = CC_CALLBACK_1(PlayScene::onContactBegin,this);
//dispatcher = Director::getInstance()->getEventDispatcher();//这里不再使用自己弄的事件派发
//_eventDispatcher应该是一个时间派发的全局变量。。所有给它管理就是的
_eventDispatcher->addEventListenerWithSceneGraphPriority(contactListenner,this);
}</span>
新的完整project项目已经打包,上面的下载地址也都更新啦......啦啦啦,最终能够安心的弄下一个游戏实例啦
总结:事实上学习过程中,个人觉得最有效的方法就是:学习了知识点,然后用实例练习,并且在实例练习其中。我们应该是先了解设计思想,然后自己先试着实现,过程中可能会遇到非常多问题,你能够查看源代码,单独抽离部分功能成一个样例測试,或者百度&问大牛们。。。。而不是一有点问题就到处问,用我们一位老师的话来说就是:学会自学将让你受益终生。
OK,个人愚昧观点,欢迎指正与讨论
cocos2d-x 3.0游戏实例学习笔记 《跑酷》 完结篇--源代码放送的更多相关文章
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》第一步--- 开始界面
说明:这里是平局:晓风残月前辈的博客.他是将泰然网的跑酷教程.用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》 第三步---主角开跑&同一时候带着刚体
说明:这里是借鉴:晓风残月前辈的博客.他是将泰然网的跑酷教程.用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》移植到android手机
说明:这里是借鉴:晓风残月前辈的博客.他是将泰然网的跑酷教程.用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- coco2d-x 3.0游戏实例学习笔记 《跑酷》 第二步---游戏界面&全新的3.0物理世界
说明:这里是借鉴:晓风残月前辈的博客,他是将泰然网的跑酷教程.用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写.并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》第七步--物理碰撞检測(1)
说明:这里是借鉴:晓风残月前辈的博客,他是将泰然网的跑酷教程,用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》第四步--地图循环&主角加入动作
说明:这里是借鉴:晓风残月前辈的博客,他是将泰然网的跑酷教程,用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》 第六步--金币&岩石加入而且管理
说明:这里是借鉴:晓风残月前辈的博客,他是将泰然网的跑酷教程,用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记 《跑酷》 第五步--button控制主角Jump&Crouch
说明:这里是借鉴:晓风残月前辈的博客.他是将泰然网的跑酷教程,用cocos2d-x 2.X 版本号重写的,眼下我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记 ...
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第二步---编辑器(1)--触摸加入点
/* 说明: **1.本次游戏实例是<cocos2d-x游戏开发之旅>上的最后一个游戏,这里用3.0重写并做下笔记 **2.我也问过木头本人啦,他说:随便写,第一别全然照搬代码:第二能够说 ...
随机推荐
- 字符(汉子)转换为ASCII
一般在jdk里面都会自包含一个官方提供的转换工具:native2ascii.exe 调用方法: 打开cmd界面,使用cd C:\Program Files\Java\jdk1.6.0_39\bin命 ...
- FTP Client
1: /// <summary> 2: /// FTP 管理类 3: /// </summary> 4: public class FTPManage 5: { 6: priv ...
- Web 前沿——HTML5 Form Data 对象的使用(转)
XMLHttpRequest Level 2 添加了一个新的接口——FormData.利用 FormData 对象,我们可以通过 JavaScript 用一些键值对来模拟一系列表单控件,我们还可以使用 ...
- SQL Server中带事务的存储过程简单举例
先来看一个概念: 数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完整地执行,要么完全地不执行.那么在存储过程里添加事务,则可以保证该事务里的所 ...
- [canvas]通过动态生成像素点做绚丽效果
本例中的粒子就是实实在在的像素,由js代码在canvas上动态生成的像素点!这些像素点通过一个运动方法有规律地动了起来.透过这个思路,我们可以想到很多很炫的效果,但是这个性能有待考察.实验证明,动态控 ...
- (转) Java程序员应该知道的10个调试技巧
原地址:http://www.csdn.net/article/2012-09-03/2809495-java-debugging-tips-with-eclipse 调试可以帮助识别和解决应用程序缺 ...
- (原)下载pubFig的python代码
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5715305.html pubFig数据库网址: http://www.cs.columbia.edu/ ...
- mysql中函数DISTINCT,group by,CONCAT及GROUP_CONCAT的使用
一:DISTINCT 在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是 ...
- setInterval()-----------js 函数总结
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭.由 s ...
- web.xml中配置log4j
1.将 commons-logging.jar和 log4j.jar加入你的项目中:2.在src/下创建log4j.properties|log4j.xml文件:3.在web.xml中配置log4j的 ...