Swift2でSpriteKitを使用してIOSチェスアプリを開発しています。コンピュータプレーヤーと対戦している間、人間の動きはコンピュータの思考が終わるまで表示されません。コンピュータの思考が終わると、(人間の動きとコンピュータの動き)両方の動きが一緒に表示されます。チェス - iOS - SpriteKit - コンピュータの思考が終わるまで人間の動きは表示されません
予想される機能:人間が自分の移動をプレイすると、その移動が画面に表示される必要があります。人間の動きを表示して初めて、コンピュータの思考が始まらなければなりません。
私は当初、コンピューターの思考ロジックを呼び出していましたtouchesBeganの機能を呼び出しました。期待どおりに動作しませんでした。その後私はtouchesEndedの機能に呼び出しを移動しました。問題は残っていた。今私はの更新の機能の中にコールを入れました。まだ問題は残っています。
この問題の回答が見つかりませんでした。これに対処する場所はありませんか?
おかげで、 ArtBajji
SpriteKitは、時間関連のアクションの2つの許可された方法を提供します。 SKActionおよびupdate:パラメータにcurrentTimeが渡されたメソッド。また、Swiftで補完ハンドラを簡単に実装することもできます。このすべてを使用すると、Player移動アニメーションが完了した後、コンピュータ移動を簡単に実行できます。 SKactionシーケンスと補完ハンドラの使い方をSOで検索してください。 – Whirlwind
ありがとうございます。あなたが提案したように、SKActionを使用して、カスタムキューイングの実装とアクション完了ハンドラ私はこの要件を私のアプリで解決しました。 – ArtBajji