如何检测 SKSpriteNode 是否可见

How to detect if SKSpriteNode is visible

如何检查 SpriteNode 是否对用户可见。本质上,我有一个壁橱门,单击它会打开并显示里面的东西。我使用 zPosition 在壁橱门后面放置了一个小游戏对象。我有一些代码通过使用 SKAction 使该项目 'pop-out'。现在我只需要小游戏对象在应用程序用户可见时立即弹出。请帮忙。

您似乎使用 zPosition 属性 来隐藏您的节点。既然如此,你可以做一个简单的if语句:

if(node0.zPosition > node1.zPosition) {
    // code                
}

您还可以使用隐藏 属性 来隐藏节点。

node0.hidden = true;

使用 if 语句检查隐藏的 属性:

if(node0.hidden == true)
    node0.hidden = false;