gpt4 book ai didi

c# - 空闲动画不会在 keyup 上触发

转载 作者:行者123 更新时间:2023-11-30 17:39:36 24 4
gpt4 key购买 nike

我有一个播放器,我想将播放器从左移到右。我可以通过键盘事件移动播放器。但问题是,当我释放按键时,播放器动画应该处于空闲状态。它不工作。为什么?

void Update ()
{
if (Input.GetKeyDown(KeyCode.RightArrow))
{
transform.Translate(Vector3.forward*Time.deltaTime);
animation.Play("Walk_with_Bin_001");
animation["Walk_with_Bin_001"].wrapMode = WrapMode.Loop;
}

if (Input.GetKeyUp(KeyCode.UpArrow))
{
animation.Stop("Walk_with_Bin_001");
animation.Play("Idle");
}
}

最佳答案

我怀疑您可能混淆了 if 语句条件的键码。在第一个 block 中,您正在检查 KeyCode.RightArrow 的 keydown - 但在第二个 block 中,您正在检查 KeyCode.UpArrow 的 keyup。

这意味着即使您松开向右箭头键,“Walk_with_Bin_001”也会继续循环播放,直到您按下向上箭头键。将第二个条件更改为也使用 KeyCode.RightArrow,您的代码应该按照您的预期执行,如下所示:

if (Input.GetKeyUp(KeyCode.RightArrow))
{
animation.Stop("Walk_with_Bin_001");
animation.Play("Idle");
}

关于c# - 空闲动画不会在 keyup 上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35292390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com