Objective c 从其他类调用其方法时,Cocos2d无法添加sprite
我正在尝试制作一个游戏,当你触摸星星图像时,它会从星星类加载一个星星精灵。我的星形映像有自己的类(StarImage),当使用Level-class方法时,它会调用我的Level-class-StarLauncher方法。问题是,当我触摸星星时,它调用级别类StarLauncher methode,但它根本不添加星星精灵。但它可以打印阻塞消息 这是等级课Objective c 从其他类调用其方法时,Cocos2d无法添加sprite,objective-c,cocos2d-iphone,sprite,spritebuilder,Objective C,Cocos2d Iphone,Sprite,Spritebuilder,我正在尝试制作一个游戏,当你触摸星星图像时,它会从星星类加载一个星星精灵。我的星形映像有自己的类(StarImage),当使用Level-class方法时,它会调用我的Level-class-StarLauncher方法。问题是,当我触摸星星时,它调用级别类StarLauncher methode,但它根本不添加星星精灵。但它可以打印阻塞消息 这是等级课 #import "Level.h" #import "CCPhysics+ObjectiveChipmunk.h"
#import "Level.h"
#import "CCPhysics+ObjectiveChipmunk.h"
#import "Star.h"
#import "StarImage.h"
@implementation Level{
CCPhysicsNode *_physicsNode;
}
-(void)StarLauncher{
CCLOG(@"haaaaaaaaaaa");
Star *_Star2=(Star*)[CCBReader load:@"Star"];
[_Star2 setScale:0.5];
_Star2.position=CGPointMake(160,478);
[_physicsNode addChild:_Star2];
}
-(void) update:(CCTime)delta{
[self StarLauncher]; // when called here it will do add operation
}
@end
这是我的星象课
#import "StarImage.h"
#import "Level.h"
@implementation StarImage{
}
- (void)didLoadFromCCB{
self.userInteractionEnabled = TRUE;
}
-(void)touchBegan:(CCTouch *)touch withEvent:(CCTouchEvent *)event{
}
-(void)touchEnded:(CCTouch *)touch withEvent:(CCTouchEvent *)event{
Level *_LevelOlio=[[Level alloc]init];
[_LevelOlio StarLauncher]; // it calls but the methode will only print clog
}
问题是,当从StarImage调用StarLauncher时,它不会执行添加操作,但当我在Level类中调用它时,它会工作。。我错过了什么?当我从其他类调用它时,为什么它不会执行相同的代码段?但为什么会印木屐呢?当我调试它时,它显示当从StarImage调用它时,它运行代码,但在模拟器中没有显示任何内容,因为它在新创建的级别上运行。您确定要在每次触摸在StarImage实例上结束时创建新关卡吗