From 1348450dc4b31714de097c672a930415317d9e8a Mon Sep 17 00:00:00 2001 From: MihailRis Date: Mon, 11 Dec 2023 01:11:07 +0300 Subject: [PATCH] =?UTF-8?q?Created=20=D0=A1=D0=B2=D0=BE=D0=B9=D1=81=D1=82?= =?UTF-8?q?=D0=B2=D0=B0=20=D0=B1=D0=BB=D0=BE=D0=BA=D0=BE=D0=B2=20(markdown?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Свойства-блоков.md | 100 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 Свойства-блоков.md diff --git a/Свойства-блоков.md b/Свойства-блоков.md new file mode 100644 index 0000000..4e51638 --- /dev/null +++ b/Свойства-блоков.md @@ -0,0 +1,100 @@ +# Вид + +## Текстура - `texture` + +Название текстуры блока (указывается только имя, без расширения или пути к файлу) + +Файл текстуры должен находиться в `res/textures/blocks/` и иметь формат **png** + +## Текстурирование сторон - `texture-faces` + +>[!IMPORTANT] +> Не может использоваться одновременно с `texture` + +Массив из 6 названий текстур, позволяющих указать их для каждой из сторон отдельно. + +Пример: +```json +"texture-faces": [ + "grass_side", + "grass_side", + "dirt", + "grass_top", + "grass_side", + "grass_side" +] +``` + +## Модель - `model` + +Модель блока из списка: +- "block" - используется по-умолчанию для всех обычных блоков +- "none" - невидимый блок (пример: воздух) +- "X" - модель травы (крест из двух спрайтов) +- "aabb" - модель, соответствующая хитбоксу блока (трубы, лампочки, панели). Без указания хитбокса будет выглядеть как обычный блок + +## Группа отрисовки - `draw-group` + +Целое число определяющее номер группы отрисовки данного блока. +Актуально для полупрозрачных блоков - решает проблемы невидимых сторон блоков за этим блоком. + +## Вращение - `rotation` + +Профиль вращения (набор положений, в которые можно установить блок) из списка: + +- "none" - вращение блока отключено (по-умолчанию) +- "pipe" - профиль "труба". Примеры блоков: бревно, труба, лампочка +- "pane" - профиль "панель". Примеры блоков: панель, дверь, табличка + +# Освещение + +## Излучение - `emission` + +Массив из трех целых чисел - R, G, B освещения от 0 до 15. + +Примеры: + +- `[15, 15, 15]` - самый яркий белый свет +- `[7, 0, 0]` - слабый красный свет +- `[0, 0, 0]` - блок не излучает свет (по-умолчанию) + + +## Светопроводимость - `light-passing` + +При значении `true` блок проводит свет от излучающих блоков. + +## Солнечная светопроводимость - `sky-light-passing` + +При значении `true` блок не препятствует прохождению вертикального луча солнечного света. + +# Физика + +## Препятствие - `obstacle`: + +Значение false отключает хитбокс у блока (позволяет игроку проходить сквозь блок) + +## Хитбокс - `hitbox`: + +Массив из 6 чисел описывающих смещение и размер хитбокса блока. + +Числа указываются в диапазоне [0.0, 1.0] - т.е в пределах блока. + +Массив `[0.25, 0.0, 0.5, 0.75, 0.4, 0.3]` описывает хитбокс: +- шириной (с востока на запад) 0.75 м +- высотой 0.4 м +- длиной (с юга на север) 0.3 м +- смещен на 0.25 м на запад +- смещен на 0.0 м вверх +- смещен на 0.5 м на север + +## Выделяемость - `selectable` + +При значении в `false` курсор будет игнорировать блок, выделяя тот, что находится за ним. + +## Заменяемость - `replaceable` + +При значении в `true` на месте блока можно установить любой другой блок. Пример: вода, трава, цветок. + +## Разрушаемость - `breakable` + +При значении в `false` блок нельзя сломать. \ No newline at end of file