我一直在查看这个sprite工具包文档中的图7-3:PG/Actions/Actions.html,但是它让我非常困惑。他们似乎给多个事物起了相同的名字,例如照相机/人物。
我是默认的SKScene,MyScene类。在initWithSize中,我创建一个SKNode *myWorld,就像文档显示的那样。然后,我有了一系列将背景图像添加到myWorld中的方法。滚动的工作很好,但我想做的是停止垂直滚动时,在myWorld中的图像底部到达底部的场景。在我的生活中,我不知道如何引用myWorld的底部。对于场景的底部,我只是简单地做了
CGPoint sceneFarBottomSide = CGPointMake(0, -self.size.height/2);其中self.anhorPoint设置为0.5,0.5。
如何引用myWorld的底部
发布于 2014-01-20 06:04:23
结果这件事非常容易解决。感谢安德烈向我介绍了苹果公司关于冒险游戏的文档,这才是我真正得到的提示,也澄清了我的一些理解。下面是几行代码来获得我想要的行为:
// Move world
if (monkeyPosition.y > 0 && monkeyPosition.x > 0) {
[myWorld setPosition:CGPointMake(-monkeyPosition.x, -monkeyPosition.y)];
} else if (monkeyPosition.y > 0 && monkeyPosition.x < 0) {
[myWorld setPosition:CGPointMake(0, -monkeyPosition.y)];
}发布于 2014-01-20 05:16:41
myWorld的优势在于你把它设置成什么样子。换句话说,myWorld是一个节点,它本身并不是一个视图或精灵。它只是一个包含sprite或shape子对象(例如SKSpriteNodes或SKShapeNodes)的对象。当你在myWorld中添加你的精灵时,要注意它们的位置。然后使用他们的位置来定义myWorld的“大小”。您可以与myWorld.position一起使用这个大小信息来知道myWorld的(底部)边缘何时出现。
https://stackoverflow.com/questions/21225657
复制相似问题