C#没有在Unity中运行? (基本)

时间:2015-07-14 00:50:41

标签: c# unity3d

所以,我第一次在Unity中玩一些C#代码。我正在创建一个小脚本,只是为了实际使用。这是我得到的错误:

  

仅分配,调用,增量,减量和新对象   表达式可以用作语句

using UnityEngine;
using System.Collections;

public class Movement : MonoBehaviour {

    public int speed = 10;
    public int money = 10;
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {
        if(Input.GetKey(KeyCode.W)) {
            transform.Translate (Vector3.forward * speed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.A)) {
            transform.Translate (Vector3.left * speed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.S)) {
            transform.Translate (Vector3.back * speed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.D)) {
            transform.Translate (Vector3.right * speed * Time.deltaTime);
        }
        if(Input.GetKey(KeyCode.Return && money >= 10)) {
            Debug.Log("You bought a sword!");
            money - 10;
        } else {
            Debug.Log("You don't have enough money!");
        }
    }
}

我得到的错误在标题中。它甚至不会让我运行它。有谁知道我做错了什么?感谢您的帮助:))

1 个答案:

答案 0 :(得分:5)

看起来你想要做

money -= 10;

不是

money - 10;

第一个是递减,所以允许它,因为第二个只是一个表达式(代表一个值)。