《兔子大战转基因》的副产物 -- 两个cocos2dx游戏的源代码分享

之前,我一直没有打算过要搞手机游戏。直到最近发现自己还没有能力做一个好玩的PC游戏,而又想有点满足感,所以还是决定先尝试学一下手机游戏开发,了解一下一个游戏的基本架构。

于是,在前一段时间里,我都在玩小游戏,希望找点创作灵感。当然,也同时开始学习手机游戏开发。在网上找了好几篇关于cocos2dx的文章来看,发现这框架还是比较易用的。所以,我决定开始动手做个小游戏了。鉴于没有美工,我决定先克隆(约等于山寨)一个现有的小游戏 -- 《兔子大战转基因》(http://wanga.me/25523)。它是一个flash游戏。我想,把它做成一个手机游戏还是不错的。于是,我下载了这个flash游戏,用反编译工具提取了里面的部分图片素材(本人表示完全尊重原著的版权,提取的这些素材仅供本人学习用)。倒腾了几天,做出了如下的初步结果:

       

但是,总感觉自己的代码充满臭味。。。结构非常不好。我尝试了重构,但感觉还是很差。万幸的是,我在此时忽然找到了一份比较完整的cocos2d-xna的例程。里面教会了我关于scene的概念,还有GameRoot这个概念等等。

 


 

这个例程是nowpaper的Sanguo Commander,是基于cocos2d-xna + c#的,我将它改成了cocos2dx + c++了。

原教程链接如下:

http://www.cnblogs.com/nowpaper/archive/2012/09/11/2680852.html

我改写后的代码如下:

(如果侵犯了原作者的权益,请联系我,我必定尽快删除改写的代码的下载链接)

https://files.cnblogs.com/tetris/SanguoCommander.rar

apk包:

https://files.cnblogs.com/tetris/org.cocos2dx.sanguocommander.SanguoCommander.apk

(其中一个细节:原文章中有一个部分用到c#中的dictionary,我将它改成了使用一个普通的数组了)

 


 

另外一个例程是有Allen Tan写作,由eseedo翻译的类似Scott Pilgrim的2D横版格斗过关游戏。他是基于cocos2d + obj-c的。

原文链接为:

http://www.raywenderlich.com/24155/how-to-make-a-side-scrolling-beat-em-up-game-like-scott-pilgrim-with-cocos2d-part-1

翻译后的链接为:

http://blog.sina.com.cn/s/blog_4b55f6860101a9b7.html

我改写后的代码下载链接为:

(如果侵犯了原作者的权益,请联系我,我必定尽快删除改写的代码的下载链接)

https://files.cnblogs.com/tetris/PrompaDroid.rar

apk包:

https://files.cnblogs.com/tetris/org.cocos2dx.pompadroid.PompaDroid.apk

(由于这个改写得比较粗糙,有部分代码不是由原教程逐行翻译过去的。例如,虚拟控制手柄我是用了sneaky库。并且,不知道为什么,batchnode那里好像用不了,我就直接向layer里addchild了。并且后面音效那部分我也没加进去)

 

 最后提一下,我用的cocos2dx的版本是cocos2d-2.0-rc2-x-2.0.1

posted @ 2012-12-17 13:58  sir.teT  阅读(1243)  评论(0)    收藏  举报