Admin (обсуждение | вклад) м |
(сузности на сущности) |
||
(не показаны 4 промежуточные версии 4 участников) | |||
Строка 2: | Строка 2: | ||
Вся работа с мобами осуществляется через модуль Entity. | Вся работа с мобами осуществляется через модуль Entity. | ||
+ | <div class="mw-parser-output"> | ||
== Методы для работы с сущностями в Inner Core == | == Методы для работы с сущностями в Inner Core == | ||
+ | <div class="mw-parser-output"> | ||
=== Получение === | === Получение === | ||
Строка 10: | Строка 12: | ||
*Entity.isExist(mob) - проверяет, существует ли сущность mob | *Entity.isExist(mob) - проверяет, существует ли сущность mob | ||
*Entity.getCustom(mob) - возвращает Updatable сущности mob, если она создана через MobRegistry. | *Entity.getCustom(mob) - возвращает Updatable сущности mob, если она создана через MobRegistry. | ||
− | *Entity.findNearest( | + | *Entity.findNearest(coords, type, maxRange) - возвращает ближайшую к координатам ''coords ''сущность. Если задан параметр ''type'', то находит только сущностей с заданным типом. Если задан ''maxRange'', то поиск будет производится в радиусе ''maxRange.'' Возвращает объект, содержащий уникальный идентификатор моба и расстояние до него: {entity: entity, dis: distance} |
*Entity.getAllInRange(coords, maxRange, [type]) - возвращает JS-массив сущностей с типом type в сфере с центром coords и радиусом maxRange. Если тип сущности не указан, найдёт все сущности в указанном радиусе | *Entity.getAllInRange(coords, maxRange, [type]) - возвращает JS-массив сущностей с типом type в сфере с центром coords и радиусом maxRange. Если тип сущности не указан, найдёт все сущности в указанном радиусе | ||
+ | </div> | ||
=== Создание и удаление === | === Создание и удаление === | ||
Строка 21: | Строка 24: | ||
*Entity.remove(mob) - удаляет сущность mob из мира. | *Entity.remove(mob) - удаляет сущность mob из мира. | ||
+ | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | ||
=== Работа с эффектами === | === Работа с эффектами === | ||
− | *Entity.addEffect(entity, effectId, effectTime | + | *Entity.addEffect(entity, effectId, amplifier, effectTime, [ambience], [particles]) - накладывает на сущность entity эффект с id effectId на время effectTime. amplifier - сила эффекта, ambience - внешний вид частиц (''true''/''false'') и particles - отображать ли частицы (''true''/''false'') |
*Entity.clearEffect(entity, effectId) - удаляет у сущности mob эффект id. | *Entity.clearEffect(entity, effectId) - удаляет у сущности mob эффект id. | ||
*Entity.clearEffects(entity) - удаляет у сущности mob все эффекты. | *Entity.clearEffects(entity) - удаляет у сущности mob все эффекты. | ||
+ | </div> </div> </div> </div> | ||
=== Здоровье моба === | === Здоровье моба === | ||
Строка 48: | Строка 53: | ||
*Entity.getRender(mob) - возвращает [[InnerCore/Список_ванильных_рендеров|id рендера]] сущности mob | *Entity.getRender(mob) - возвращает [[InnerCore/Список_ванильных_рендеров|id рендера]] сущности mob | ||
*Entity.setRender(mob, render) - устанавливает сущности mob рендер с id render. [[InnerCore/Список_ванильных_рендеров|Список ванильных рендеров]] | *Entity.setRender(mob, render) - устанавливает сущности mob рендер с id render. [[InnerCore/Список_ванильных_рендеров|Список ванильных рендеров]] | ||
− | |||
<div class="mw-parser-output"> | <div class="mw-parser-output"> | ||
=== Работа с инвентарём === | === Работа с инвентарём === | ||
Строка 58: | Строка 62: | ||
*Entity.getDroppedItem(entity) - получает предмет, которую сущность entity дропнула | *Entity.getDroppedItem(entity) - получает предмет, которую сущность entity дропнула | ||
*Entity.setDroppedItem(entity, id, count, data) - устанавливает предмет, которую сущность entity дропнула | *Entity.setDroppedItem(entity, id, count, data) - устанавливает предмет, которую сущность entity дропнула | ||
− | </div> | + | </div> |
− | |||
=== Параметры моба === | === Параметры моба === | ||
Строка 68: | Строка 71: | ||
*Entity.setNameTag(mob, name) - устанавливает сущности mob имя name. | *Entity.setNameTag(mob, name) - устанавливает сущности mob имя name. | ||
*Entity.getProjectileItem(mob) - проверяет, является ли сущность mob снарядом, если это так, возвращает ее данные как предмета. | *Entity.getProjectileItem(mob) - проверяет, является ли сущность mob снарядом, если это так, возвращает ее данные как предмета. | ||
− | + | <div class="mw-parser-output"><div class="mw-parser-output"> | |
− | <div class="mw-parser-output"> | ||
− | <div class="mw-parser-output"> | ||
=== Поведение моба === | === Поведение моба === | ||
Строка 78: | Строка 79: | ||
*Entity.setSneaking(mob, sneak) - в зависимости от значения mobile (''true''/''false'') управляет, находится ли сущность mob в присяде. | *Entity.setSneaking(mob, sneak) - в зависимости от значения mobile (''true''/''false'') управляет, находится ли сущность mob в присяде. | ||
*Entity.setFire(mob, tick, [force]) - заставляет сущность mob гореть в течении tick тиков. Последний параметр force следует всегда устанавливать в true | *Entity.setFire(mob, tick, [force]) - заставляет сущность mob гореть в течении tick тиков. Последний параметр force следует всегда устанавливать в true | ||
− | </div> | + | </div> |
− | |||
=== Положение и поворот моба === | === Положение и поворот моба === | ||
Строка 86: | Строка 86: | ||
*Entity.addPosition(mob, x, y, z) - относительно перемещает сущность mob на координаты x, y, z. | *Entity.addPosition(mob, x, y, z) - относительно перемещает сущность mob на координаты x, y, z. | ||
*Entity.getLookAngle(mob) - возвращает угол обзора сущности mob в виде объекта {pitch: pitch, yaw: yaw}. Углы выражаются в радианах | *Entity.getLookAngle(mob) - возвращает угол обзора сущности mob в виде объекта {pitch: pitch, yaw: yaw}. Углы выражаются в радианах | ||
− | *Entity.setLookAngle(mob, yaw, pitch) - устанавливает сущности углы обзора | + | *Entity.setLookAngle(mob, yaw, pitch) - устанавливает сущности углы обзора yaw и pitch. Углы выражаются в радианах |
*Entity.getLookVector(mob) - возвращает вектор взгляда сущности mob в формате {x: x, y: y, z: z} | *Entity.getLookVector(mob) - возвращает вектор взгляда сущности mob в формате {x: x, y: y, z: z} | ||
*Entity.lookAt(entity, x, y, z) - устанавливает обзор сущности entity так, чтобы она смотрела на координаты x, y, z | *Entity.lookAt(entity, x, y, z) - устанавливает обзор сущности entity так, чтобы она смотрела на координаты x, y, z | ||
*Entity.lookAtCoords(entity, coords) - то же, что и ''Entity.lookAt'', но на вход принимает координаты в формате {x: x, y: y, z: z} | *Entity.lookAtCoords(entity, coords) - то же, что и ''Entity.lookAt'', но на вход принимает координаты в формате {x: x, y: y, z: z} | ||
+ | <div class="mw-parser-output"> | ||
− | |||
=== Движение моба === | === Движение моба === | ||
Строка 98: | Строка 98: | ||
*Entity.addVelocity(mob, velx, vely, velz) - добавляет трехмерное ускорение velx, vely, velz сущности mob | *Entity.addVelocity(mob, velx, vely, velz) - добавляет трехмерное ускорение velx, vely, velz сущности mob | ||
*Entity.moveToTarget(entity, target, params) - передвигает сущность entity к координатам target. Параметр params - объект следующего формата (поданы значения по умолчанию) | *Entity.moveToTarget(entity, target, params) - передвигает сущность entity к координатам target. Параметр params - объект следующего формата (поданы значения по умолчанию) | ||
+ | |||
+ | | ||
<syntaxhighlight lang="Javascript">{ | <syntaxhighlight lang="Javascript">{ | ||
speed: 0, // Скорость движения | speed: 0, // Скорость движения | ||
Строка 115: | Строка 117: | ||
<span style="display: none;"> </span> | <span style="display: none;"> </span> | ||
− | </div> | + | </div> |
− | + | <div class="mw-parser-output"> | |
− | === | + | === Вспомогательные методы === |
*Entity.getDistanceBetweenCoords(coords1, coords2) - возвращает расстояние между координатами в обьектах coords1 и coords2. Координаты задаются в формате {x: x, y: y, z: z} | *Entity.getDistanceBetweenCoords(coords1, coords2) - возвращает расстояние между координатами в обьектах coords1 и coords2. Координаты задаются в формате {x: x, y: y, z: z} | ||
Строка 125: | Строка 127: | ||
*Entity.getLookVectorByAngle(angle) - возвращает вектор взгляда сущности в формате {x: x, y: y, z: z}, исходя из угла обзора angle, представленного в формате {pitch: pitch, yaw: yaw} | *Entity.getLookVectorByAngle(angle) - возвращает вектор взгляда сущности в формате {x: x, y: y, z: z}, исходя из угла обзора angle, представленного в формате {pitch: pitch, yaw: yaw} | ||
*Entity.getLookAt(mob, x, y, z) - высчитывает угол обзора сущности, необходимый, чтобы она смотрела на координаты x, y, z. Возвращает объект формата {pitch: pitch, yaw: yaw} | *Entity.getLookAt(mob, x, y, z) - высчитывает угол обзора сущности, необходимый, чтобы она смотрела на координаты x, y, z. Возвращает объект формата {pitch: pitch, yaw: yaw} | ||
+ | |||
+ | </div> </div> | ||
+ | </div> | ||
== Легаси-функции, не реализованные в Inner Core == | == Легаси-функции, не реализованные в Inner Core == |
Вся работа с мобами осуществляется через модуль Entity.
{
speed: 0, // Скорость движения
denyY: false, // Запрещено ли изменение скорости по оси Y
jumpVel: 0 // Задаёт скорость по оси Y
}