不能乘以赋值给 int
Cannot multiply and assign to int
我正在学习 Unity 教程,但在我的 Unity 汽车游戏教程中遇到了这个错误:
BCE0051: Operator '*' cannot be used with a left hand side of type 'int' and a right hand side of type 'boolean'.
我在这行代码中发现了最后两个相同的错误
// These variables allow the script to power the wheels of the car.
public var FrontLeftWheel: WheelCollider;
public var FrontRightWheel: WheelCollider;
public var RearLeftWheel: WheelCollider;
public var RearRightWheel: WheelCollider;
RearRightWheel.brakeTorque = 60 * Input.GetButtonDown("Jump");
RearLeftWheel.brakeTorque = 60 * Input.GetButtonDown("Jump");
Input.GetButtonDown("Jump")
returns一个boolean
-true
或false
。您不能将数字与 true
或 false
相乘,因为不清楚结果应该是什么。
我认为您想将 true
或 false
解释为 1
或 0
,以便按下按钮时 brakeTorque
为 60如果不是,则为 0。
我不熟悉 Unityscript,但在原版中 JavaScript 您可以使用一元 +
运算符将布尔值转换为数字:
RearRightWheel.brakeTorque = 60 * +Input.GetButtonDown("Jump");
如果这不起作用,您可以使用三元运算符:
RearRightWheel.brakeTorque = 60 * (Input.GetButtonDown("Jump") ? 1 : 0);
@General-Doomer 建议的更好:
RearRightWheel.brakeTorque = Input.GetButtonDown("Jump") ? 60 : 0;
三元运算符:
RearRightWheel.brakeTorque = 60 * (Input.GetButtonDown("Jump")?1:0);
我正在学习 Unity 教程,但在我的 Unity 汽车游戏教程中遇到了这个错误:
BCE0051: Operator '*' cannot be used with a left hand side of type 'int' and a right hand side of type 'boolean'.
我在这行代码中发现了最后两个相同的错误
// These variables allow the script to power the wheels of the car.
public var FrontLeftWheel: WheelCollider;
public var FrontRightWheel: WheelCollider;
public var RearLeftWheel: WheelCollider;
public var RearRightWheel: WheelCollider;
RearRightWheel.brakeTorque = 60 * Input.GetButtonDown("Jump");
RearLeftWheel.brakeTorque = 60 * Input.GetButtonDown("Jump");
Input.GetButtonDown("Jump")
returns一个boolean
-true
或false
。您不能将数字与 true
或 false
相乘,因为不清楚结果应该是什么。
我认为您想将 true
或 false
解释为 1
或 0
,以便按下按钮时 brakeTorque
为 60如果不是,则为 0。
我不熟悉 Unityscript,但在原版中 JavaScript 您可以使用一元 +
运算符将布尔值转换为数字:
RearRightWheel.brakeTorque = 60 * +Input.GetButtonDown("Jump");
如果这不起作用,您可以使用三元运算符:
RearRightWheel.brakeTorque = 60 * (Input.GetButtonDown("Jump") ? 1 : 0);
@General-Doomer 建议的更好:
RearRightWheel.brakeTorque = Input.GetButtonDown("Jump") ? 60 : 0;
三元运算符:
RearRightWheel.brakeTorque = 60 * (Input.GetButtonDown("Jump")?1:0);