Config — различия между версиями
Avereskun (обсуждение | вклад) |
Avereskun (обсуждение | вклад) (→Загрузка конфига) |
||
Строка 82: | Строка 82: | ||
} | } | ||
=Загрузка конфига= | =Загрузка конфига= | ||
+ | Порядок загрузки конфига можно посмотреть [[Script_Game#Свойства|тут]] | ||
+ | Сравним как выглядит конфиг до и после загрузки в базу ресурсов | ||
+ | |||
+ | До: | ||
+ | { | ||
+ | "name":"levels config", | ||
+ | "nameID":"{txt:0}", | ||
+ | "defaultIcoID":"{img:3}", | ||
+ | "levels": | ||
+ | [ | ||
+ | {"dir":"levels/1/"}, | ||
+ | {"dir":"levels/2/"} | ||
+ | ] | ||
+ | } | ||
+ | |||
+ | После: | ||
+ | { | ||
+ | "defaultIcoID": 23, | ||
+ | "levels": [ | ||
+ | { | ||
+ | "dir": "levels/1/", | ||
+ | "id": 28 | ||
+ | }, | ||
+ | { | ||
+ | "dir": "levels/2/", | ||
+ | "id": 29 | ||
+ | } | ||
+ | ], | ||
+ | "name": "levels config", | ||
+ | "nameID": 20, | ||
+ | "resources": { | ||
+ | "images": [ | ||
+ | 23 | ||
+ | ], | ||
+ | "sounds": [ | ||
+ | ], | ||
+ | "texts": [ | ||
+ | 20 | ||
+ | ] | ||
+ | } | ||
+ | } | ||
+ | |||
+ | Помимо основных параметров в конфиг после экспорта добавились ресурсы с уникальными id, а файлы уровней также получили уникальные id. | ||
+ | |||
=Примеры= | =Примеры= |
Версия 10:36, 14 декабря 2017
Конфиг необходим для настройки свойств игровой механики, которая была добавлена в объект Script Game. Этот конфиг заменяет игровой механике сетсы, которые для нее недоступны.
Содержание
Структура
config.json
- levels/
- 1/
- config.json
- resources/
- images/
- pic.png
- sounds/
- snd.ogg
- resources.json
- images/
- 2/
- 1/
- ...
- levels/
resources/
- images/
- pic.png
- sounds/
- snd.ogg
- resources.json
- images/
Описание
config.json
В корне должен лежать файл config.json. В нем содержатся основные свойства игровой механики, которые не привязаны к уровню, а также массив ссылок на директории с настройками для каждого уровня. {
"name": "hidden_list", "tex1": "{txt:10}" "res2": "{img:11}" "levels":[{ "dir": "levels/1/" }, { "dir": "levels/2/" } ]
}
resources
В каталоге с ресурсами должны находится каталоги images (с графикой), sounds (со звуками) и файл resources.json с информацией и путями к ресурсам resources.json.
{ "texts": [{ "id": 10, "lang":[ { "name":"en", "w" :"Hello", "s1": "open door", "s2": "stop 2", "s3": "stop door" } ] }, { "id": 11, "w" :"Hello 2", "s2":"Hello world 2" } ], "images": [{ "id" : 3, "src": "images/pic.png", "px" : 100, "py" : 100 } ], "sounds": [ { "id" : 3, "src": "sounds/mus.ogg" } ] }
levels
В этом каталоге размещаются настройки уровней для игровой механики. Содержание папки с уровнем аналогичное общей структуре конфига: файл config.json с конфигурацией и настройками уровня, каталог resources в котором лежит графика и звуки для этого уровня и файл resources.json с параметрами и путями к ресурсам (картинки, звуки, тексты). levels/1/config.json
{ "hiddens": [{ "text1": "{txt:10}", "text2": "{txt:11}", "nm": "bita_00", "rect": { "h": 342, "w": 36, "x": -699, "y": 66 }, "res": "{img:3}", "snd": "{snd:3}" }] }
Загрузка конфига
Порядок загрузки конфига можно посмотреть тут Сравним как выглядит конфиг до и после загрузки в базу ресурсов
До:
{ "name":"levels config", "nameID":"{txt:0}", "defaultIcoID":"{img:3}", "levels": [ {"dir":"levels/1/"}, {"dir":"levels/2/"} ] }
После:
{ "defaultIcoID": 23, "levels": [ { "dir": "levels/1/", "id": 28 }, { "dir": "levels/2/", "id": 29 } ], "name": "levels config", "nameID": 20, "resources": { "images": [ 23 ], "sounds": [ ], "texts": [ 20 ] } }
Помимо основных параметров в конфиг после экспорта добавились ресурсы с уникальными id, а файлы уровней также получили уникальные id.