Ir para o conteúdo principal
Version: latest - a1.148.0 ⚖️

⏱️ Timer

Execute code at specified time intervals.

🗿Static ClassClient & Server🧑‍💻API Source

info

The shortest interval possible is equal to the local Tick Rate - usually at 33ms. On the Server this can vary depending on the Config.toml setting.

🎒 Examples

-- creates a Interval to call a function at every 2 seconds
local my_interval = Timer.SetInterval(function(param1, param2)
Console.Log("Triggered each 2 seconds! Param1: " .. param1 .. ". Param2: " .. param2)
end, 2000, "awesome param 1", 456)

-- cancels the Interval
Timer.ClearInterval(my_interval)

-- creates a Timeout to call my_function in 5 seconds, once - passing a parameter
Timer.SetTimeout(function(my_param)
Console.Log("nanos " .. my_param)
end, 5000, "world")
(Timer.Bind) Binding a Timer to an Entity
local character = Character(Vector(), Rotator(), "nanos-world::SK_Male")

local my_timer = Timer.SetTimeout(function(_character)
-- Do something with _character
-- Ex: Destroy the character after 10 seconds
_character:Destroy()
end, 10000, character)

-- Binds the Timer to the Character
-- This will ensure it will never trigger if the character is destroyed before it
-- With this you don't need to validate if the '_character' parameter is valid
Timer.Bind(my_timer, character)

🗿 Static Functions

ReturnsNameDescription
BindBinds a Timer to any Actor. The timer will be automatically cleared when the Actor is destroyed
ClearIntervalStops the execution of the function specified in SetInterval()
ClearTimeoutStops the execution of the function specified in SetTimeout()
integerGetElapsedTimeReturns the time elapsed since the last tick
integerGetRemainingTimeReturns the time remaining to the next tick
booleanIsValidChecks if a Timer is currently active or waiting to be triggered
PausePauses the Timer
ResetElapsedTimeResets a Timer to restart from beginning
ResumeResumes the Timer
integerSetIntervalSame as SetTimeout(), but repeats the execution of the function continuously
SetRemainingTimeSets the time remaining to the next tick
integerSetTimeoutExecutes a function, after waiting a specified number of milliseconds

Optimal

Bind

Binds a Timer to any Actor. The timer will be automatically cleared when the Actor is destroyed
Timer.Bind(timer_id, actor)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID
Base Actoractor Required parameter Actor to be bound
Timer.Bind Examples
Binding a Timer to an Entity
local character = Character(Vector(), Rotator(), "nanos-world::SK_Male")

local my_timer = Timer.SetTimeout(function(_character)
-- Do something with _character
-- Ex: Destroy the character after 10 seconds
_character:Destroy()
end, 10000, character)

-- Binds the Timer to the Character
-- This will ensure it will never trigger if the character is destroyed before it
-- With this you don't need to validate if the '_character' parameter is valid
Timer.Bind(my_timer, character)

Optimal

ClearInterval

Stops the execution of the function specified in SetInterval()
Timer.ClearInterval(interval_id)

Parameters

TypeParameterDefaultDescription
integerinterval_id Required parameter The ID value returned by SetInterval() is used as the parameter for this method

Optimal

ClearTimeout

Stops the execution of the function specified in SetTimeout()
Timer.ClearTimeout(timeout_id)

Parameters

TypeParameterDefaultDescription
integertimeout_id Required parameter The ID value returned by SetTimeout() is used as the parameter for this method

Optimal

GetElapsedTime

Returns the time elapsed since the last tick
local elapsed_time = Timer.GetElapsedTime(timer_id)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID

Returns

TypeDescription
integerelapsed_time

Optimal

GetRemainingTime

Returns the time remaining to the next tick
local remaining_time = Timer.GetRemainingTime(timer_id)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID

Returns

TypeDescription
integerremaining_time

See also SetRemainingTime.


Optimal

IsValid

Checks if a Timer is currently active or waiting to be triggered
local is_valid = Timer.IsValid(timer_id)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID

Returns

TypeDescription
booleanis_valid

Optimal

Pause

Pauses the Timer
Timer.Pause(timer_id)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID

Optimal

ResetElapsedTime

Resets a Timer to restart from beginning
Timer.ResetElapsedTime(timer_id)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID

Optimal

Resume

Resumes the Timer
Timer.Resume(timer_id)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID

Optimal

SetInterval

Same as SetTimeout(), but repeats the execution of the function continuously
local ret = Timer.SetInterval(callback, milliseconds?, parameters...?)

Parameters

TypeParameterDefaultDescription
functioncallback Required parameter The callback that will be executed.
Return false to stop it from being called.
integermilliseconds?0
The time in milliseconds the timer should delay in between executions of the specified function
anyparameters...?nil
Additional parameters to pass to the function

Returns

TypeDescription
integerthe interval_id

Moderate

SetRemainingTime

Sets the time remaining to the next tick
Timer.SetRemainingTime(timer_id, time)

Parameters

TypeParameterDefaultDescription
integertimer_id Required parameter The Timer ID
integertime Required parameter The time remaining in milliseconds

See also GetRemainingTime.


Optimal

SetTimeout

Executes a function, after waiting a specified number of milliseconds
local ret = Timer.SetTimeout(callback, milliseconds?, parameters...?)

Parameters

TypeParameterDefaultDescription
functioncallback Required parameter The callback that will be executed
integermilliseconds?0
The time in milliseconds to wait before executing the function
anyparameters...?nil
Additional parameters to pass to the function

Returns

TypeDescription
integerthe timeout_id

🚀 Events

This class doesn't have own events.