C# 我如何在Unity中增加按键延迟

C# 我如何在Unity中增加按键延迟,c#,unity3d,C#,Unity3d,我对编程非常陌生,所以请对我有耐心。我试图在Unity中按下按钮时增加延迟。例如,当我按下“S”键时,必须经过指定的秒数才能再次按下。有人能帮我吗?我必须回忆一下这里的记忆,但我相信您想要创建一个枚举器函数,大致如下: IEnumerator OnButtonClicked() { } 单击按钮时,您希望使用以下命令启动此协同程序: start例程(OnButtonClicked()); 在OnButtonClicked()(或您选择的任何名称)中,只需调用: 返回新的WaitForSeco

我对编程非常陌生,所以请对我有耐心。我试图在Unity中按下按钮时增加延迟。例如,当我按下“S”键时,必须经过指定的秒数才能再次按下。有人能帮我吗?

我必须回忆一下这里的记忆,但我相信您想要创建一个枚举器函数,大致如下:

IEnumerator OnButtonClicked()
{
}
单击按钮时,您希望使用以下命令启动此协同程序:

start例程(OnButtonClicked());
OnButtonClicked()
(或您选择的任何名称)中,只需调用:

返回新的WaitForSeconds(1);
然后在延迟之后,在这之后,做你想让它做的事情

我如何在Unity中增加按键延迟

如果你想实现这一点,你可以设置一个delayTime并在Update方法中倒计时,让按钮在按下时不做任何事情,直到时间过去

示例:

浮动时间=0f;
无效更新(){
如果(时间>0f){
//减去上次调用该方法的时间差
time-=time.deltatime;
}
if(Input.GetKeyDown(“S”)&时间0f){
//减去上次调用该方法的时间差
time-=time.deltatime;
btn.enabled=false;
}
否则{
btn.enabled=true;
}

if(Input.GetKeyDown(“S”)&&time这是否回答了您的问题?