我正在开发一个cocos2d游戏,它将在子弹的帮助下射击导弹,在这里每当我射击导弹时,导弹必须隐藏,但我的问题在于每发射2枚子弹我必须隐藏一枚导弹。
这是我的代码
if (CGRectIntersectsRect(bullet.boundingBox, missile.boundingBox)){
target--;
[objectiveLabel setString:[NSString stringWithFormat:@"%d",target]];
bullet.visible = NO;
missile.visible = NO;
continue;
}
此代码适用于单拍,但我想要2拍摄相同的功能
任何人都建议我如何完成这项任务
提前致谢
答案 0 :(得分:0)
为您的导弹对象添加一个属性,并在您的代码中对其进行测试,如下所示:
@property(nonatomic,readwrite) NSUInteger shotsToDeath;
初始化导弹时:
-(id) init {
if(self=[super init]) {
// add the following line to your init
self.shotsToDeath = 1; // default
return self;
}
return nil;
}
当你制造导弹时,你可以加速杀死他的射击次数:
missile.shotsToDeath = 2; // if appropriate (depends on difficulty level ?)
最后在上面的例程中:
if (CGRectIntersectsRect(bullet.boundingBox, missile.boundingBox)){
missile.shotsToDeath--;
if(0==missile.shotsToDeath {
target--;
[objectiveLabel setString:[NSString stringWithFormat:@"%d",target]];
missile.visible = NO;
}
bullet.visible = NO;
continue;
}
编。没有测试,没有编译,仅仅是为了这个想法。谨防减量,确保你不要以-1结束:)