我想在Cocos2d的屏幕上显示一个精灵。但是,我不想直接使用CCSprite。我有一个职业单位,将有一些额外的属性,我稍后将在我的游戏中需要。该股的类声明如下:CCSprite没有显示在iPhone上
@interface Unit : CCSprite {
CCSprite *sprite;
}
-(void)init;
@property(nonatomic, retain) NSNumber *type;
@property(nonatomic, retain) CCSprite *sprite;
@end
而且我为它init方法看起来是这样的:
-(void)init {
self.sprite = [CCSprite spriteWithFile:@"BasicUnit.png"];
self.sprite.position = ccp(50, 100);
}
现在我需要做的是将其应用到屏幕上。所以,我有另一个叫Playscene的类,它是我想要显示精灵和事物的场景。下面是init方法(这应该引起精灵的方法)看起来像Playscene:
-(id) init {
if((self=[super init])) {
self.isTouchEnabled = YES;
[army init];
[self addChild:army.sprite];
}
return self;
}
但是,当我运行此我得到一吨的错误数据,包括:“扔的一个实例后终止叫'NSException'“,可能更重要:” - PlayScene addChild:]中的断言失败。我不知道如何解决这个问题。任何帮助,将不胜感激。
好的...我得到它的工作。只是为了让你知道:我没有展示完整的单元类,只有精灵部分。但是,我没有使用alloc,而且我重写了 - (id)init,而不是使用我的原始方法 - (void)init。再次感谢它现在的作品! – Dair 2011-03-25 23:40:12