OnPlayerScreenShot

From Multi Theft Auto: Wiki
Revision as of 14:57, 26 March 2012 by X86dev (talk | contribs) (Undo revision 29714 by Jeremy Themans (talk))
Jump to navigation Jump to search

This event is triggered when the screen capture requested by takePlayerScreenShot has completed.

Parameters

resource theResource, string status, string imageData, int timestamp, string tag
  • theResource: The resource which called takePlayerScreenShot
  • status: The status of the event which can be one of three values:
    • "ok" - The image capture was successful and imageData will contain a JPEG image.
    • "disabled" - The image capture failed because the player has disabled screen uploads.
    • "minimized" - The image capture failed because the player has minimized the screen. (i.e. alt-tabbed)
  • imageData: A string which contains the JPEG image data. This can be saved with the file functions, or sent to players with triggerClientEvent or even uploaded to a web site.
  • timestamp: The server tick count when the capture was taken.
  • tag: The tag string passed to takePlayerScreenShot.

Source

The source of this event is the player

Example

This example captures the screen of a random player every 2 seconds and shows it to everyone:

Click to collapse [-]
Server
--------------------------------------------------
-- Take screen shot every 2 seconds
function doTakeScreenShot()
    takePlayerScreenShot( getRandomPlayer(), 320, 200 )
end
setTimer(doTakeScreenShot, 2000, 0)

--------------------------------------------------
-- Receive screen shot result
addEventHandler( "onPlayerScreenShot", root,
    function ( theResource, status, pixels, timestamp, tag )
        triggerClientEvent( root, "onMyClientScreenShot", resourceRoot, pixels )  -- Relay to all players
    end
)
Click to collapse [-]
Client
--------------------------------------------------
-- Turn image data into a texture at the client
addEvent("onMyClientScreenShot",true)
addEventHandler( "onMyClientScreenShot", resourceRoot,
    function( pixels )
        if image then
            destroyElement(image)
        end
        image = dxCreateTexture( pixels )
    end
)

--------------------------------------------------
-- Show image
addEventHandler( "onClientRender", root,
    function()
        if image then
            dxDrawImage( 100, 250, 320, 200, image )
        end
    end
)


Requirements

This template will be deleted.

See Also

Player events


Event functions