我正在制作一个砖块破坏类型的游戏,并且需要知道是否所有的砖块都已被破坏以便过渡到获胜屏幕。
我一直在考虑解决这个问题的方法是创建一个 BOOL 方法,每次移除一块砖时都会运行该方法来计算剩下多少砖。如果没有剩下的砖块......移动到胜利场景。
我正在努力解决如何做到这一点的逻辑。
到目前为止,我有:
-(BOOL)isGameWon{
for (SKNode* node in self.children){
if ([node.name isEqual:brickCategoryName]){
//some logic
}
}
return YES;
}
didBeginContact 方法:
if (notTheBall.categoryBitMask == brickCategory) {
[self runAction:_smashSound];
[notTheBall.node removeFromParent];
if ([self isGameWon]) {
NSLog(@"YOU WIN!");
}
}