GetLatentEventStatus: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(Remove obsolete Requirements section)
 
(4 intermediate revisions by 2 users not shown)
Line 4: Line 4:


==Syntax==
==Syntax==
Server:
 
<section name="Server" class="server" show="true">
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
table getLatentEventStatus( player thePlayer, int handle )
table getLatentEventStatus( player thePlayer, int handle )
</syntaxhighlight>
</syntaxhighlight>
Client:
===Required Arguments===
*'''thePlayer:''' The player who is receiving the event.
*'''handle:''' A handle previous got from [[getLatentEventHandles]].
</section>
 
<section name="Client" class="client" show="true">
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
table getLatentEventStatus( int handle )
table getLatentEventStatus( int handle )
</syntaxhighlight>
</syntaxhighlight>
===Required Arguments===
===Required Arguments===
*'''thePlayer:''' (Only required if called on the server) The player who is receiving the event.
*'''handle:''' A handle previous got from [[getLatentEventHandles]].
*'''handle:''' A handle previous got from [[getLatentEventHandles]].
</section>


===Returns===
===Returns===
Returns a table with the following info or false if invalid arguments were passed:
Returns a table with the following info or false if invalid arguments were passed:
*'''tickStart:''' A number representing how many ticks until the data transfer starts (Negative means the transfer has already started)
*'''tickStart:''' A number estimating how many ticks until the data transfer starts (Negative means the transfer has already started)
*'''tickEnd:''' A number representing how many ticks until the data transfer completes
*'''tickEnd:''' A number estimating how many ticks until the data transfer completes
*'''totalSize:''' A number representing how many bytes in total this transfer will transfer
*'''totalSize:''' A number representing how many bytes in total this transfer will transfer
*'''percentComplete:''' A number between 0-100 saying how much is done
*'''percentComplete:''' A number between 0-100 saying how much is done


==Example==
==Example==
<section name="Client" class="client" show="true">
The example starts a latent event and outputs the status of the transfer to the client console
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
--TODO
function beginTransfer()
    triggerLatentServerEvent("blah", resourceRoot, myVeryLongString)    -- Start latent event
    myHandle = getLatentEventHandles()[#getLatentEventHandles()]        -- Get last latent event handle
    myTimer = setTimer( updateStatus, 1000, 0 )                        -- Output status once a second
end
 
function updateStatus()
    local status = getLatentEventStatus(myHandle)  -- Get latent event status
    if not status then
        killTimer(myTimer)                          -- getLatentEventStatus returns false when the handle is no longer valid
    else
        outputConsole( "Transfer status:"
            .. " tickStart:" .. tostring(status.tickStart)
            .. " tickEnd:" .. tostring(status.tickEnd)
            .. " totalSize:" .. tostring(status.totalSize)
            .. " percentComplete:" .. tostring(status.percentComplete)
            )
    end
end
</syntaxhighlight>
</syntaxhighlight>
 
</section>
==Requirements==
{{Requirements|1.3.0-9.03772|1.3.0-9.03772|}}


==See Also==
==See Also==
{{Event functions}}
{{Event functions}}

Latest revision as of 15:45, 7 November 2024

Gets the status of one queued latent event.

Syntax

Click to collapse [-]
Server
table getLatentEventStatus( player thePlayer, int handle )

Required Arguments

  • thePlayer: The player who is receiving the event.
  • handle: A handle previous got from getLatentEventHandles.
Click to collapse [-]
Client
table getLatentEventStatus( int handle )

Required Arguments

Returns

Returns a table with the following info or false if invalid arguments were passed:

  • tickStart: A number estimating how many ticks until the data transfer starts (Negative means the transfer has already started)
  • tickEnd: A number estimating how many ticks until the data transfer completes
  • totalSize: A number representing how many bytes in total this transfer will transfer
  • percentComplete: A number between 0-100 saying how much is done

Example

Click to collapse [-]
Client

The example starts a latent event and outputs the status of the transfer to the client console

function beginTransfer()
    triggerLatentServerEvent("blah", resourceRoot, myVeryLongString)    -- Start latent event
    myHandle = getLatentEventHandles()[#getLatentEventHandles()]        -- Get last latent event handle
    myTimer = setTimer( updateStatus, 1000, 0 )                         -- Output status once a second
end

function updateStatus()
    local status = getLatentEventStatus(myHandle)   -- Get latent event status
    if not status then
        killTimer(myTimer)                          -- getLatentEventStatus returns false when the handle is no longer valid
    else
        outputConsole( "Transfer status:"
            .. " tickStart:" .. tostring(status.tickStart)
            .. " tickEnd:" .. tostring(status.tickEnd)
            .. " totalSize:" .. tostring(status.totalSize)
            .. " percentComplete:" .. tostring(status.percentComplete)
            )
    end
end

See Also