Global Command: createScreenshot
From The Official Visionaire Studio: Adventure Game Engine Wiki
(Redirected from CreateScreenshot (CMS))
Create a screenshot to be used for the next savegame or to save into an external folder as a .png file.
Syntax
createScreenshot(filename, flags)
Parameters
Parameter | Type/Structure | Description | |
---|---|---|---|
filename | string | If specified the screenshot will be saved to the given path. If not specified the screenshot will be used for the next savegame(s), until a new screenshot is created or the current screenshot is cleared. If a screenshot for a savegame was created before it will be overwritten by the new screenshot. | |
flags | table | flags = 1 | indicates flags table |
clear (bool) | If true the screenshot will be cleared. If the screenshot is cleared, savegame screenshots will be generated automatically by the engine again (everytime the scene is changed from a playable scene to a menu). If the "flags" parameter is omitted, this defaults to false. |
Return values
none
Examples
Example 1: Save a screenshot which will get used for the next savegame.
createScreenshot()
Example 2: Clear the previously saved savegame screenshot.
createScreenshot("", {flags=1, clear = true})
Example 3: Save a screenshot to a folder. If a file with the same name already exists, it will be overwritten. Be aware that the default save location is the game directory, which may be write-protected.
createScreenshot("screenshots/my_screenshot.png")
Example 4: This expanded example uses the "lfs" file system library to check for a "screenshots" folder inside the user directory and creates it if it doesn't exist.
-- Define a screenshot folder inside the user directory
local screenshot_folder = localAppDir .. "screenshots"
-- Function to check if a folder exists
function folderExists(strFolderName)
if lfs.attributes(strFolderName:gsub("\\$",""),"mode") == "directory" then
return true
else
return false
end
end
-- Try to create the screenshot folder, if it doesn't exist
if not folderExists(screenshot_folder) then
lfs.mkdir(screenshot_folder)
end
-- If the screenshot folder exists, save a screenshot with timestamp
if folderExists(screenshot_folder) then
local time = os.date("%Y-%m-%d_%H-%M-%S")
createScreenshot(screenshot_folder .. "/screenshot_" .. time .. ".png")
end