私のコードを使用してサイズリストオーダー:今LINQの
public GameObject[] Farms;
Farms = GameObject.FindGameObjectsWithTag("Farm").OrderBy(x => Vector2.Distance(this.transform.position, x.transform.position))
.ThenBy(x => x.transform.parent.gameObject.GetComponent<FoodSpawn>().FoodList.Count)
.ToArray();
私が持っているもの:
は、だから私のシーンは、長方形の床を持っています。 キューブは左に、立方体は右に、AI(プレイヤー)は中央に。
各キューブには7つの食品(メインキューブの子)が入っています。 キューブのタグはFarm
です。
リストFoodList
は、のリストで、各キューブに添付されているスクリプトでは、そのリストにはキューブ内の各フードが含まれています。
達成したいこと:
プレイヤーは、彼が行きたい食べ物で満たされたどのキューブを決定する必要があります。
しかし、彼はキューブへの距離と食べ物の量を考慮する必要があります。
したがって、プレイヤーは、最も近いファーム&が最も食べ物の多いファームがリストの最初の要素であるようにリストを注文する必要があります。
今すぐリストが距離順に並べられるので、最も近いキューブが最初の要素ですが、.ThenBy
行(または何か間違っていること)をスキップします。
あなたの入力は?あなたの出力は何ですか?代わりにあなたは何を期待しましたか? [MCVE]を入力してください。 – nvoigt
距離によるコードの注文が先です。しかし、距離が等しい場合にのみ、それは食物の数によって分類されます。 – Johan
ヨハンを見て、感謝しなかったことはそれを知っています。 – Simon