Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误CS1519 c#脚本_C#_Unity3d - Fatal编程技术网

错误CS1519 c#脚本

错误CS1519 c#脚本,c#,unity3d,C#,Unity3d,我没有太多使用C#的经验,我正在为学校做一个游戏,我确实给了角色一个动画(空闲和行走),我正在使用MixAmo来获得动画。但是老师给我的密码不起作用。。。错误CS1519不断发生,我无法修复,请帮助我 这是代码: public class Controle : MonoBehaviour { private Animator controller; private float speed; private Rigidbody rb; // Use this for initializatio

我没有太多使用C#的经验,我正在为学校做一个游戏,我确实给了角色一个动画(空闲和行走),我正在使用MixAmo来获得动画。但是老师给我的密码不起作用。。。错误CS1519不断发生,我无法修复,请帮助我

这是代码:

public class Controle : MonoBehaviour {

private Animator controller;
private float speed;
private Rigidbody rb;

// Use this for initialization
void Start()
{
    controller = GetComponent<Animator>();
    rb = GetComponent<Rigidbody>();
    speed = 5 * Time.deltaTime;
}

// Update is called once per frame
void Update() {
    if (Input.GetKey(KeyCode.W))
        controller.Play("walking_inPlace");
    transform.Translate(0, 0, speed);

    if (Input.GetKey(KeyCode.S))
        controller.Play("walking_inPlace");
    transform.Translate(0, 0, -speed);

    if (Input.GetKey(KeyCode.D))
        controller.Play("walking_inPlace");
    transform.Translate(speed, 0, 0);

    if (Input.GetKey(KeyCode.A))
        controller.Play("walking_inPlace");
    transform.Translate(-speed, 0, 0);
}
else 
{
 controller.Play("breathing_idle");
}
}
公共类控制:单一行为{
专用动画控制器;
私人浮动速度;
私人刚体;
//用于初始化
void Start()
{
控制器=GetComponent();
rb=GetComponent();
速度=5*Time.deltaTime;
}
//每帧调用一次更新
无效更新(){
if(Input.GetKey(KeyCode.W))
控制器。播放(“原地行走”);
transform.Translate(0,0,速度);
if(Input.GetKey(KeyCode.S))
控制器。播放(“原地行走”);
transform.Translate(0,0,-速度);
if(Input.GetKey(KeyCode.D))
控制器。播放(“原地行走”);
transform.Translate(速度,0,0);
if(Input.GetKey(KeyCode.A))
控制器。播放(“原地行走”);
transform.Translate(-speed,0,0);
}
其他的
{
控制器。播放(“呼吸空闲”);
}
}

如果else指令位置错误,请尝试以下代码:

if (Input.GetKey(KeyCode.W)) {
    controller.Play("walking_inPlace");
transform.Translate(0, 0, speed);
        }

        else if (Input.GetKey(KeyCode.S)) {
    controller.Play("walking_inPlace");
transform.Translate(0, 0, -speed);
        }

        else if (Input.GetKey(KeyCode.D)) {
    controller.Play("walking_inPlace");
transform.Translate(speed, 0, 0);
        }

        else if (Input.GetKey(KeyCode.A)) {
    controller.Play("walking_inPlace");
transform.Translate(-speed, 0, 0);
        }

else
{
    controller.Play("breathing_idle");
}

如果查看更新方法:

// Update is called once per frame
void Update() {
    .......
}
else 
{
 controller.Play("breathing_idle");
}
else不仅在方法之外,而且与任何close if语句都不对应。
您很可能想这样做:

void Update()
{
    if (Input.GetKey(KeyCode.W))
    {
        controller.Play("walking_inPlace");
        transform.Translate(0, 0, speed);
    }
    else if (Input.GetKey(KeyCode.S))
    {
        controller.Play("walking_inPlace");
        transform.Translate(0, 0, -speed);
    }
    else if (Input.GetKey(KeyCode.D))
    {
        controller.Play("walking_inPlace");
        transform.Translate(speed, 0, 0);
    }
    else if (Input.GetKey(KeyCode.A))
    {
        controller.Play("walking_inPlace");
        transform.Translate(-speed, 0, 0);
    }
    else 
    {
         controller.Play("breathing_idle");
    }
}

类、结构或接口成员声明中的令牌“token”无效 每当在令牌不属于的位置遇到令牌时,就会生成此错误。标记是关键字;标识符(类、结构、方法等的名称);字符串、字符或数字文字值,如108、“Hello”或“a”;或运算符或标点符号,如==或

在类型之前包含无效修饰符的任何类、结构或接口成员声明都将生成此错误。要修复错误,请删除无效的修饰符


在您的特殊情况下(代码片段?我将参考Camilopablocity答案,您将else语句放在了更新之外,这是不正确的。此外,我认为您在C上没有命令,所以请先看一些tut来了解它,然后尝试在unity中进行编码。

错误到底是什么样子,以及哪一行?您可能还有其他问题:您的if语句后面可能缺少块大括号,因为您似乎希望在每个if语句后面执行两行,而不是一行,即
controller.Play
transform.Translate
,而不仅仅是
controller.Play
。这甚至不会编译。不要发布答案blindlyCorrect您的代码在每个if语句之后都有
{
}
,因为每个if语句都有多个操作。