我该如何修复抓钩脚本错误

how do i fix my grappling hook script bug

我正在制作一款类似于 karlson 的游戏并努力修复这行代码以阻止错误 该错误是当玩家没有按住鼠标按钮时擒抱枪卡在擒抱模式 我想要做的代码是一个 if 语句来检查 bool 是否为真并且 Input.GetMouseButtonUp 没有发生

***if ((bool)IsGrappling = true) && (Input.GetMouseButtonUp(0))){
    StopGrapple;
}***

这是代码

if (IsGrappling == true && Input.GetMouseButtonUp(0))
{
    StopGrapple;
}

if (IsGrappling && Input.GetMouseButtonUp(0))
{
    StopGrapple;
}

我把这三个代码的区别写在这里

Input.GetMouseButton:只要按键一直在执行,函数就会一直执行。

Input.GetMouseButton向下:当按下鼠标键时,只有第一帧。

Input.GetMouseButton上行: 松开鼠标键时,只有第一帧。

c#中的运算符!=!可以反转条件。对于那种情况:

    if (IsGrappling && !Input.GetMouseButton(0))
    {
        // do something
    }