CreateSignal (Function): Difference between revisions
From Legacy Roblox Wiki
Jump to navigationJump to search
m Text replacement - "</SyntaxHighlight>" to "</syntaxhighlight>" |
m Text replacement - "<SyntaxHighlight code="lua">" to "<syntaxhighlight lang="lua">" |
||
Line 10: | Line 10: | ||
== Description == | == Description == | ||
This function is used to create "custom events" for use in user-code, that act mostly like normal Roblox events. For example: | This function is used to create "custom events" for use in user-code, that act mostly like normal Roblox events. For example: | ||
< | <syntaxhighlight lang="lua"> | ||
local lib = assert(LoadLibrary('RbxUtility')) | local lib = assert(LoadLibrary('RbxUtility')) | ||
local sig = lib.CreateSignal() | local sig = lib.CreateSignal() | ||
Line 21: | Line 21: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Note that the LuaSignal class also supports all of the other properties of events, such as wait: | Note that the LuaSignal class also supports all of the other properties of events, such as wait: | ||
< | <syntaxhighlight lang="lua"> | ||
Spawn(function() | Spawn(function() | ||
local result = sig:wait() | local result = sig:wait() |
Latest revision as of 06:19, 27 April 2023
CreateSignal( ) | |
Returns | LuaSignal |
Description: | Returns a LuaSignal object which acts much like the real RBXScriptSignal objects, which ROBLOX events use, only implemented in-Lua for full control from within scripts. |
Description
This function is used to create "custom events" for use in user-code, that act mostly like normal Roblox events. For example:
local lib = assert(LoadLibrary('RbxUtility'))
local sig = lib.CreateSignal()
--
sig:connect(function(message)
print("Message: "..tostring(message))
end)
--
sig:fire("Hello, World!") --> Makes the event fire, so that all the handlers are called
Note that the LuaSignal class also supports all of the other properties of events, such as wait:
Spawn(function()
local result = sig:wait()
print("Result: "..tostring(result))
end)
sig:fire("Continue Message") --> Makes any waiting code continue, as well as firing connected functions