Timer
倒数计时器。
描述
使用指定的间隔进行倒计时,并在到达 0 时发出信号。可以设置为重复或“一次性”模式。
注意:计时器会受到 Engine.time_scale 的影响,缩放值越高超时越快,反之亦然。
注意:如果想要创建一次性定时器,不实例化节点,请使用 SceneTree.create_timer。
教程
属性
| ||
| ||
| ||
|
方法
is_stopped ( ) const | |
void | |
void | stop ( ) |
信号
timeout ( )
当计时器到 0 时发出。
枚举
enum TimerProcessCallback:
TimerProcessCallback TIMER_PROCESS_PHYSICS = 0
计时器的更新发生在物理帧中(见 Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS)。
TimerProcessCallback TIMER_PROCESS_IDLE = 1
计时器的更新发生在处理帧中(见 Node.NOTIFICATION_INTERNAL_PROCESS)。
属性说明
bool autostart = false
如果为 true
,定时器将在进入场景树时自动启动。
注意:在定时器进入场景树并启动后,该属性会自动设置为 false
。
bool one_shot = false
如果为 true
,定时器将在达到 0 时停止。如果为 false
,它将重新启动。
bool paused
如果为 true
,定时器会被暂停,并且不再处理,即使调用 start,直到它被取消暂停。
TimerProcessCallback process_callback = 1
void set_timer_process_callback ( TimerProcessCallback value )
TimerProcessCallback get_timer_process_callback ( )
处理回调。见 TimerProcessCallback。
float time_left
- float get_time_left ( )
计时器的剩余时间,单位是秒。如果定时器处于非激活状态,则返回 0。
注意:该值是只读的,无法设置。基于的是 wait_time,请使用 start 设置。
float wait_time = 1.0
等待时间,单位为秒。
注意:计时器在每个渲染帧最多只能发射一次(或者如果 process_callback 为 TIMER_PROCESS_PHYSICS,则是每个物理帧)。这意味着非常短的等待时间(低于 0.05 秒),将根据渲染的帧速率,会有明显不同的表现。对于非常短的等待时间,建议在脚本中使用一个 process 循环,而不是使用 Timer 节点。计时器会受 Engine.time_scale 的影响,缩放值越高意味着超时越快,反之亦然。
方法说明
bool is_stopped ( ) const
如果定时器被停止,返回 true
。
void start ( float time_sec=-1 )
启动计时器。如果 time_sec > 0
,则会将 wait_time 设置为 time_sec
。这也会将剩余时间重置为 wait_time。
注意:这个方法不会恢复已暂停的定时器。见 paused。
void stop ( )
停止计时器。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.