2016-12-19 8 views
0

私は、画面上の領域にタッチするとアクションを実行するSKActionを持っています。しかし、SKarimateを一度だけ実行するようにSKanimateを取得することはできません。両方のアクションは、約4回実行されるようです。 countパラメータでも違いはありません。アレイのフレームを一度走らせて一度停止させる方法についての助けがあれば、それは分かります!SK.actionが何回かアクションを実行します

//Touch location check 
for touch in touches { 
    let location = touch.location(in: self) 



    if myButton.contains(location) { 
     //run shoot animation. 

     MainGuy.run(SKAction.repeat(SKAction.animate(with: TextureArrayShoot, timePerFrame: 0.10), count: 1),withKey: "outlaw") 

     print ("touched") 
     let witchaction = SKAction.animate(with: TextureArrayWitch, timePerFrame: 0.20) 
     witch.run(witchaction) 


     missedLabel1.text = "Good Shot!" 
    } 
} 
+0

があなたの配列 – Knight0fDragon

+0

に問題ありませ作っされていないかを確認する必要があります:0で私のために を... 3 { NameShoot = "シュート\(I)" を聞かせて TextureArrayShoot.append(SKTexture(imageNamed:NameShoot) ) } 1で私のためにWITCH 用//準備テクスチャ配列... 6 { はNameWitch = "ワットの\(I)" TextureArrayWitch.append(SKTexture(imageNamed:NameWitch)聞かせて私はドン) –

+0

は申し訳ありません」コメントコードを作る方法を知っている!^ –

答えて

0

謝罪 - それを解決しました。スプライトの配列が3つあり、最初のスプライトは正しく閉じられず、他の2つをカプセル化していました。つまり、私のために私は3回使用されていました!

関連する問題