summaryrefslogtreecommitdiff
path: root/meta/3rd/Defold/library/timer.lua
diff options
context:
space:
mode:
Diffstat (limited to 'meta/3rd/Defold/library/timer.lua')
-rw-r--r--meta/3rd/Defold/library/timer.lua36
1 files changed, 36 insertions, 0 deletions
diff --git a/meta/3rd/Defold/library/timer.lua b/meta/3rd/Defold/library/timer.lua
new file mode 100644
index 00000000..4a112fcd
--- /dev/null
+++ b/meta/3rd/Defold/library/timer.lua
@@ -0,0 +1,36 @@
+---Timer API documentation
+---Timers allow you to set a delay and a callback to be called when the timer completes.
+---The timers created with this API are updated with the collection timer where they
+---are created. If you pause or speed up the collection (using set_time_step) it will
+---also affect the new timer.
+---@class timer
+timer = {}
+---Indicates an invalid timer handle
+timer.INVALID_TIMER_HANDLE = nil
+---You may cancel a timer from inside a timer callback.
+---Cancelling a timer that is already executed or cancelled is safe.
+---@param handle hash # the timer handle returned by timer.delay()
+---@return boolean # if the timer was active, false if the timer is already cancelled / complete
+function timer.cancel(handle) end
+
+---Adds a timer and returns a unique handle
+---You may create more timers from inside a timer callback.
+---Using a delay of 0 will result in a timer that triggers at the next frame just before
+---script update functions.
+---If you want a timer that triggers on each frame, set delay to 0.0f and repeat to true.
+---Timers created within a script will automatically die when the script is deleted.
+---@param delay number # time interval in seconds
+---@param _repeat boolean # true = repeat timer until cancel, false = one-shot timer
+---@param callback fun(self: object, handle: number, time_elapsed: number) # timer callback function
+---@return hash # handle identifier for the create timer, returns timer.INVALID_TIMER_HANDLE if the timer can not be created
+function timer.delay(delay, _repeat, callback) end
+
+---Manual triggering a callback for a timer.
+---@param handle hash # the timer handle returned by timer.delay()
+---@return boolean # if the timer was active, false if the timer is already cancelled / complete
+function timer.trigger(handle) end
+
+
+
+
+return timer \ No newline at end of file