Create AutoSave in Lua

  • #1, by darren-beckettFriday, 23. October 2015, 11:31 5 years ago
    How do I perform this action using Lua?

    Execute Autosave #1

    Great Poster

    351 Posts


  • #2, by afrlmeFriday, 23. October 2015, 11:57 5 years ago
    You can't. There's currently no Lua functions that I know of relating to save / load game.

    Why do you want to use Lua for this? If you are wanting to create an automated autosave system then sure you can use Lua script to a degree for checking when it should save the game, but you will still need to create a called by other action which contains an execute autosave action part.

    How I sorted out my autosave system was to create a loop in Lua script using the mainLoop event handler, then inside the loop function I listen out for two things...

    1. scene change & 2. scene is not a menu. I update a variable with new scene if it doesn't equal the last scene & if it's not a menu then I call the called by other action containing the autosave actions.

    -- * variables * --
    local ps -- empty variable(s)

    -- * function used to check if game should autosave (saves on new scene [playable]) * --
    function autosaveSystem()
    if game.CurrentScene:getName() ~= ps then
    ps = game.CurrentScene:getName() -- update scene name
    if not game.CurrentScene:getBool(VSceneIsMenu) and not game.CurrentScene:isEmpty() then
    startAction("Actions[autosave_system]")
    end
    end
    end

    registerEventHandler("mainLoop", "autosaveSystem") -- creates a loop function which loops autosaveSystem() function
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    Imperator

    6842 Posts

  • #3, by darren-beckettFriday, 23. October 2015, 13:47 5 years ago
    I have a global key handler which watches for the Back Key (Android), so i wanted to create a save point before going to the menu.
    I'll create an action and call that then, thanks.

    Great Poster

    351 Posts

Write post