静态数组统一

时间:2016-04-17 11:47:59

标签: arrays static unityscript

我试图在Unity中创建一个静态数组,在每个元素中保存一个整数,但是在测试时,对于每个访问它的对象来说,数组似乎都是新的。

static var tiles: float[];


function Start() {
  tiles = new float[6];
  tiles[1] = 1;
  Random();
}

function Random() {
  i = Random.Range(1, 6);
  if (i == 1) {
    tiles[1] ++;
  } else if (i == 2) {
    tiles[2] ++;
    print(tiles[2]);
  } else if (i == 3) {
    tiles[3] ++;
  } else if (i == 4) {
    tiles[4] ++;
  } else if (i == 5) {
    tiles[5] ++;
  } else if (i == 6) {
    tiles[6] ++;
  }

}

1 个答案:

答案 0 :(得分:1)

您何时查看这些值?场景中有多少个对象附加了这个脚本?在我看来,你有脚本附加到多个对象,并且Random()被执行多次。 防爆。

  • Obj1 - >开始() - >填充静态数组
  • Obj2 - >开始() - > 重新填充静态数组
  • Obj3 - >开始() - >重新填充静态 阵列

最后,所有对象都将具有由Obj3生成的相同静态数组