Skip to content
Snippets Groups Projects
Commit c97df2b3 authored by dg's avatar dg
Browse files

PrintScreen key now takes a screenshot (for modules: game:saveScreenshot() and keybind SCREENSHOT)

git-svn-id: http://svn.net-core.org/repos/t-engine4@4033 51575b47-30f0-44d4-a5cc-537603b46e54
parent 3c22994e
No related branches found
No related tags found
No related merge requests found
......@@ -17,7 +17,7 @@
-- Nicolas Casalini "DarkGod"
-- darkgod@te4.org
TE4CORE_VERSION = 14
TE4CORE_VERSION = 15
corename = "te4core-"..TE4CORE_VERSION
newoption {
......
......@@ -30,3 +30,10 @@ defineAction{
group = "actions",
name = "Show message log",
}
defineAction{
default = { "sym:_PRINTSCREEN:false:false:false:false" },
type = "SCREENSHOT",
group = "actions",
name = "Take a screenshot",
}
......@@ -486,3 +486,19 @@ function _M:takeScreenshot(for_savefile)
return core.display.getScreenshot(0, 0, self.w, self.h)
end
end
--- Take a screenshot of the game
-- @param for_savefile The screenshot will be used for savefile display
function _M:saveScreenshot()
local s = self:takeScreenshot()
if not s then return end
fs.mkdir("/screenshots")
local file = ("/screenshots/%s-%d.png"):format(self.__mod_info.version_string, os.time())
local f = fs.open(file, "w")
f:write(s)
f:close()
local Dialog = require "engine.ui.Dialog"
Dialog:simplePopup("Screenshot taken!", "File: "..fs.getRealPath(file))
end
......@@ -18,7 +18,7 @@
-- darkgod@te4.org
-- Engine Version
engine.version = {0,9,31,"te4",14}
engine.version = {0,9,32,"te4",15}
engine.require_c_core = engine.version[5]
engine.version_id = ("%s-%d_%d.%d.%d"):format(engine.version[4], engine.require_c_core, engine.version[1], engine.version[2], engine.version[3])
......
......@@ -71,6 +71,7 @@ function _M:init()
game:registerDialog(require("engine.DebugConsole").new())
end
end)
self.key:addBind("SCREENSHOT", function() self:saveScreenshot() end)
end
......
......@@ -339,6 +339,8 @@ function _M:setupCommands()
self:onQuit()
end,
SCREENSHOT = function() self:saveScreenshot() end,
EXIT = function()
local menu menu = require("engine.dialogs.GameMenu").new{
"resume",
......
......@@ -23,7 +23,7 @@ short_name = "example"
author = { "DarkGod", "darkgod@te4.org" }
homepage = "http://te4.org/modules:example"
version = {1,0,0}
engine = {0,9,31,"te4"}
engine = {0,9,32,"te4"}
description = [[
This is *NOT* a game, just an example/template to make your own using the T-Engine4.
]]
......
......@@ -338,6 +338,8 @@ function _M:setupCommands()
self:onQuit()
end,
SCREENSHOT = function() self:saveScreenshot() end,
EXIT = function()
local menu menu = require("engine.dialogs.GameMenu").new{
"resume",
......
......@@ -23,7 +23,7 @@ short_name = "example_realtime"
author = { "DarkGod", "darkgod@te4.org" }
homepage = "http://te4.org/modules:example"
version = {1,0,0}
engine = {0,9,31,"te4"}
engine = {0,9,32,"te4"}
description = [[
This is *NOT* a game, just an example/template to make your own using the T-Engine4.
]]
......
......@@ -1275,6 +1275,8 @@ function _M:setupCommands()
self.player.changed = true
end,
SCREENSHOT = function() self:saveScreenshot() end,
HELP = "EXIT",
EXIT = function()
local menu menu = require("engine.dialogs.GameMenu").new{
......
......@@ -22,8 +22,8 @@ long_name = "Tales of Maj'Eyal: Age of Ascendancy"
short_name = "tome"
author = { "DarkGod", "darkgod@te4.org" }
homepage = "http://tome.te4.org/"
version = {3,9,31}
engine = {0,9,31,"te4"}
version = {3,9,32}
engine = {0,9,32,"te4"}
description = [[
Welcome to Maj'Eyal.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment