我使用Invoke Unity Events来检测用户是否按下或按住按钮。我可以看到函数正在触发,我将respawnHeld
设置为true。然而,更新总是将其记录为false。我完全不知道该怎么办。...我看不出是什么可能将respawnHeld
设置回false。
private bool respawnHeld;
// Update is called once per frame
void Update()
{
Debug.Log($"In Update Function RespawnHeld is {respawnHeld}");
}
public void RespawnInput(InputAction.CallbackContext callbackContext)
{
Debug.Log("SETTING RESPAWN HELD TO TRUE");
respawnHeld = true;
Debug.Log($"In RespawnInput Function RespawnHeld is {respawnHeld}");
}
按下R键后。我希望看到日志声明“In Update Function RespawnHeld is True”。然而,我得到的日志如下:
任何帮助将是非常感谢!
1条答案
按热度按时间n6lpvg4x1#
不幸的是,我不能肯定地说是什么解决了这个问题。但在我的例子中,Respawn Input的调用者是一个Unity事件(来自输入系统)。我从我的游戏对象中删除了脚本,然后重新配置了我的所有事件,现在它可以工作了。