`
zjjzmw1
  • 浏览: 1366206 次
  • 性别: Icon_minigender_1
  • 来自: 开封
社区版块
存档分类
最新评论

cocos2d 2.0以后的修改

 
阅读更多

1.所有sprite的创建改为sprite::cretae

2.没有了CCMutableArray 全改为CCArray

3. LAYER_NODE_FUNC 改为CREATE_FUNC

4。setisTouchEnabled 改为 setTouchEnabled

5   CCRepeatForever::actionWithAction 以及所有Action 都用create方法创建

6。addFrameWithTexture 改为 addSprieFrameWithTexture

7 update(CCTime dt) 改为 update(float dt)

8 CCSpriteSheet 改为 CCSpriteBatchNode

CCSpriteSheet *mgr = [CCSpriteSheet spriteSheetWithFile:@"flight.png" capacity:5];
        [self addChild:mgr z:0 tag:4];

CCSpriteBatchNode *mgr = [CCSpriteBatchNode batchNodeWithFile:@"flight.png" capacity:5];
        [self addChild:mgr z:0 tag:4];

9 CCBitmapFontAtlas 改为CCLabelBMFont

 

CCBitmapFontAtlas *lbScore = [CCBitmapFontAtlas bitmapFontAtlasWithString:@"Time: 0" fntFile:@"font09.fnt"];

CCLabelBMFont *lbLife = [CCLabelBMFont labelWithString:@"3" fntFile:@"font09.fnt"];

 

10 转换场景的时候全部以CCTransition 开头了。

[CCTransitionMoveInL transitionWithDuration:1.2f scene:sc]];

 11  CCMenuItemFont的itemFromString: target: selector:方法,该方法已被deprecated。] 
新方法使用如下: 

Java代码  收藏代码
  1. CCMenuItem *GameSettings = [CCMenuItemFont itemWithString:@"设置" target:self selector:nil]; 

  CCAnimation的animationWithName方法已被deprecated,改成了animationWithSpriteFrames 
原用法: 

Java代码  收藏代码
  1. CCAnimation *animation = [CCAnimation animationWithName:@"flight" delay:0.2f];  

1.0版本及以后的用法: 
Java代码  收藏代码
  1. CCTexture2D *texture = [[CCTextureCache sharedTextureCache] addImage:@"flight.png"];  
  2. CCSpriteFrame *frame = [CCSpriteFrame frameWithTexture:texture rect:CGRectMake(00, texture.contentSize.width, texture.contentSize.height)];  
  3. NSArray *array = [[NSArray alloc] initWithObjects:frame, nil];  
  4. CCAnimation *animation = [CCAnimation animationWithSpriteFrames:array delay:0.2f];  
CCAnimation的addFrameWithTexture方法已被deprecated,改成了addSpriteFrameWithTextur
e ,用法和之前一样。
 
CCTouchDispatcher 在 1.0 时是一个 Singleton, 但在2.0 被放进入CCDirector, 
所以本来写成 

[CCTouchDispatcher sharedDispatcher]

现在要写成

 

[[CCDirector sharedDirector] touchDispatcher]


版本更新问题: 
在编译这个的时候,出现了如标题中的错误 
+ (id) layerWithColor:(ccColor4B)color 

        return [[[self alloc] initWithColor:color] autorelease]; 


刚开始是搜索的错误,找了一大堆的英文的解决办法,包括那个大名鼎鼎的啥米溢出论坛,但是没结果,后来看到这个论坛的朋友给出了结果,觉得还是同胞亲哪。 

11L大神给出了解决办法 

在[self alloc]前面加上(ColorLayer*),如下: 
+ (id) layerWithColor:(ccColor4B)color 

        return [[(ColorLayer*)[self alloc] initWithColor:color] autorelease]; 

在新版本的cocos2d中ColorLayer更新为CCColorLayer了或者是CCLayerColor,两者是一样的。

7     CCQuadParticleSystem变成了CCParticleSystemQuad。
 还有横竖屏问题,代码没有解决,只是在summary 中找到了,把Protrait 选中就行了。
 

暂时想到这么多,以后遇见了,再添加。 。。。

 //ios 横竖屏幕 只是能保证可以切换不能保证默认是上面情况。
-(BOOL)shouldAutorotate
{
    return YES;
}
-(NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskLandscape; //UIInterfaceOrientationMaskLandscape、UIInterfaceOrientationMaskAll、UIInterfaceOrientationMaskAllButUpsideDown
//    UIInterfaceOrientationMaskLandscape  支持左右横屏
//    UIInterfaceOrientationMaskAll  支持四个方向旋转
//    UIInterfaceOrientationMaskAllButUpsideDown 支持除了UpsideDown以外的旋转
}
//考虑到兼容低版本,最好加上:

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation

{
    return YES;
}

分享到:
评论

相关推荐

    CocosBuilder 2.0

    CocosBuilder 2.0 是一个强大的开源工具,主要用于创建2D游戏、互动应用和用户界面,它基于Cocos2d-x框架。这个工具的主要特点是它提供了一个直观的可视化编辑器,让开发者能够通过拖拽的方式构建游戏场景,而无需...

    基于cocos2d-2.0-x-2.0.3的游戏实例Stua(win版)

    《基于cocos2d-2.0-x-2.0.3的游戏实例Stua(win版)》 本文将深入探讨使用Cocos2d-x 2.0.3版本开发的游戏实例——Stua,以及与Box2D物理引擎的集成应用。Cocos2d-x是一个开源的、跨平台的2D游戏开发框架,它基于C++...

    Cocos2d-x 2.1.3 帮助文档

    Cocos2d-x是一款开源的游戏开发框架,广泛用于2D游戏、实时应用和互动教育软件的制作。2.1.3版本是该框架的一个历史版本,对于那些希望维护旧项目或者学习Cocos2d-x历史特性的开发者而言,这份帮助文档具有很高的...

    cocos2d-x 2.0 的CCListView使用

    在cocos2d-x 2.0版本中,引入了CCListView组件,为开发者提供了一个高效的列表视图控件,适用于创建滚动列表、下拉菜单等UI元素。下面我们将深入探讨CCListView的使用及其相关知识点。 一、CCListView基本概念 ...

    cocos2d-x游戏实例-纵版射击游戏(cocos2d-x 2.0.4)

    本人提交源码进行了版本移植并修改了一个bug,目前使用VS2008+cocos2d-x,2.0.4版本编译测试过(需要注意的是,我的IDE环境中是将COCOS2d-x的头文件和库文件设置到了VS环境中对所有项目生效,并没有单独对特定的COCOS...

    AnimatePacker Library for cocos2d-x 2.0.zip

    AnimatePacker Library是针对cocos2d-x 2.0版本的一个强大工具,它专为游戏开发者设计,用于优化和管理2D动画资源。在cocos2d-x这个流行的开源跨平台2D游戏开发框架中,AnimatePacker扮演着一个关键角色,帮助开发者...

    cocos2d-x实现全屏

    參考了一下NeHe 的教程, 在 cocos2d-x 2.0 上可以做點小手腳在 Windows 上全屏顯示! 參考了一下NeHe 的教程, 在 cocos2d-x 2.0 上可以做點小手腳在 Windows 上全屏顯示! 主要修改兩個檔案: CCEGLView.h ...

    Cocos2d-x 3.x游戏开发之旅

    本书是《Cocos2d-x 游戏开发之旅》的升级版,修改了2.0版进阶到3.0版后的一些内容,新增了对CocoStudio、UI编辑器、Cocos2d-x 3.0新特性以及网络方面的知识点。主要介绍常用的API使用方式;介绍如何通过官方Demo获取...

    cocos2d-iphone-1.1-beta cocos2d示例工程

    Cocos2d-iPhone是一个基于OpenGL ES 2.0的2D游戏开发框架,用于iOS平台。1.1-beta版本是该框架的一个早期版本,它提供了丰富的功能和示例,帮助开发者快速创建交互式的游戏和应用程序。这个压缩包包含了一个完整的...

    cocosbuilder2.1和cocos2d-x结合使用

    在cocos2d-2.0-x-2.0.3上使用CocosBuilder2.1,你需要先确保已经正确安装了cocos2d-x环境,并且下载并安装CocosBuilder2.1。安装完成后,打开CocosBuilder,创建一个新的项目或打开已有的.ccb项目文件。 在Cocos...

    跨平台的游戏引擎cocos2d-x介绍

    在授权协议方面,cocos2d-x采用了MIT协议,这意味着开发者可以自由地使用、复制、修改源码,并将其用于自己的项目。同时,开发者也可以免费分发或商用cocos2d-x,无需像GPL协议那样公开源码。 cocos2d-x支持包括iOS...

    COCOS2D-X 2.2 实例 瞄星大战

    Cocos2d-x 2.2相较于之前的2.0版本,进行了诸多优化和改进,包括性能提升、bug修复以及对Visual Studio 2012更好的支持。这意味着开发者可以在Windows环境下使用VS2012进行更加顺畅的游戏开发,无需担心兼容性问题,...

    AnimatePacker2.0 在Cocos2d-x 2.0.2以上可以用的类库

    AnimatePacker2.0 是一个专为Cocos2d-x 2.0.2及以上版本设计的类库,主要用于处理动画资源的打包和管理。在游戏开发中,尤其是在使用Cocos2d-x这样的2D游戏引擎时,有效地管理和优化动画资源是至关重要的,因为这...

    将Win32下编写的cocos2d-x项目编译到Android平台下运行

    以cocos2d-2.0-x-2.0.4版本为例,找到安装目录下的`create-android-project.bat`脚本,运行它来创建Android项目。在这个例子中,选择API级别7(对应Android 2.2)来创建项目。完成后,你会得到一个名为HelloWorld的...

    cocos2d-x初探学习笔记(3)

    ### cocos2d-x初探学习笔记(3)—— 动作(CCAction) #### 内存自动回收 在深入探讨`cocos2d-x`的动作系统之前,我们首先需要了解该框架提供的内存管理机制。与Java等语言不同,C++需要开发者手动管理内存,这在...

    Star Fighter源码(cocos2d x 2.0.4+VS2010)

    SimpleGame是官方下载的cocos2d-2.0-x-2.0.4安装软件解压缩后可以看到的该例子,即在根目录下的Samples示例文件夹里面的SimpleGame。 我这里只是把他们横版的游戏,变成竖版,取消白色游戏背景改为用图片背景,而...

    Cocos2d-x-Multi-Device-2.0

    这个“Cocos2d-x Multi-Device 2.0”教程似乎着重于如何利用Cocos2d-x 2.0版本在多种设备上创建游戏。下面我们将深入探讨Cocos2d-x的关键特性、C++和JavaScript的集成、以及游戏项目与场景的创建。 1. **Cocos2d-x...

    cocos2d-x学习笔记(8)--progress(进度条) .rar

    在cocos2d-x游戏开发中,进度条(Progress)是一种常见的UI元素,它用于显示任务、加载数据或表示某个过程的完成度。本学习笔记将深入探讨如何在cocos2d-x框架下创建和使用进度条。首先,我们要了解cocos2d-x的核心...

    安卓移动开发课程设计基于 Cocos Creator v2.0 2d闯关安卓小游戏+ppt+设计方案+演示视频+源代码+文档说明

    安卓移动开发课程设计基于 Cocos Creator v2.0 2d闯关安卓小游戏+ppt+设计方案+演示视频+源代码+文档说明 - 运行中有什么问题可以私聊博主,本人高级安卓工程师,主页置顶有常见爆红解决的方法,以及更多代码项目 ##...

Global site tag (gtag.js) - Google Analytics