为什么没有识别全局变量(内部函数)?

时间:2016-01-24 07:46:58

标签: javascript unity3d unityscript

所以,我试图初始化变量并在我的Unity脚本中放入一些全局变量,但是当我运行代码时,它说x,y和z是未知标识符。我一直试图找到答案:

function Awake () {
    x = 0; //Unity doesn't work with commas 
    y = 0;
    z = 0;
}

function Update () {
    if (Input.GetTouch) {
        x = x-1;
    }
    Transform.position = Vector3(x,y,z);
}

将变量置于函数之外的是它们将重复并充当更新。

我也是Unity和JavaScript的新手。

1 个答案:

答案 0 :(得分:3)

在我看来(因为我有限的接触统一),你需要在全球范围内声明你的变量。尝试做这样的事情:

// declare these variables in the global scope.
var x;
var y;
var z;

function Awake () {
    x = 0;
    y = 0;
    z = 0;
}

function Update () {
    if (Input.GetTouch) {
        x = x-1;
    }
    Transform.position = Vector3(x,y,z);
}