Garry's Mod Wiki

Revision Difference

timer.Simple#546876

<function name="Simple" parent="timer" type="libraryfunc"> <description> Creates a simple timer that runs the given function after a specified delay. For a more advanced version that you can control after creation, see <page>timer.Create</page>. <warning>Timers use <page>Global.CurTime</page> internally. Due to this, they won't advance while the client is timing out from the server or on an empty dedicated server due to hibernation. (unless sv_hibernate_think is set to 1)</warning></description>⤶ <warning>Timers use <page>Global.CurTime</page> internally. Due to this, they won't advance while the client is timing out from the server or on an empty dedicated server due to hibernation. (unless `sv_hibernate_think` is set to `1`). This is not applicable when the delay is equal to `0`.</warning>⤶ </description>⤶ <realm>Shared and Menu</realm> <args> <arg name="delay" type="number">How long until the function should be ran (in seconds). Use 0 to have the function run in the next <page>GM:Think</page>.</arg> <arg name="delay" type="number">How long until the function should be ran (in seconds). Use `0` to have the function run in the next <page>GM:Think</page>.</arg> <arg name="func" type="function">The function to run after the specified delay.</arg> </args> </function> <example> <description>Print "Hello World" after 5 seconds.</description> <description>Print `Hello World` after 5 seconds.</description> <code>timer.Simple( 5, function() print( "Hello World" ) end )</code> <output>Hello World</output>⤶ ⤶ </example>⤶ ⤶ ⤶ <example>⤶ <output>⤶ ```⤶ Hello World⤶ ```⤶ </output>⤶ </example>⤶ ⤶ <example>⤶ <description>Spawns 5 zombies and creates a timer.Simple that removes them in 11, 12, 13, 14, and 15 seconds.</description> <code> for i = 1, 5 do local zombie = ents.Create("npc_zombie") zombie:SetPos( Vector( i * 40, 0 , 250 ) ) local zombie = ents.Create( "npc_zombie" ) zombie:SetPos( Vector( i * 40, 0, 250 ) ) zombie:Spawn() timer.Simple( 10 + i, function() zombie:Remove() end ) end </code> <output> --11 seconds into game 1st zombie disappears⤶ ⤶ --12 seconds into game 2nd zombie disappears ```⤶ -- 11 seconds into game 1st zombie disappears ⤶ -- 12 seconds into game 2nd zombie disappears⤶ etc. ```⤶ </output> ⤶ </example></example>