Config — различия между версиями
Avereskun (обсуждение | вклад) |
Avereskun (обсуждение | вклад) (→resources) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 24: | Строка 24: | ||
==config.json== | ==config.json== | ||
В корне должен лежать файл config.json. В нем содержатся основные свойства игровой механики, которые не привязаны к уровню, а также массив ссылок на директории с настройками для каждого уровня. | В корне должен лежать файл config.json. В нем содержатся основные свойства игровой механики, которые не привязаны к уровню, а также массив ссылок на директории с настройками для каждого уровня. | ||
− | { | + | { |
"name": "hidden_list", | "name": "hidden_list", | ||
"tex1": "{txt:10}" | "tex1": "{txt:10}" | ||
Строка 35: | Строка 35: | ||
} | } | ||
] | ] | ||
− | } | + | } |
+ | |||
==resources== | ==resources== | ||
В каталоге с ресурсами должны находится каталоги images (с графикой), sounds (со звуками) и файл resources.json с информацией и путями к ресурсам | В каталоге с ресурсами должны находится каталоги images (с графикой), sounds (со звуками) и файл resources.json с информацией и путями к ресурсам | ||
− | resources.json. | + | resources.json. В resources.json также содержатся тексты. |
{ | { | ||
Строка 82: | Строка 83: | ||
} | } | ||
=Загрузка конфига= | =Загрузка конфига= | ||
− | + | Чтобы добавить конфиг нужно нажать правой кнопкой на области свойств и выбрать "config". После чего загрузить заранее подготовленный конфиг для игровой механики. | |
Сравним как выглядит конфиг до и после загрузки в базу ресурсов | Сравним как выглядит конфиг до и после загрузки в базу ресурсов | ||
Строка 127: | Строка 128: | ||
=Примеры= | =Примеры= | ||
+ | [[Файл:CONFIG example.zip]] |
Текущая версия на 10:51, 14 декабря 2017
Конфиг может использоваться для настройки свойств любой игровой механики, в том числе и импортированой. Этот конфиг заменяет игровой механике сетсы, которые для нее недоступны.
Содержание
Структура
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. В 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}" }] }
Загрузка конфига
Чтобы добавить конфиг нужно нажать правой кнопкой на области свойств и выбрать "config". После чего загрузить заранее подготовленный конфиг для игровой механики. Сравним как выглядит конфиг до и после загрузки в базу ресурсов
До:
{ "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. Макросы "{img:0}", "{txt:0}", "{snd:0}" заменяются на уникальные id в базе ресурсов.