【问题标题】:How can i shuffle the gameobject list我怎样才能洗牌游戏对象列表
【发布时间】:2014-05-20 16:28:55
【问题描述】:

我有一个宝石(多维数据集),它有球体作为孩子。我怎样才能洗牌这些宝石和球体来改变它们的位置?我尝试了一些 sn-p 来改变他们的位置,但我遇到了错误。我怎样才能洗牌这些宝石?请帮我解决一下。

Board.cs

 public List<Gem> gems = new List<Gem>();
        public int GridWidth;
        public int GridHeight;
        public GameObject gemprefab;
        public Gem gemComponent;
        public Vector3[] shuffleArray = new Vector3[gems.Count];
        // Use this for initialization
        void Start () {

            ChangePosition();
        }
        public void ChangePosition() {

        for (int i = 0; i < shuffleArray.Length; i++) {
            int temp = gems[i].transform.position;
            int randomIndex = Random.Range(i, shuffleArray.Length);
            gems[i].transform.position = gems[randomIndex];
            gems[randomIndex] = temp;


            }
        }

【问题讨论】:

    标签: unity3d unityscript


    【解决方案1】:

    试试

    for(int i = 0; i < gems.Count; i++) {
        Vector3 temp = gems[i].transform.position;
        int randomIndex = Random.Range(0, gems.Count);
        gems[i].transform.position = gems[randomIndex].transform.position;
        gems[randomIndex].transform.position = temp;
    }
    

    【讨论】:

      猜你喜欢
      • 2014-11-03
      • 1970-01-01
      • 1970-01-01
      • 2011-09-10
      • 2014-01-02
      • 2023-02-01
      • 1970-01-01
      • 2019-05-14
      • 1970-01-01
      相关资源
      最近更新 更多