Перейти к основному содержимому

Назад: Работа с файлами игр, использование модулей

Сохранения

QSP позволяет сохранять и загружать состояния игры из файлов сохранений не только средствами самого плеера, но и непосредственно из кода игры.

Операторы для работы с сохранениями

  • SAVEGAME — сохраняет состояние игры в указанный файл. Общая запись:

    SAVEGAME [$путь]

    , где [$путь] — путь к создаваемому файлу сохранения. Если параметр [$путь] отсутствует, то вызывается окно сохранения игры.
    Пример:

    ! сохраняем состояние в файл 1.sav
    savegame "1.sav"
    ! открываем окно сохранения
    savegame

    См. также локацию-обработчик события "cохранение состояния игры" (ONGSAVE).

  • OPENGAME — загрузка указанного файла сохранения. Общая запись:

    OPENGAME [$путь]

    , где [$путь] — путь к файлу сохранения. Если параметр [$путь] отсутствует, то вызывается окно загрузки состояния игры.
    Пример:

    ! загрузка состояния из файла 1.sav
    opengame "1.sav"
    ! открываем окно загрузки состояния
    opengame

    См. также локацию-обработчик события "загрузка состояния игры" (ONGLOAD).

Системные переменные, отвечающие за настройку сохранений

  • NOSAVE — если значение данной переменной отлично от 0, пункт меню плеера "Сохранить состояние игры" игроку становится недоступен, т.е. игрок не может самостоятельно сохранить игру. В то же время на уровне кода QSP продолжает работать оператор SAVEGAME. Пример:

    ! отключаем возможность сохранения игры
    nosave=1
    act "Бросить кости":
    cubes=rand(1,6)
    ! включаем возможность сохранений обратно
    nosave=0
    delact $selact
    end
  • DEBUG — если значение переменной отлично от нуля, отключается проверка идентификатора игры при загрузке состояния. Иначе при каждом изменении файла игры нельзя будет использовать файлы сохранений, сделанные до изменения игры.
    Совет: во время разработки и тестов игры значение переменной DEBUG всегда должно быть отлично от нуля, а когда вы выпускаете финальную версию игры (релиз), нужно выставить переменной DEBUG значение 0, чтобы игроки не смогли загрузить файлы сохранений от других игр.

    ! отключаем проверку игры на
    ! совместимость с сохранениями
    debug = 1

Вперёд: Реальное время