SKActionのシーケンスの一部としてperform(_:onTarget :)を使用して関数を呼び出そうとしています。SwiftのSKActionでperformメソッドを使用する方法
私が試してみた:
let action1 = SKAction.fadeIn(withDuration: TimeInterval(0.2))
let action2 = SKAction.wait(forDuration: TimeInterval(0.4))
let action3 = SKAction.fadeOut(withDuration: TimeInterval(0.1))
let action4 = SKAction.perform(self.blinkLightByOrder, onTarget: UFOSprite._ufoBase)
let action5 = SKAction.sequence([action1, action2, action3, action4])
currentLight.run(action5)
私はSKAction.run(ブロック:() - >ボイド)を使用すると、そのように:
let action4 = SKAction.run(self.blinkLightByOrder)
それは動作しますが、私はオブジェクトを送信する必要がありますこのメソッドはSKSpriteNodeを要求します:
func blinkLightByOrder(onSprite: SKSpriteNode)
しかし、私はエラーが発生し続け、この実行するアクションを実装する方法を理解できません。私はあなたの問題を理解していれば おかげ
エラーはどういうものですか? – halileohalilei
エラーは次のとおりです。 '()'型の値を期待される引数型 'セレクタ'に変換できません。 – EranKT
let action4 = SKAction.run(self.blinkLightByOrder)がrun(block :)として動作していますが、このメソッドにオブジェクト(SKSpriteNode)を送信する必要があります。 – EranKT