问题描述
我有一个名为playerMovement的脚本,并在其中添加了不同的作用力来使玩家移动。我在x轴上添加力没有问题,但是,当用户按下空间时,我想翻转重力。
我正在通过rb.gravityScale = -1;
来执行此操作,效果很好,但是我想检查重力是正还是负,以便可以从那里进行调整。
这就是我放进去时遇到的问题
if(Input.GetKey("space")){
if(rb.gravityScale = 1){
rb.gravityScale = -1;
}
else {
rb.gravityScale = 1;
}
}
我说错了
不能将类型'float'隐式转换为'bool'
解决方法
很简单。检查相等性时,需要使用==而不是=。 =代表价值分配。
if(Input.GetKey("space")){
if(rb.gravityScale == 1){
rb.gravityScale = -1;
}
else {
rb.gravityScale = 1;
}
}