背景
状態に私はトーナメントのためにリーダーボードを作成SpriteKitベースのアプリを作成しました
を取得するための複数の方法でGKStateMachineを使用します。 GKStateMachine
を使用してコードをもっと頑強にして、状態を処理するための醜いコードを削除しようとしています。私はまた、ステートマシンを実験したいので、このフレームワークを将来のプロジェクトに使用する方法を学びます。私が見たすべての例(そしてたくさんありません)では、彼らはかなり単純なステートマシンダイアグラムを持っていました。私のほうがやや複雑です。これらのAPIを意図した方法で使用していることを確認したいだけです。
質問:私が見た例では、- didEnterWithPreviousState:
にはifステートメントが含まれていないので、各ステートに到達する方法は1つしかないと推測されます。 - didEnterWithPreviousState:
のステートメントを使用して、状態の入力方法を複数の方法で処理する方法を決定しますか?私はcontestant
アイコンを選択し、リーダーボードにそれらを配置することだリーダーボードを設定するシーンで
プロジェクト情報
。参加者の数が2の累乗でない場合は、まず「byes」を選択する必要があります。
一旦全ての「不戦勝」位置の動的にリーダーボードを選択されたラウンド1一度
ために互いに対向しなければならない競技者用のスロットを作成しますラウンド1のすべての選手が選択された後、選手は選択肢の確認を求め、セットアップシーンからリーダーボードシーンに移動します。
は、ここに私の現在の状態が(ように見えるが、これはGKStateMachine
を使用せずにあるものだ。