`
java-mans
  • 浏览: 11449555 次
文章分类
社区版块
存档分类
最新评论

写了个类继承CCSprite,结果用不了spriteWithFile 这个方法。

 
阅读更多

转载自:http://www.cocoachina.com/bbs/read.php?tid=17232&page=2

cocos2d0.99.x的改动之一,简单说

CCSprite calls:
-(id) initWithXXX {
self =[self init];
}

所以在你的ccsprite子类的init方法中不要调用除[super init]之外的任何initWithXXX方法,否则就会出现递归的执行init的问题。

正确代码:

@implementation OrbSprite
-(id) init
{
if( (self=[super init]) )
{
//此处可处理一些成员变量,但不要调用任何initWithXXX;
}
return self;
}
@end

///
id sub = [OrbSprite initWithFile:@"xxx"];// <--- OrbSprite#init will be called.不用写成[[OrbSprite alloc] init]

具体可见issue778:http://code.google.com/p/cocos2d-iphone/issues/detail?id=778

分享到:
评论

相关推荐

    CCSprite 精灵动画

    CCSprite 精灵动画 动画示例精灵就是将图形资源加载到内存中,并根据游戏需要将其显示到屏幕中的工具,游戏中大到背景、UI,小到NPC、道具,只要是用图片展示的,都是精灵或它的子类。从技术上讲,精灵是一个可以...

    CCSprite基本处理和动画工程

    CCSprite的基本处理:缩放、旋转、混色 CCSprite的Action:帧动画,move+JUMP,move+rotate,FlowAction等,对于这些了解了,然后如果还有其他需求,相对就简单很多了.

    cocos2d 总结:三 CCSprite

    NULL 博文链接:https://o0o0o0o.iteye.com/blog/805581

    ccsprite播放动画的源代码

    在vs2010+cocos2d-x编译环境下实现的ccsprite精灵类的动画播放

    Cocos2D-X核心类学习

    Cocos2D-X核心类 Cocos2D-X 引擎的设计思路是将游戏中的各个部分抽象成几个概念:导演、场景、布景层及人物精灵。 导演(CCDirector):游戏的...人物精灵(CCSprite):人物精灵可以分为玩家控制的主角类、敌人类等。

    CCMask:使用 cocos2d-x v2.0 屏蔽 CCSprite

    蒙版CMask 是一个类,它使 Cocos2D-x v2.0 中的掩蔽变得相当容易。 您只需要定义一个对象和一个蒙版。 就是这样! 用法: // Create a mask and an objectCCSprite* mask = CCSprite::create("mask_circle.png");...

    cocos2dx动画工具

    最近在制作cocos2dx下的动画,使用的flashToCocos2d的工具集,生成的动画是不可换皮的,而且底层代码很多,出现问题解决起来比较麻烦,所以业余时间写了一个工具。按照一定的规范制作动画,然后放置在场景上导出成...

    SwfTo2dX_V1.0

    最近在制作cocos2dx下的动画,使用的flashToCocos2d的工具集,生成的动画是不可换皮的,而且底层代码很多,出现问题解决起来比较麻烦,所以业余时间写了一个工具。按照一定的规范制作动画,然后放置在场景上导出成...

    Cocos2d-x初入学堂--&gt;CCSprite基本处理(2)工程

    Cocos2d-x初入学堂--&gt;CCSprite基本处理(2):创建、缩放、旋转、混色;源码和资源都放在包里了

    Cocos2d-x学习笔记之CCScene、CCLayer、CCSprite的默认坐标和默认锚点实验

    结论:实践证明这三个东西的默认坐标都是0,0 默认锚点都是0.5,0.5。 bool HelloWorld::init() { bool bRet = false; do { CC_BREAK_IF(! CCLayer::init()); CCSprite * sprite = CCSprite::create("image1....

    Learn iPhone and iPad cocos2d Game Development

     5.3 从ccsprite类继承游戏对象  5.4 使用ccsprite复合游戏对象  5.5 奇妙的ccnode派生类  5.5.1 ccprogresstimer  5.5.2 ccparallaxnode  5.5.3 ccribbon  5.5.4 ccmotionstreak  5.6 本章小结 第6章 深入...

    cocos2d-xna 写的一个小游戏demo坦克大战

    /// 控制敌人坦克不规则运行时使用 /// private int step = 0; /// /// 标记坦克的存活状态 /// private bool live = true; public CCSprite m_tank; 6.在tank类中实现画坦克方法 public void Draw()...

    Cocos2dx 摇杆控件

    利用cocos2dx引擎开发的摇杆控件,继承自CCSprite,完美兼容2.2.1

    WP7坦克大战源码2012929

    程序很简单,就一个入门级的小游戏,写完后放手机里运行了下效果还可以 实现方法如下 1.创建好 CCLayer 的子类 2.重写 onEnter 方法添加一些基本按钮 跟一些初始化代码 3.通过schedule方法 控制 坦克 子弹的CCSprite...

    是男人就下100层游戏

    项目介绍这毕竟是个小游戏,本身其实没有什么技术难点,主要在于项目的设计,分为如下几个小模块1、玩家 (Player)玩家类我用了单例模式,继承自CCSprite,因为贯穿游戏一直会有玩家存在,在这个版本里也不会有第二个...

    cocos2d-x的粒子创建

    用来自己学习的小资料片段,可做学习用 CCSize size=CCDirector::sharedDirector()-&gt;getWinSize(); texture=CCTextureCache::sharedTextureCache()-&gt;addImage("bj01.png"); back=CCSprite::createWithTexture...

    UIImage Sprite Additions(iPhone源代码)

     不需要cocos2d,仅基于UIImage,实现类似cocos2d的精灵类(CCSprite),用于播放帧动画。帧动画的图片可以来自一张精灵图片(sprite sheet,texture atlas),类似cocos2d的CCSprite类。 小编注:在iOS 7中已经支持...

    cocos2dx 3.x实现精灵色相的修改

    Debug模式下,需要注释掉 CCGLProgramState.h apply() 方法中 switch语句default分支下的断言 调用方法 CSpriteWithHue *sprite = CCSpriteWithHue::create("HelloWorld.png"); sprite-&gt;setHue(4.6);//值在 0 ~ 2 ...

    Cocos2D-X游戏开发技术精解

    3.2.6 精灵类(CCSprite) 68 3.2.7 精灵集合类(CCSpriteBatchNode) 72 3.2.8 精灵帧缓冲(CCSpriteFrameCache) 74 3.2.9 Zwoptex纹理编辑器 76 3.3 文字与字体 80 3.3.1 TTF类型标签(CCLabelTTF) 81 3.3.2 BM...

Global site tag (gtag.js) - Google Analytics