mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2024-09-04 07:22:39 +00:00
![Jonathan Coates](/assets/img/avatar_default.png)
- Fix several inaccuracies with several files not marking Dan's authorship. Most of these are new files, where the code was moved from somewhere else: - In the public API: IDynamicLuaObject, ILuaAPI, TaskCallbakc, IDynamicPeripheral, UpgradeBase - In the ROM: fs, http, require - Do not mark Dan as an author for entirely new code. This affects DetailHelpers, DropConsumer, FluidData, InventoryMethods, ItemDetails, MonitorRenderState, NoTermComputerScreen, Palette, PlatformHelperImpl, UploadFileMessage, the Terminal tests, and any speaker-related files. - Relicence many files under the MPL where we have permission to do so. See #1339 for further details. Thank you to everyone who has contributed so far! Cannot overstate how appreciated it is <3.
1.2 KiB
1.2 KiB
module: [kind=event] task_complete
see: commands.execAsync To run a command which fires a task_complete event.
The @{task_complete} event is fired when an asynchronous task completes. This is usually handled inside the function call that queued the task; however, functions such as @{commands.execAsync} return immediately so the user can wait for completion.
Return Values
- @{string}: The event name.
- @{number}: The ID of the task that completed.
- @{boolean}: Whether the command succeeded.
- @{string}: If the command failed, an error message explaining the failure. (This is not present if the command succeeded.)
- …: Any parameters returned from the command.
Example
Prints the results of an asynchronous command:
local taskID = commands.execAsync("say Hello")
local event
repeat
event = {os.pullEvent("task_complete")}
until event[2] == taskID
if event[3] == true then
print("Task " .. event[2] .. " succeeded:", table.unpack(event, 4))
else
print("Task " .. event[2] .. " failed: " .. event[4])
end