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

Why is a global variable (inside function) not identified?

所以,我试图初始化变量并在我的 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。

在我看来(考虑到我对 unity 的了解有限)您需要在全局级别声明您的变量。尝试做这样的事情:

// 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);
}