1
if( ev.type == ALLEGRO_EVENT_TIMER)

这是事件循环中用于检查传入事件是否为计时器事件的语句。

但是所有的定时器都会产生同样的事件,那么你如何让多个定时器同时运行呢?你如何区分它们?

4

3 回答 3

1

该事件是一个工会。在这里查看所有属性。

你想要ev.timer.source(或ev.any.source)。

于 2012-06-06T13:54:12.077 回答
1

这是一个工作示例,假设您有两个ALLEGRO_TIMERs( timer_one, timer_two) :

响应每个计时器:

if(ev.timer.source == timer_one) { //Timer one listener
//Code...
}


if(ev.timer.source == timer_two) { //Timer two listener
//Code...
}
于 2013-10-13T00:33:33.740 回答
0

我有这个问题最长的时间,我发现我只是忘记包含al_start_timer(alTimer);在我的更新中。愚蠢的错误,但如果你忘记它可能会花费你一些时间。

于 2014-01-30T09:30:21.283 回答