Sprite kit 枚举名称无效的子节点
嗨,任何人都可以帮助上面的代码,它不是通过我的屏幕上的精灵枚举。checkCollision肯定被称为:Sprite kit 枚举名称无效的子节点,sprite-kit,skspritenode,Sprite Kit,Skspritenode,嗨,任何人都可以帮助上面的代码,它不是通过我的屏幕上的精灵枚举。checkCollision肯定被称为: -(void) checkCollisions { [self enumerateChildNodesWithName:@"minion" usingBlock: ^(SKNode *node, BOOL *stop){ SKSpriteNode *minion = (SKSpriteNode *)node; if (CGRectIntersectsR
-(void) checkCollisions {
[self enumerateChildNodesWithName:@"minion" usingBlock: ^(SKNode *node, BOOL *stop){
SKSpriteNode *minion = (SKSpriteNode *)node;
if (CGRectIntersectsRect(minion.frame, CGRectMake(100, 100, 800, 900))) {
[minion removeFromParent];
NSLog(@"removed");
}
}];
}
我还添加了SKSpriteNode,它是这样创建的:
-(void)update:(CFTimeInterval)currentTime {
[self checkCollisions];
}
子节点是否命名为“minion”?它是否枚举节点(添加日志)?请记住,框架位于父坐标系中,因此您正在测试仆从的框架是否从其父位置偏移100x100到900x1000。不,它没有枚举我添加的节点NSLOG是名为“仆从”的子节点吗?意思是你通过-
\u minion.name=@“minion”给它起了那个名字代码>?啊,我没有意识到你必须实际命名节点_minion.name=@“minion”非常感谢。为了确认@learncos2D,我理解了帧偏移量,这只是我在测试中加入的东西。我已经通过检查仆从.position.x和y完成了,但我不确定这是否是最有效的方法。我本以为在第一时间加入精灵类会更好,比如[minion outOfBoundsDestroy:是的]
[self addChild:_minion];