Редактирование:Модуль Entity

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 2: Строка 2:
 
Вся работа с мобами осуществляется через модуль Entity.
 
Вся работа с мобами осуществляется через модуль Entity.
  
<div class="mw-parser-output">
 
 
== Методы для работы с сущностями в Inner Core ==
 
== Методы для работы с сущностями в Inner Core ==
  
<div class="mw-parser-output">
 
 
=== Получение ===
 
=== Получение ===
  
Строка 12: Строка 10:
 
*Entity.isExist(mob) - проверяет, существует ли сущность mob  
 
*Entity.isExist(mob) - проверяет, существует ли сущность mob  
 
*Entity.getCustom(mob) - возвращает Updatable сущности mob, если она создана через MobRegistry.  
 
*Entity.getCustom(mob) - возвращает Updatable сущности mob, если она создана через MobRegistry.  
*Entity.findNearest(coords, type, maxRange) - возвращает ближайшую к координатам ''coords ''сущность. Если задан параметр&nbsp;''type'', то находит только сущностей с заданным типом. Если задан ''maxRange'', то поиск будет производится в радиусе&nbsp;''maxRange.''&nbsp;Возвращает объект, содержащий уникальный идентификатор моба и расстояние до него:&nbsp;{entity: entity, dis: distance}
+
*Entity.findNearest(x, y, z) - возвращает ближайшую к координатам x, y, z сущность
 
*Entity.getAllInRange(coords, maxRange, [type]) - возвращает JS-массив сущностей с типом type в сфере с центром coords и радиусом maxRange. Если тип сущности не указан, найдёт все сущности в указанном радиусе  
 
*Entity.getAllInRange(coords, maxRange, [type]) - возвращает JS-массив сущностей с типом type в сфере с центром coords и радиусом maxRange. Если тип сущности не указан, найдёт все сущности в указанном радиусе  
</div>
 
  
 
=== Создание и удаление ===
 
=== Создание и удаление ===
Строка 24: Строка 21:
 
*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, amplifier, effectTime, [ambience], [particles]) - накладывает на сущность entity эффект с id effectId на время&nbsp;effectTime.&nbsp;amplifier - сила эффекта,&nbsp;ambience - внешний вид частиц (''true''/''false'') и&nbsp;particles - отображать ли частицы (''true''/''false'')  
+
*Entity.addEffect(entity, effectId, effectTime, amplifier, [ambience], [particles]) - накладывает на сущность entity эффект с id effectId на время&nbsp;effectTime.&nbsp;amplifier - сила эффекта,&nbsp;ambience - внешний вид частиц (''true''/''false'') и&nbsp;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>
 
  
 
=== Здоровье моба ===
 
=== Здоровье моба ===
Строка 53: Строка 48:
 
*Entity.getRender(mob) - возвращает [[InnerCore/Список_ванильных_рендеров|id рендера]] сущности mob  
 
*Entity.getRender(mob) - возвращает [[InnerCore/Список_ванильных_рендеров|id рендера]] сущности mob  
 
*Entity.setRender(mob, render) - устанавливает сущности mob рендер&nbsp;с id&nbsp;render. [[InnerCore/Список_ванильных_рендеров|Список ванильных рендеров]]  
 
*Entity.setRender(mob, render) - устанавливает сущности mob рендер&nbsp;с id&nbsp;render. [[InnerCore/Список_ванильных_рендеров|Список ванильных рендеров]]  
<div class="mw-parser-output">
+
 
 
=== Работа с инвентарём ===
 
=== Работа с инвентарём ===
  
Строка 59: Строка 54:
 
*Entity.setArmorSlot(entity, slot, id, count, data) - устанавливает в указанный слот брони&nbsp;slot сущности&nbsp;entity предмет с id, data и с количеством&nbsp;count&nbsp;  
 
*Entity.setArmorSlot(entity, slot, id, count, data) - устанавливает в указанный слот брони&nbsp;slot сущности&nbsp;entity предмет с id, data и с количеством&nbsp;count&nbsp;  
 
*Entity.getCarriedItem(entity) - возвращает объект, содержащий информацию о предмете, который держит в руках сущность&nbsp;entity  
 
*Entity.getCarriedItem(entity) - возвращает объект, содержащий информацию о предмете, который держит в руках сущность&nbsp;entity  
*Entity.setCarriedItem(entity, id, count, data) -&nbsp;устанавливает в руку сущности&nbsp;entity предмет с id, data и с количеством&nbsp;count&nbsp;  
+
*Entity.getCarriedItem(entity, id, count, data) -&nbsp;устанавливает в руку сущности&nbsp;entity предмет с id, data и с количеством&nbsp;count&nbsp;  
 
*Entity.getDroppedItem(entity) - получает предмет, которую сущность&nbsp;entity&nbsp;дропнула  
 
*Entity.getDroppedItem(entity) - получает предмет, которую сущность&nbsp;entity&nbsp;дропнула  
 
*Entity.setDroppedItem(entity, id, count, data) - устанавливает&nbsp;предмет, которую сущность&nbsp;entity&nbsp;дропнула  
 
*Entity.setDroppedItem(entity, id, count, data) - устанавливает&nbsp;предмет, которую сущность&nbsp;entity&nbsp;дропнула  
</div>
+
 
 
=== Параметры моба ===
 
=== Параметры моба ===
  
Строка 71: Строка 66:
 
*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">
+
 
 
=== Поведение моба ===
 
=== Поведение моба ===
  
Строка 78: Строка 73:
 
*Entity.getSneaking(mob) - проверяет, сидит ли сущность mob.  
 
*Entity.getSneaking(mob) - проверяет, сидит ли сущность mob.  
 
*Entity.setSneaking(mob, sneak) - в зависимости от значения mobile (''true''/''false'')&nbsp;управляет, находится ли сущность mob в присяде.  
 
*Entity.setSneaking(mob, sneak) - в зависимости от значения mobile (''true''/''false'')&nbsp;управляет, находится ли сущность mob в присяде.  
*Entity.setFire(mob, tick, [force]) - заставляет сущность mob гореть в течении tick тиков. Последний параметр force следует всегда устанавливать в true
+
*Entity.setFire(mob, tick, [force]) - заставляет сущность mob гореть в течении tick тиков. Если установлен параметр force, горение не будет подвержено внежним факторам (?)
</div>
+
 
 
=== Положение и поворот моба ===
 
=== Положение и поворот моба ===
  
Строка 86: Строка 81:
 
*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) - устанавливает сущности углы обзора yaw и pitch.&nbsp;Углы выражаются в радианах  
+
*Entity.setLookAngle(mob, yaw, pitch) - устанавливает сущности углы обзора jaw и pitch.&nbsp;Углы выражаются в радианах  
 
*Entity.getLookVector(mob) - возвращает вектор взгляда сущности mob&nbsp;в формате {x: x, y: y, z: z}  
 
*Entity.getLookVector(mob) - возвращает вектор взгляда сущности mob&nbsp;в формате {x: x, y: y, z: z}  
 
*Entity.lookAt(entity, x, y, z) - устанавливает обзор сущности entity так, чтобы она смотрела на координаты&nbsp;x, y, z  
 
*Entity.lookAt(entity, x, y, z) - устанавливает обзор сущности entity так, чтобы она смотрела на координаты&nbsp;x, y, z  
 
*Entity.lookAtCoords(entity, coords) - то же, что и&nbsp;''Entity.lookAt'', но на вход принимает координаты в формате&nbsp;{x: x, y: y, z: z}  
 
*Entity.lookAtCoords(entity, coords) - то же, что и&nbsp;''Entity.lookAt'', но на вход принимает координаты в формате&nbsp;{x: x, y: y, z: z}  
<div class="mw-parser-output">
 
  
 
=== Движение моба ===
 
=== Движение моба ===
Строка 117: Строка 111:
  
 
<span style="display: none;">&nbsp;</span>
 
<span style="display: none;">&nbsp;</span>
</div>
+
 
<div class="mw-parser-output">
+
=== Вспомагательные методы ===
=== Вспомогательные методы ===
 
  
 
*Entity.getDistanceBetweenCoords(coords1, coords2) - возвращает расстояние между координатами в обьектах coords1 и coords2. Координаты задаются в формате&nbsp;{x: x, y: y, z: z}  
 
*Entity.getDistanceBetweenCoords(coords1, coords2) - возвращает расстояние между координатами в обьектах coords1 и coords2. Координаты задаются в формате&nbsp;{x: x, y: y, z: z}  
Строка 127: Строка 120:
 
*Entity.getLookVectorByAngle(angle) - возвращает вектор взгляда сущности в формате {x: x, y: y, z: z}, исходя из угла обзора angle, представленного в формате&nbsp;{pitch: pitch, yaw: yaw}  
 
*Entity.getLookVectorByAngle(angle) - возвращает вектор взгляда сущности в формате {x: x, y: y, z: z}, исходя из угла обзора angle, представленного в формате&nbsp;{pitch: pitch, yaw: yaw}  
 
*Entity.getLookAt(mob, x, y, z) - высчитывает угол обзора сущности, необходимый, чтобы она смотрела на координаты&nbsp;x, y, z. Возвращает объект формата&nbsp;{pitch: pitch, yaw: yaw}  
 
*Entity.getLookAt(mob, x, y, z) - высчитывает угол обзора сущности, необходимый, чтобы она смотрела на координаты&nbsp;x, y, z. Возвращает объект формата&nbsp;{pitch: pitch, yaw: yaw}  
 
</div> </div>
 
</div>
 
  
 
== Легаси-функции, не реализованные в Inner Core ==
 
== Легаси-функции, не реализованные в Inner Core ==

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии GNU Free Documentation License 1.3 или более поздняя (см. Mineprogramming wiki:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!