Files
assaultcube-/config/opt/autosave.cfg
T
ac-stef e1572dcdee move ++, --, ++f and --f to compatibility.cfg
useless, because of the "failing silently" behaviour

DOCREF ++ -- ++f --f
2017-06-14 19:01:15 +02:00

42 lines
1.8 KiB
INI

// old autosave system (superseded by autosaved xmaps)
// (write "load_autosave" into your autoexec.cfg to load)
persistidents 0 // don't save default values
checkinit mapstartalways [numAutoSaves = 0; autoSaveCheck]
checkinit onNewMap [numAutoSaves = 0; autoSaveCheck]
alias autosavemap 0 // Autosavemap system disabled by default
alias timeBetAutoSaves 300000 // Autosave once every 5 minutes.
alias numAutoSaveBackups 3 // Make a map .bak every 3 autosaves (15 minutes) by default
tempalias numAutoSaves 0
const autoSaveCheck [ if $autosavemap [ sleep $timeBetAutoSaves doAutoSave ] ]
const execAutoSave [
+= numAutoSaves 1
push oldmapbackups $mapbackupsonsave
if (|| (!= $numAutoSaveBackups $numAutoSaves) (= $numAutoSaveBackups 0)) [ mapbackupsonsave 0 ] [ numAutoSaves = 0 ] // Temporarily turn off map backups to avoid clutter.
savemap (curmap)
mapbackupsonsave (pop oldmapbackups)
echo "\f1The map was automatically saved. \f5Next auto-save in" (divf $timeBetAutoSaves 60000) minutes.
]
const doAutoSave [
if $autosavemap [
if (&& (! (strstr $__defaultmaps (curmap))) (strlen (curmap))) [
if $editing execAutoSave [
if (= $gamemode (modenum coop)) execAutoSave
]
]
]
autoSaveCheck
]
showedBAKinfo = 0
// amend settings menu
newmenu [Editing settings]
menuitemcheckbox "Enable auto save map: " "$autosavemap" [ autosavemap = $arg1 ]
menuitemslider "Time between auto saves (in minutes): " 2 60 "(div $timeBetAutoSaves 60000)" 1 [ timeBetAutoSaves = (* $arg1 60000) ]
menuitemtextinput "Make a map backup (.BAK) every: " "$numAutoSaveBackups" [ numAutoSaveBackups = $arg1 ] [ if (! $showedBAKinfo) [ echo This setting effects the number of autosavemaps between making a map backup file. "(.BAK)"; showedBAKinfo = 1 ] ] 4