Android 用のサッカー ゲームを開発したいと考えています。
AI は複雑なので、モンスター スイッチではなく、 FSM (Finite State Machine)を使用して設計する必要があると思います。
グーグルで調べてみると、Java で書かれた FSM がいくつか見つかりましたが、Android と明確に互換性があるものはありませんでした。そのプラットフォームで以前に FSM を使用した人がここにいるのだろうかと思います。
Android には、Android メッセージ キューと統合する内部階層ステート マシン (HSM) があります。
これは内部的なものであるため、SDK から明示的にアクセスすることはできません。
ただし、Apache 2.0 ライセンスの条件に従えば、独自のバージョンを作成できます。
https://android.googlesource.com/platform/frameworks/base/+/gingerbread-release/core/java/com/android/internal/util/HierarchicalStateMachine.java
編集:
このクラスはStateMachineと呼ばれるようになりました。
Android で使用され、Google が提供するこのステート マシン (FSM) の実装は、適切なオプションのようです。こちらの Github で入手できます。
クラスを使用してStateMachine
状態、初期状態を定義したり、状態に入ったり出たりするときにタスクを実行したり、たとえばタイムアウトを実装するためにイベントや遅延イベントを送信したりできます。
他に多くの選択肢は見つかりませんでしたが、この実装には私が探していたすべての機能が含まれています。これは Android プロジェクトの一部であるため、十分にテストされていると思います。この助けを願っています。