我正在使用 XNA 开发一款手机游戏,并且有一个打开和关闭开关,只要点击它就会改变状态。我的问题是它一次点击就可以快速多次更改。我该如何阻止这个?
问问题
155 次
3 回答
2
Store a time the in-game switch was last used and calculate the timespan passed
if(buttonPressed && (Datetime.Now - timeLastInGameSwitchActivated).Milliseconds > 1000)
{
ToggleIngameSwitch();
timeLastInGameSwitchActivated = Datetime.Now;
}
于 2012-11-30T08:50:17.327 回答
1
添加一个先前的值变量来检查按钮的最后状态,如果它与当前不同,则执行所需的代码 ButtonState prev = state
if(currentstate != prev)
{
dothis
}
于 2012-11-30T08:05:21.123 回答
0
我使用这种简单的技术来处理“延迟”的东西。
float elapsed = (float)gameTime.ElapsedGameTime.Milliseconds;
timeCounter += elapsed;
if (timeCounter > yourMinimumDelayTime)
{
//your code here
timeCounter = 0;
}
于 2012-12-01T04:26:05.450 回答