Scripting 我不知道的错误';我不知道如何修理

Scripting 我不知道的错误';我不知道如何修理,scripting,compiler-errors,unity3d,unityscript,Scripting,Compiler Errors,Unity3d,Unityscript,它给了我这些错误: #pragma strict var targetscript : Diamond; var yellow : Color(1,0.92,0.016,1); var cyan : Color(0,1,1,1); var green : Color(0,1,0,1); var red : Color(1,0,0,1); var magenta : Color(1,0,1,1); var black : Color(0,0,0,1); function Start () {

它给了我这些错误:

#pragma strict

var targetscript : Diamond;
var yellow : Color(1,0.92,0.016,1);
var cyan : Color(0,1,1,1);
var green : Color(0,1,0,1);
var red : Color(1,0,0,1);
var magenta : Color(1,0,1,1);
var black : Color(0,0,0,1);

function Start () {
    gameObject.camera.backgroundColor = yellow;
}


function Update () {
    if (targetscript.score > 4) {
        gameObject.camera.backgroundColor = Color.Lerp(yellow, cyan);
    }

    if (targetscript.score > 9) {
        gameObject.camera.backgroundColor = Color.Lerp(cyan, green);
    }

    if (targetscript.score > 14) {
        gameObject.camera.backgroundColor = Color.Lerp(green, red);
    }

    if (targetscript.score > 19) {
        gameObject.camera.backgroundColor = Color.Lerp(red, magenta);
    }

    if (targetscript.score > 24) {
        gameObject.camera.backgroundColor = Color.Lerp(magenta);
    }

}
我找不到任何缺少的分号!我没发现颜色有什么问题!为什么它会给我这么多的错误?我检查了脚本5次以上,但没有发现任何错误!有人有什么想法吗?提前谢谢

Assets/Scripts/colour.js(4,22): UCE0001: ';' expected. Insert a semicolon at the end.
Assets/Scripts/colour.js(4,22): BCE0044: expecting EOF, found '0.92'.
Assets/Scripts/colour.js(4,21): BCE0044: expecting ), found ','.
Assets/Scripts/colour.js(4,19): UCE0001: ';' expected. Insert a semicolon at the end.
这就是在Unityscript中声明变量的方式,其中xxx是变量的名称,yyy是变量的类型,zzz是值。
在您的例子中,您想定义一个类型,但却定义了一个值,因此出现了错误

将它们全部更改为:

var xxx: yyy = zzz;
然后在
Start()
函数中,给它们赋值:

var yellow : Color;
var cyan : Color;
var green : Color;
var red : Color;
var magenta : Color;
var black : Color;

由于您正在对一个类进行赋值的变量声明,我认为每个颜色声明都需要类似于以下内容:

yellow = Color(1,0.92,0.016,1);
cyan = Color(0,1,1,1);
green = Color(0,1,0,1);
red = Color(1,0,0,1);
magenta = Color(1,0,1,1);
black = Color(0,0,0,1);

这将创建一个颜色类型为黄色的变量,我们将创建一个新实例并将其分配给黄色。

您可以这样做

var yellow = new Color(1,0.92,0.016,1);

Assets/Scripts/Color.js(40,63):BCE0017:方法“UnityEngine.Color.Lerp(UnityEngine.Color,UnityEngine.Color,float)”的最佳重载与参数列表(UnityEngine.Color)不兼容。
Color.Lerp
使用了上述3个参数。第一个参数是您想要的颜色,第二个参数是您想要的颜色,第三个参数是lerp处理的时间。第三个参数是可选的。您得到的错误是因为您在代码中的某个地方只使用了1个参数。可能是这样:
gameObject.camera.backgroundColor=Color.Lerp(洋红色)。您需要在第一个和第二个参数中指定前后颜色。很抱歉,它是(洋红色,黑色);这是一个复制粘贴错误。但是我得到了
Assets/Scripts/Color.js(33,63):BCE0017:方法“UnityEngine.Color.Lerp(UnityEngine.Color,UnityEngine.Color,float)”的最佳重载与参数列表(UnityEngine.Color,UnityEngine.Color)不兼容。
error尝试添加第三个参数,即勒平过程的时间。这应该行得通。
#pragma strict
var targetscript : Diamond;
var yellow : Color = Color(1,0.92,0.016,1);
var cyan : Color = Color(0,1,1,1);
var green : Color = Color(0,1,0,1);
var red : Color = Color(1,0,0,1);
var magenta : Color = Color(1,0,1,1);
var black : Color = Color(0,0,0,1);

function Start () {
    gameObject.camera.backgroundColor = yellow;
}


function Update () {
    if (targetscript.score > 4) {
        gameObject.camera.backgroundColor = Color.Lerp(yellow, cyan);
    }

    if (targetscript.score > 9) {
        gameObject.camera.backgroundColor = Color.Lerp(cyan, green);
    }

    if (targetscript.score > 14) {
        gameObject.camera.backgroundColor = Color.Lerp(green, red);
    }

    if (targetscript.score > 19) {
        gameObject.camera.backgroundColor = Color.Lerp(red, magenta);
    }

    if (targetscript.score > 24) {
        gameObject.camera.backgroundColor = Color.Lerp(magenta);
    }

}