使用 swift 查找 SKNode 的相对 Y 位置
Posted
技术标签:
【中文标题】使用 swift 查找 SKNode 的相对 Y 位置【英文标题】:Find the relative Y position of a SKNode with swift 【发布时间】:2017-08-17 03:22:34 【问题描述】:我正在尝试将 Mega Jump 游戏教程 (this one) 改编为无穷无尽的水平。在部分代码中,您使背景和前景离开屏幕,而玩家在平台上跳跃。
这个想法是当一个平台离开屏幕时,它被删除并在顶部创建一个新的平台节点。问题是随着前景“下降”,我不知道如何计算屏幕上最高 Y 点的位置,因此我可以在顶部创建一个新的平台节点。
背景和前景移动的代码部分是这些:
if player.position.y > 200
background.position = CGPoint(x: 0, y: -((player.position.y - 200) / 10))
midground.position = CGPoint(x: 0, y: -((player.position.y - 200) / 4))
foreground.position = CGPoint(x: 0, y: -(player.position.y - 200))
我希望这是有道理的,这是我第一次在这里寻求帮助。
【问题讨论】:
【参考方案1】:假设您将平台添加到前台并且您的代码位于 SKScene 类的上下文中,
platform.position.y = self.frame.maxY - foreground.position.y
【讨论】:
以上是关于使用 swift 查找 SKNode 的相对 Y 位置的主要内容,如果未能解决你的问题,请参考以下文章
转换回 gamescene.swift 会导致错误“'尝试添加一个已经有父节点的 SKNode”
Swift:如何获得Spritekit场景的大小以呈现SKNode全屏?