【发布时间】:2021-01-29 07:51:31
【问题描述】:
在我的游戏中,我实现了无限滚动平台和从屏幕底部开始滚动到顶部的背景。当到达屏幕顶部并在底部出现一个新集时,它们会被删除。我的问题是为生成的所有平台动态调整速度。我有一个系统,它涉及一个可以用 UIButton 控制的开关盒,它控制平台、背景和我的播放器节点所处的“状态”这包括播放器节点的某些属性以及平台和背景在开关盒的每个状态中滚动的速度。我正在尝试使用SKSpriteNode 的.speed 属性,但是它没有按预期工作。这是我的开关盒的示例:
switch state {
case 1:
background.speed = 1
platform.speed = 1
case 2:
background.speed = 2
platform.speed = 2
}
有了这个,我可以用一个按钮控制开关盒的哪个状态,并在案例1和案例2之间返回。我可以转到案例2并将速度设为2,然后如果我愿意,回到案例1 并再次将速度设为 1。所以实际发生的情况是,当我更改开关盒的状态时,现有的平台速度并不真正符合新的速度值,只有在速度值更改之后产生的新平台。。因此,实时的情况是,我有平台在屏幕上移动,并且符合新价值观的新平台赶上并通过了在新平台之前产生的平台。我需要每个平台节点实时更新,所以每组之间的间距相等。
经过多次试验和错误,我不完全确定我错过了什么,但如果有人对可能的解决方案有任何想法,将不胜感激。
【问题讨论】:
标签: swift xcode sprite-kit skspritenode