Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">Модуль GenerationUtils предоставляет удобные инструменты, используемые для генерации. </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">Модуль GenerationUtils предоставляет удобные инструменты, используемые для генерации. </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | ||
− | |||
− | |||
== Методы модуля GenerationUtils == | == Методы модуля GenerationUtils == | ||
Строка 8: | Строка 6: | ||
*canSeeSky(x, y, z) - возвращает true, если на данное место падает солнечный свет (в том числе, через прозрачные блоки). | *canSeeSky(x, y, z) - возвращает true, если на данное место падает солнечный свет (в том числе, через прозрачные блоки). | ||
*randomXZ(cx, cz) - возвращает случайные целые координаты x и z в приделах чанка с координатами cx и cz. | *randomXZ(cx, cz) - возвращает случайные целые координаты x и z в приделах чанка с координатами cx и cz. | ||
− | *randomCoords(cx, cy, lowest, highest) - возвращает случайные координаты x, y, z в приделах чанка с координатами cx и cz на высоте от lowest до highest. Параметры lowest и highest имеют значения по умолчанию 0 и 128 соответственно. Пример использования (для ''randomXZ'' то же самое, но без | + | *randomCoords(cx, cy, lowest, highest) - возвращает случайные координаты x, y, z в приделах чанка с координатами cx и cz на высоте от lowest до highest. Параметры lowest и highest имеют значения по умолчанию 0 и 128 соответственно. Пример использования (для ''randomXZ'' то же самое, но без''y''): <syntaxhighlight lang="Javascript">let coords = randomCoords(cx, cy, 64); // Random coordinates between 64 and 128 |
let x = coords.x; | let x = coords.x; | ||
let y = coords.y; | let y = coords.y; | ||
Строка 14: | Строка 12: | ||
− | *findSurface(x, y, z) - возвращает самый высокий блок с координатами x, z, находящийся под уровнем y. | + | *findSurface(x, y, z) - возвращает самый высокий блок с координатами x, z, находящийся под уровнем y. На данный момент метод не работает, и для его замены можно использовать следующий код: <syntaxhighlight lang="Javascript">GenerationUtils.findSurface = function(x, y, z){ |
− | *findHighSurface(x, z) - возвращает самый высокий блок в приделах от 128 до 0 (на поверхности). | + | while(y > 0 && World.getBlockID(x, y, z) == 0) y--; |
− | *findLowSurface(x, z) - возвращает самый высокий блок в приделах от 64 до 0 (под землёй). | + | return {x: x, y: y, z: z}; |
+ | }</syntaxhighlight> | ||
+ | |||
+ | |||
+ | Следует отметить, что изменять методы InnerCore без крайней необходимости не следует, и предыдущий пример тому доказательство. Если хотя бы в одном моде будет данный код, во всех остальных он будет доступен и будет работать. '''Внимание!''' Если у вас работает данная функция, обязательно добавьте в мод заменяющий код, поскольку нельзя гарантировать, что у конечного пользователя будет тот же набор модов, что и у вас. | ||
+ | |||
+ | *findHighSurface(x, z) - возвращает самый высокий блок в приделах от 128 до 0 (на поверхности). Для того, чтобы код работал, необходимо реализовать findSurface (см. выше). | ||
+ | *findLowSurface(x, z) - возвращает самый высокий блок в приделах от 64 до 0 (под землёй). Для того, чтобы код работал, необходимо реализовать findSurface (см. выше). | ||
*generateOre(x, y, z, id, data, amount, noStoneCheck) - генерирует руду с id, data на координатах x, y, z, в количестве amount. Если noStoneCheck установлен в true, руда может появиться не смотря на отсутствие камня в данном месте. Может быть использовано для отладки. По умолчанию ''data ''= 0, ''amount ''= 1, ''noStoneCheck ''= false. | *generateOre(x, y, z, id, data, amount, noStoneCheck) - генерирует руду с id, data на координатах x, y, z, в количестве amount. Если noStoneCheck установлен в true, руда может появиться не смотря на отсутствие камня в данном месте. Может быть использовано для отладки. По умолчанию ''data ''= 0, ''amount ''= 1, ''noStoneCheck ''= false. | ||
− | </div> </div> </div> </div> </div> | + | </div> </div> </div> </div> </div> </div> |
− | |||
− | </div> |