如何在精灵套件中阻止屏幕掉落?

时间:2014-03-28 16:36:43

标签: objective-c ios7 sprite-kit

我用它来阻止它从底部掉下来,但我希望这个角色能够从屏幕的一侧走开。

self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];

1 个答案:

答案 0 :(得分:0)

试试这个:

CGFloat enlargeByPoints = 100.0;
CGRect frame = self.frame;
frame.origin.x -= enlargeByPoints;
frame.size.width += enlargeByPoints * 2.0;
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:frame];

这会在屏幕两侧将边缘循环的大小扩展100个点。

在离开屏幕后,播放器仍然会进入隐形墙。但您可以使用CGRectContainsRect或其他测试来确定节点是否已完全离开屏幕,然后将其删除或将其放置在屏幕的另一侧。