我有一些 Sprite 以随机顺序从屏幕底部出现。我想在滑动的方向上滑动 Sprite 。我得到了滑动算法。此外,每当在屏幕上触摸任何 Sprite 时,我都会收到一条 NSLog 消息。 NSLog 对触摸的任何对象都给出正确的响应。但是,我如何知道哪个 Sprite 已被刷过以编写将脉冲应用到该特定 Sprite 的代码?
我正在尝试以下代码:
SKNode *sprite = [self nodeAtPoint:location];
[ball.physicsBody applyImpulse:CGVectorMake(dx, dy) atPoint:location];
[self addChild:sprite];
此外,
userInteractionEnabled = YES 对所有 Sprite
并且所有 Sprite 都在执行一个 Action (以防万一这就是为什么我不能在它们已经在运行 Action 时滑动它们的原因,在这种情况下我还应该使用什么来移动 Sprite ?)
对不起,如果这太愚蠢了,我是菜鸟
提前致谢!
最佳答案
您需要使用具有 name 属性的 Sprite 名称:
node.name = @"nodeName";
for(SKNode *node in [self nodesAtPoint:location])
{
if([node.name isEqualToString:@"nodeName"])
{
// your custom code here
}
}
我希望这就是您要找的,如果不是,我会随时为您提供帮助。
关于ios - 我如何知道哪个 Sprite 被触摸了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28300962/