Config — различия между версиями

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
(Загрузка конфига)
Строка 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.
 +
 
=Примеры=
 
=Примеры=

Версия 12:36, 14 декабря 2017

Конфиг необходим для настройки свойств игровой механики, которая была добавлена в объект Script Game. Этот конфиг заменяет игровой механике сетсы, которые для нее недоступны.

Структура

config.json

levels/
1/
config.json
resources/
images/
pic.png
sounds/
snd.ogg
resources.json
2/
...

resources/

images/
pic.png
sounds/
snd.ogg
resources.json

Описание

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.

Примеры