基于另一个's值排序数组

本文关键字:排序 数组 另一个 | 更新日期: 2023-09-27 17:50:41

我想我可能只是试图想出某种神奇的解决方案来解决一个需要使用不同的数据结构才能工作的问题,但这里是…

我目前正在制作一款赛车游戏,我想要玩家当前位置的实时更新。为了做到这一点,我跟踪两件事,他们当前的检查点计数(他们通过的检查点数量),然后检查每辆车和他们前往的下一个检查点之间的距离。

当检查位置函数被调用时(每秒钟),汽车的检查点数量被放置在一个数组中,因此数组中的[0]将是car1等,并且从每辆车到下一个检查点的距离也在一个数组中,因此[0]将是car1到下一个检查点的距离。

我需要的是一种方法来排序的两个数组串联,使他们仍然涉及到同一辆车,当我访问任何一个元素,问题是,然而,我似乎被卡住了,我已经使用Array.Sort(,),并把两个在那里,使他们对齐,但说我有3辆车在2个检查点,其余的在1与2个检查点的汽车不按距离排序。

你们能想到什么办法来解决这个问题吗?我试图避免使用getcomponent等,所以我使位置脚本访问静态变量,涉及到每个单独的汽车数量的检查点和距离到下一个CP,因此我试图避免类和什么不。

我觉得我已经完成了80%,所以请求帮助很烦人。

基于另一个's值排序数组

  • 创建一个包含距离和检查点计数的对象。
  • CarList.Sort((x, y) => (your sorting logic here)或为该对象实现IComparable并调用sort

您将维护一个列表,并且排序或比较汽车的逻辑将隐藏在每个对象中。