Материал из Скретч Вики
![]() |
Статья не завершена! Если ты хочешь помочь — отредактируй её. |
Данные — формы представления информации, с которыми имеют дело информационные системы и их пользователи. Сохранение данных нужно для того чтобы можно было сохранить данные того что было в проекте, и после чего загрузить их обратно.
Принцип работы
Для того чтобы сделать сохранение данных, нам нужно заносить всю информацию для сохранения в одно целое так, чтобы потом это можно было считать. Для этого будет использовать стандартную систему кодов.
Система кодов
Принцип этой системы состоит в том, что к числу в зависимости от его максимального значения прибавляем число 5×10количество цифр в числе. Например, 215 → 500, 2156 → 5000, 21567 → 50000 и т.д. Считывать можно просто отнимая число которое прибавили. Это позволяет держать число в определенном количестве символов, например если переменная не может быть больше 2876, то даже при значении −345 мы получим четырёхзначное число (если при этом число не достигает 5000).
Алгоритм
- нужно определить какие данные нужно сохранять (пример: координаты X и Y).
- создадим список, куда будет выводится код сохранения, например «SavingLoad»
- нужно выбрать разделитель между значениями, например прямая черта или пробел. В этом случае — это «|».
- запишем все закодированные переменные в список (лучше сделать это под блоком
когда я получу [сохранить v]
)
добавить (объединить (объединить ((положение x) + (500)) ((положение y) + (500))) ((направление) + (500))) к [SavingData v]
Обратный алгоритм
Переменная «var» — то, что вводит игрок для того чтобы активировать код от сохранения. Например, преобразуем 560670870 в 560, 670 и 870:
([целое меньшее v] от ((var)/(1000000))::operators) // 560 ([целое меньшее v] от (((var)/(1000)) mod (1000))::operators) // 670 ([целое меньшее v] от ((var) mod (1000))::operators) // 870