在 SKAudioNode 上分配 运行 play() 时返回的 SKAction?

Assign the SKAction returned when running play() on an SKAudioNode?

文档似乎建议 运行 在 SKAudioNode returns 和 SKAction

上播放

play() Creates an action that tells an audio node to start playback.

class func play() -> SKAction

所以我的小逻辑告诉我我可以获取这个返回的 Action,并将它分配给一个变量或常量,如下所示:

var mySoundAction = mySoundNode.run(SKAction.play())

但是 Xcode 告诉我我是个白痴,当我尝试这样做时不知道自己在做什么:

self.run(mySoundAction)

它告诉我它无法将 void 类型转换为 SKAction 类型。

我做错了什么?为这样的事情取一个动作名称,我的目标是多么的迷惑?

SKAction.play()

returns 和 SKAction,以及

mySoundNode.run(SKAction.play())

运行 在 mySoundNode 上执行的操作。 run() 方法 returns Void ("nothing"), 所以用

var mySoundAction = mySoundNode.run(SKAction.play())

你 运行 在节点上执行 "play" 操作并将 () 分配给 var mySoundAction。你的意思可能是

var mySoundAction = SKAction.play()
// ... 
self.run(mySoundAction)