Текущая версия |
Ваш текст |
Строка 1: |
Строка 1: |
| + | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> |
| + | StructuresAPI - библиотека, упрощающая работу со структурами. |
| + | |
| + | '''''ВАЖНО!:''' Документация по версии 1.2 не полная'' |
| <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> |
− | StructuresAPI - библиотека, упрощающая работу со структурами.
| + | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> |
− | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
| |
− | <div class="mw-parser-output">
| |
− | <div class="mw-parser-output"><div class="mw-parser-output">
| |
− | <div class="mw-parser-output"><div class="mw-parser-output"> | |
| == Загрузка == | | == Загрузка == |
| | | |
− | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;" | + | {| border="1" cellpadding="1" cellspacing="1" style="width: 500px;" |
| |- | | |- |
| ! colspan="3" scope="col" | '''Библиотека''' | | ! colspan="3" scope="col" | '''Библиотека''' |
Строка 36: |
Строка 36: |
| *Библиотека переписана. Объект StructuresAPI устарел. | | *Библиотека переписана. Объект StructuresAPI устарел. |
| *Сохраняется содержимое сундуков, печей и воронок | | *Сохраняется содержимое сундуков, печей и воронок |
− |
| |
− | |-
| |
− | | style="width: 64px; text-align: center;" | '''1.3'''
| |
− | | style="width: 114px; text-align: center;" | [https://vk.com/wall-80513593_2305 Подробнее]
| |
− | | style="width: 304px;" |
| |
− | *StructuresAPI удален.
| |
− | *Добавлен объект Rotate. Используется для сложных поворотов.
| |
− | *Метод структуры get был изменен. struct.get(x, y, z, rotates, return_index).
| |
− | *Метод структуры set был изменен. struct.set(x, y, z, rotate, progressively, time).
| |
− | *Добавлен метод destroy(x, y, z, rotates, progressively, time) для структуры.
| |
− | *Добавлен метод check(...) для структуры. Эквивалентен методу get(...).
| |
− | *Добавлен метод Structure.setInWorld(name, ...). Альтернатива Structure.get(name).set(...).
| |
− | *Добавлен метод Structure.destroyInWorld(name, ...). Альтернатива Structure.get(name).destroy(...).
| |
− | *Добавлены константы Structure.PROGRESSIVELY и Structure.NOT_PROGRESSIVELY.
| |
− | *Добавлены константы Structure.MIRROR_X, Structure.MIRROR_Y и Structure.MIRROR_Z.
| |
− | *Исправлена установка блоков добавленных модом.
| |
− | *Исправлено сохранение предметов и блоков.
| |
− | *Исправлен поворот на 180 градусов по Y.
| |
− | *Сохраняются TileEntity
| |
− |
| |
− | |-
| |
− | | style="width: 64px; text-align: center;" | '''1.4'''
| |
− | | style="width: 114px; text-align: center;" | [https://vk.com/wall-80513593_2410 Подробнее]
| |
− | | style="width: 304px;" |
| |
− | *Дополнен перевод.
| |
− | *Установка структуры производится в потоке, только если установка в режиме Structure.PROGRESSIVELY.
| |
− | *Блоки воздуха в структуре больше не заменяются на камень.
| |
| | | |
| |- | | |- |
Строка 69: |
Строка 42: |
| | style="width: 304px;" | | | | style="width: 304px;" | |
| |} | | |} |
− | </div> </div> | + | </div> </div> </div> |
| | | |
| == Условия использования == | | == Условия использования == |
Строка 100: |
Строка 73: |
| *''-y n ''- Установить центр структуры в координате n по Y | | *''-y n ''- Установить центр структуры в координате n по Y |
| *''-z n ''- Установить центр структуры в координате n по Z | | *''-z n ''- Установить центр структуры в координате n по Z |
− | <div class="mw-parser-output">
| + | |
| ==== Через код ==== | | ==== Через код ==== |
| | | |
| '''''!Не рекомендуется''''' | | '''''!Не рекомендуется''''' |
− |
| |
− | 1. Создать или получить объект структуры
| |
− | <syntaxhighlight lang="JavaScript">var struct = Structure.get(name)</syntaxhighlight>
| |
− |
| |
− | Где
| |
− |
| |
− | *name - Имя структуры
| |
− |
| |
− | 2. Добавить блоки
| |
− |
| |
− | 3. Сохранить структуру
| |
− | <syntaxhighlight lang="JavaScript">struct.save()</syntaxhighlight>
| |
− |
| |
− | ===== Устаревший способ =====
| |
| <syntaxhighlight lang="JavaScript">StructuresAPI.save(name, structures)</syntaxhighlight> | | <syntaxhighlight lang="JavaScript">StructuresAPI.save(name, structures)</syntaxhighlight> |
| | | |
Строка 126: |
Строка 85: |
| </div> <div class="mw-parser-output"> | | </div> <div class="mw-parser-output"> |
| === Проверка структур === | | === Проверка структур === |
− |
| |
− | Для проверки структур используется функция ''get экземпляра объекта Structure''
| |
− |
| |
− | ''struct.get(x,y,z,)''
| |
− | <syntaxhighlight lang="JavaScript">stuct.get(x, y, z, rotate_y)</syntaxhighlight>
| |
− |
| |
− | Где:
| |
− |
| |
− | *''x'' - Начальная координата структуры по X
| |
− | *''y'' - Начальная координата структуры по Y
| |
− | *''z'' - Начальная координата структуры по Z
| |
− | *''rotate_y'' - Вращение только по оси Y
| |
− |
| |
− | Вернет ''true'' если это нужная структура, иначе ''false.''
| |
− |
| |
− | '''Пример:'''
| |
− | <syntaxhighlight lang="JavaScript">var struct = Structure.get("myStructure");
| |
− | Callback.addCallback("ItemUse", function(coords, item){
| |
− | if(item.id == 280 && struct.get(coords.x, coords.y, coords.z)){
| |
− | alert("It's my structure");
| |
− | }
| |
− | });</syntaxhighlight>
| |
− |
| |
− | ==== Устаревший способ ====
| |
| | | |
| Для проверки структур используется функция ''getStructures()'' | | Для проверки структур используется функция ''getStructures()'' |
Строка 172: |
Строка 107: |
| }); | | }); |
| </syntaxhighlight> | | </syntaxhighlight> |
− | </div> <div class="mw-parser-output"><div class="mw-parser-output"> | + | </div> <div class="mw-parser-output"> |
| === Полный перечень методов и констант === | | === Полный перечень методов и констант === |
− | <div class="mw-parser-output"><div class="mw-parser-output">
| + | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> |
− | <div class="mw-parser-output">
| + | ==== Методы ==== |
− | ==== Structure ====
| |
− | | |
− | <span style="color:#f39c12;">Добавлен с версии 1.2</span>
| |
− | <div class="mw-parser-output"><div class="mw-parser-output">
| |
− | ===== Методы =====
| |
− | | |
− | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;"
| |
− | |-
| |
− | ! scope="col" | Версия
| |
− | ! scope="col" style="width: 115px;" | Метод
| |
− | ! scope="col" style="width: 248px;" | '''Аргументы'''
| |
− | ! scope="col" | '''Описание'''
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | style="width: 115px;" | init(string path)
| |
− | | style="width: 248px;" |
| |
− | *path - Путь к папке со структурами
| |
− | | |
− | | Устанавливает место хранения структур, относительно мода
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | style="width: 115px;" | get(string name)
| |
− | | style="width: 248px;" |
| |
− | *name - Имя структуры
| |
− | | |
− | | Возвращает экземпляр объекта Structure с именем ''name''
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | style="width: 115px;" | setInWorld(string name, int x, int y, int z, array rotate, bool progressively, int time)
| |
− | | style="width: 248px;" |
| |
− | *name - Имя структуры
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotate - Массив матриц поворотов
| |
− | *progressively - Если true, структура будет постепенно "строиться"
| |
− | *time - Время в миллисекундах между установкой блоков
| |
− | | |
− | | Установить структуру ''name'' в мире по координатам ''x,y,z'', с выбраным рандомно поворотм из массива ''rotate''
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | style="width: 115px;" | destroyInWorld(string name, int x, int y, int z, array rotates, bool progressively, int time)
| |
− | | style="width: 248px;" |
| |
− | *name - Имя структуры
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotates - Возможные повороты структуры
| |
− | *progressively - Если true, структура будет постепенно "строиться"
| |
− | *time - Время в миллисекундах между установкой блоков
| |
− | | |
− | | Установить структуру ''name'' в мире по координатам ''x,y,z'', с возможными поворотами ''rotates''
| |
− | |}
| |
− | <div class="mw-parser-output"> </div> </div>
| |
− | ===== Константы =====
| |
− | | |
− | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;"
| |
− | |-
| |
− | | style="text-align: center;" | '''Версия'''
| |
− | | style="text-align: center;" | '''Константа'''
| |
− | | style="text-align: center;" | '''Описание'''
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_NONE
| |
− | |
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_90Y
| |
− | | Матрица поворота по оси Y на 90<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_180Y
| |
− | | Матрица поворота по оси Y на 180<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_270Y
| |
− | | Матрица поворота по оси Y на 270<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_90X
| |
− | | Матрица поворота по оси X на 90<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_180X
| |
− | | Матрица поворота по оси X на 180<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_270X
| |
− | | Матрица поворота по оси X на 270<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_90Z
| |
− | | Матрица поворота по оси Z на 90<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_180Z
| |
− | | Матрица поворота по оси Z на 180<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_270Z
| |
− | | Матрица поворота по оси Z на 270<sup>о</sup>
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_RANDOM
| |
− | | Рандомный поворот
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_ALL
| |
− | | Поворот по всем осям
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | ROTATE_Y
| |
− | | Поворот по оси Y
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | PROGRESSIVELY
| |
− | | Установка/уничтожение постройки постепенное
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | NOT_PROGRESSIVELY
| |
− | | Установка/уничтожение постройки не постепенное
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | MIRROR_X
| |
− | | Отражение по оси X
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | MIRROR_Y
| |
− | | Отражение по оси Y
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | MIRROR_Z
| |
− | | Отражение по оси Z
| |
− | |}
| |
− | </div> <div class="mw-parser-output">
| |
− | ===== Экземпляр Structure =====
| |
− | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
| |
− | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;"
| |
− | |-
| |
− | | style="text-align: center;" | '''Версия'''
| |
− | | style="text-align: center;" | '''Метод'''
| |
− | | style="text-align: center;" | '''Аргументы'''
| |
− | | style="text-align: center;" | '''Описание'''
| |
− | |-
| |
− | | style="text-align: center;" | <span style="color:#e74c3c;">'''Только 1.2'''</span>
| |
− | | style="text-align: center;" | get(int x, int y, int z, bool rotate_y)
| |
− | |
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotate_y - Структура может быть повернута только по оси Y
| |
− | | |
− | | Вернет true, если на координатах данная структура, иначе false
| |
− | |-
| |
− | | colspan="1" rowspan="2" style="text-align: center;" | '''1.3'''
| |
− | | style="text-align: center;" | get(int x, int y, int z, array rotates, bool return_index)
| |
− | | colspan="1" rowspan="2" |
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotates - Возможные повороты структуры
| |
− | *return_index - Возвращать ли индекс найденного поворота(По стандарту false)
| |
− | | |
− | | colspan="1" rowspan="2" | Вернет true, если на координатах данная структура, иначе false
| |
− | |-
| |
− | | style="text-align: center;" | check(int x, int y, int z, array rotates, bool return_index)
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | style="text-align: center;" | getName()
| |
− | |
| |
− | | Вернет имя структуры
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | style="text-align: center;" | save()
| |
− | |
| |
− | | Сохранить структуру в файл
| |
− | |-
| |
− | | style="text-align: center;" | <span style="color:#e74c3c;">'''Только 1.2'''</span>
| |
− | | style="text-align: center;" | set(int x, int y, int z, array rotate, bool destroy, bool progressively, int time)
| |
− | |
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotate - Массив матриц поворотов
| |
− | *destroy - Если true, структура будет "уничтожаться"
| |
− | *progressively - Если true, структура будет постепенно "строиться/уничтожаться"
| |
− | *time - Время в миллисекундах между установкой/уничтожением блоков
| |
− | | |
− | | Установить структурув мире по координатам x,y,z, с выбраным рандомно поворотм из массива rotate
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | style="text-align: center;" | set(int x, int y, int z, array rotate, bool progressively, int time)
| |
− | |
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotate - Массив матриц поворотов
| |
− | *progressively - Если true, структура будет постепенно "строиться"
| |
− | *time - Время в миллисекундах между установкой блоков
| |
− | | |
− | | Установить структурув мире по координатам x,y,z, с выбраным рандомно поворотм из массива rotate
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | style="text-align: center;" | destroy(int x, int y, int z, array rotates, bool progressively, int time)
| |
− | |
| |
− | *x - Начальная координата структуры по оси X
| |
− | *y - Начальная координата структуры по оси Y
| |
− | *z - Начальная координата структуры по оси Z
| |
− | *rotates - Возможные повороты структуры
| |
− | *progressively - Если true, структура будет постепенно "уничтожаться"
| |
− | *time - Время в миллисекундах между уничтожением блоков
| |
− | | |
− | | Уничтожить структуру в мире по координатам x,y,z, с возможными поворотами rotates
| |
− | |-
| |
− | | style="text-align: center;" | '''1.2'''
| |
− | | style="text-align: center;" | addBlock(x, y, z, block)
| |
− | |
| |
− | *x - Координата структуры по оси X относительно нулевой координаты структуры
| |
− | *y - Координата структуры по оси Y относительно нулевой координаты структуры
| |
− | *z - Координата структуры по оси Z относительно нулевой координаты структуры
| |
− | *block - Блок
| |
− | **id - ID блока
| |
− | **data - Data блока
| |
− | | |
− | | Добавить блок в структуру
| |
− | |}
| |
− | </div> </div> </div> </div> </div> <div class="mw-parser-output"> </div> </div>
| |
− | | |
− | <div class="mw-parser-output">
| |
− | ==== Rotate ====
| |
− | | |
− | <span style="color:#f39c12;">Добавлен с версии 1.3</span>
| |
− | | |
− | Объект Rotate позволяет задовать сложные повороты, которые будут выполнятся при поиске/уничтожении/установке структуры.
| |
− | <syntaxhighlight lang="JavaScript">var rotate = new Rotate();
| |
− | rotate.addRotate(Structure.ROTATE_90Y);
| |
− | rotate.addRotate(Structure.ROTATE_90X);</syntaxhighlight>
| |
− | | |
− | Данный код позволит повернуть структуру сначала на 90 градусов по оси Y, затем по оси X.
| |
− | | |
− | ===== экземпляр Rotate =====
| |
− | | |
− | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;"
| |
− | |-
| |
− | ! scope="col" | Версия
| |
− | ! scope="col" | Метод
| |
− | ! scope="col" | Аргументы
| |
− | ! scope="col" | Описание
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | addRotate(array rotate)
| |
− | | colspan="1" rowspan="2" |
| |
− | *rotate - Матрица поворота или экземпляр Rotate
| |
− | | |
− | | colspan="1" rowspan="2" | Добавить поворот
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | add(array rotate)
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | addRotates(array rotates)
| |
− | | colspan="1" rowspan="2" |
| |
− | *rotates - Массив митриц и экземпляров Rotate
| |
− | | |
− | | colspan="1" rowspan="2" | Добавить повороты в указанном порядке
| |
− | |-
| |
− | | style="text-align: center;" | '''1.3'''
| |
− | | adds(array rotates)
| |
− | |}
| |
− | | |
− |
| |
− | </div>
| |
− | | |
− | ==== StructuresAPI ====
| |
− | | |
− | <span style="color:#c0392b;">'''''Считается устаревшим с версии 1.2<br/> Удален в версии 1.3'''''</span>
| |
− | | |
− | ===== Методы =====
| |
| | | |
| {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;" | | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;" |
Строка 524: |
Строка 181: |
| | style="width: 332px;" | Установить структуру name в мире по координатам x,y,z, с выбраным рандомно поворотм из массива rotate | | | style="width: 332px;" | Установить структуру name в мире по координатам x,y,z, с выбраным рандомно поворотм из массива rotate |
| |} | | |} |
− | | + | </div> </div> |
− | </div> | + | ==== Константы ==== |
− | | |
− | ===== Константы =====
| |
| | | |
| {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;" | | {| border="1" cellpadding="1" cellspacing="1" style="width: 100%;" |
Строка 573: |
Строка 228: |
| | style="width: 824px;" | Поворот по оси Y | | | style="width: 824px;" | Поворот по оси Y |
| |} | | |} |
− | | + | </div> </div> </div> </div> </div> </div> |
− | </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> | |
− | </div> | |