現在、プロジェクトの AI セクションに取り組んでいます。AI クラスからメソッドを呼び出しています。このメソッドは、描画した Gladiator オブジェクトが実際にどこに到達する必要があるかを計算することを目的としています。そのメソッドに、配置したいすべてのオブジェクトを含む List を渡しました。AI クラスの以前のメソッドは、距離に関して互いの位置を決定し、それをグラディエーター [0..1..2..etc].movementGoal として保存しました。
プロジェクトはリアルタイムではありませんが、つまり、最終的に「ステップ実行」したいだけですが、同時移動が発生することを望んでいます。これは、他のグラディエーターの動きの決定に関する情報が必要なため、リストを反復処理する私の標準的な方法では機能しないことを意味します。これは、これらの決定が相互作用する際のいずれかのグラディエーターの実際の動きを把握するためです。
クラスの外にいて、それらをリスト形式でしか持っていないときに、別の特定のグラディエーターの変数にアクセスするにはどうすればよいですか?
編集:
私は反復して、変数gladiatorNumberが正しいことをテストできると思います。それから、その情報を引き出すときは? それはかなり回り道になりますが、私が考えることができるのはそれだけです。
編集2:
リクエストに応じて、いくつかのコード。Ai クラスの私のメソッドは次のようになります。
public void moveAI(List<Gladiator> gladiators) {
私の剣闘士は次のように定義されています。
public class Gladiator {
Gladiator クラスは配列として作成され、別のメイン クラスのリストに追加されます。大量のコードがあるため、これ以上のコードを含めたくありません。基本的には、メインクラスでオブジェクトを作成し、AI クラスのリスト形式でしか持たないにもかかわらず、AI クラスからグラディエーター [0] を呼び出す方法に要約されます。Gladiator のすべての変数が public であると仮定します。私が得ているエラーは、グラディエーター[0...1...2...など]を参照するシンボルが見つかりません.