私はしばらくこの部分で立ち往生していました。 私は同じテストの約12ラウンドを持っているプロジェクトを書いています。 だから、私は毎回異なるアバターを使って同じ機能を使いたいと思っています。forループを続ける前にイベントが終了するのを待つ
イベントが発生すると、発生すると起動するとFinishTestという名前の関数が呼び出されます FinishTestが起動されて終了するときだけループを継続します。
for (int i = 0; i < numberOfAvatars; i++) {
StartTest(avatars[i]); // This is not really relevent to the question
//Wait until the FinishTest event is finished before continuing the loop
}
私のモデルとオブジェクトの間にトリガーがあると、FinishTestがアクティブになります。 StartTestの前にFinishTestが終了する方法はありません。なぜなら、StartTestは基本的にモデルとそのことを説明していますから、FinishTestの前にStartTestが終了することを確認する方法はないと思います。関数の内部は何
は本当に問題ではなく、なぜしない:助けを
private void StartTest(GameObject avatar) {
Instantiate(avatar, new Vector3(2f,2f,2f), Quaterion.identity));
}
private void FinishTest()
{
testsResults[testNumber] = new TestResult(avatarsName, holdingObject);
testsResults[testNumber].setTimeUntilAvatarGotShot(string.Format("{0:F2}",timer)
}
感謝を。
イベントを言うとき、あなたは実際にイベントを意味するか、 'for'ループを続ける前にそれぞれの' StartTest'呼び出しが終了するのを待つだけですか? – Programmer
イベントが発生すると、別のイベントが発生し、それはFinishTestと呼ばれる同じスクリプト内の関数を呼び出します。実際の問題がFinishTestであるStartTestについて詳しく説明した理由はわかりません – NotSure
どこが変更されていますか?なぜ質問を修正し、これを含めるのですか? – Programmer