RU/Resource:Interiors: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Blanked the page)
m (Reverted edits by Bonzo (talk) to last revision by Vincent)
 
Line 1: Line 1:
__NOTOC__
{{RU/Resource page}}
Ресурс interiors предоставляет общую ситему для использования интерьеров из одиночной игры, которая включена в поставку сервера MTASA, начиная с версии 1.0. Буквально это подразумевает расставление точек перехода в соответствующий интерьер, для активации которых требуется попадание игрока в маркер.


=Подгрузка интерьеров из ресурса=
По умолчанию в ресурс interiors включено свыше 200 собственных интерьерных локаций из одиночной игры.  Вкупе с [[dimension|измерениями]], все вцелом и каждая в отдельности из точек перехода являются уникальными локациями - вцелом более 450 мест.
Подгрузить их легко.  Старт ресурса ''interiors'' автоматически загрузит все предустановленные точки перехода и сразу будет готов к использованию.
=Добавление своих интерьеров=
Ресурс interiors поддерживает гибкую систему элементов .map для добавления ваших собственных интерьеров. В синтаксисе указываются ''entry'' (вход) и ''return'' (выход).  Элемент ''interiorEntry'' обязан иметь уникальный id, а элемент ''interiorReturn'' использует атрибут "refid" для связи с ним.
<syntaxhighlight lang="xml">
<interiorEntry id=""  posX=""  posY=""  posZ=""  rotation=""  dimension=""  interior="" oneway=""  />
<interiorReturn refid=""  posX=""  posY=""  posZ=""  rotation=""  dimension=""  interior=""  />
</syntaxhighlight>
==Требуемые аргументы==
* '''posX''': Число с плавающей точкой, отвечающее за позицию по оси X точки входа в интерьер.
* '''posY''': Число с плавающей точкой, отвечающее за позицию по оси Y точки входа в интерьер.
* '''posZ''': Число с плавающей точкой, отвечающее за позицию по оси Z точки входа в интерьер.
* '''rotation''': Число с плавающей точкой, отвечающее за угол вращения игрока, когда он '''достиг''' маркера указанного элемента.
* '''dimension''': Целое число, отвечающее за измерение игрока, когда он '''достиг''' точки перехода указанного элемента.  Другими словами, в каком измерении расположена точка перехода.
* '''interior''': Целое число, отвечающее за интерьерный мир игрока, когда он '''достиг''' точки перехода указанного элемента. Другими словами, в каком интерьере расположена точка перехода.
==Опциональные аргументы==
* '''oneway''': Если значение установлено на ''true'',  маркер interiorReturn не будет создан, и точка перехода будет работать лишь в одну сторону - из interiorEntry к interiorReturn без обратного пути.
==Образец==
<syntaxhighlight lang="xml">
<interiorEntry id="AMMUN1" posX="1368.35" posY="-1279.06" posZ="12.55" rotation="-0.100006" dimension="0" interior="0" />
<interiorReturn refid="AMMUN1" posX="286.15" posY="-41.54" posZ="1000.57" rotation="90" interior="1" dimension="0" />
</syntaxhighlight>
Элемент interiorEntry расположен в координатах 1368.35,-1279.06,12.55. Когда игрок попадает в данные координаты, его переносит в координаты, указанные в элементе interiorReturn - 286.15,-41.54,1000.57 со вращением 90 градусов, в новый интерьерный мир 1. Когда игрок снова встанет на маркер, все произойдет наоборот.
=Взаимодействие вашего скрипта с ресурсом interiors=
Ресурс interiors предоставляет несколько событий и функций с целью обеспечить его настраиваемость.
==Экспортируемые функции==
Пожалуйста, не забывайте, что обязательно нужно использовать [[call]] с функциями других ресурсов.
----
===getInteriorName===
Эта функция извлекает the общее имя интерьера. Это значит, что оно либо id, либо общий refid.
====Синтаксис====
<syntaxhighlight lang="lua">
string getInteriorName ( element interiorEntry/InteriorReturn )
</syntaxhighlight>
====Требуемые артументы====
*'''interior:''' Интерьер, имя которого вы хотите получить.  Это могут быть ''interiorEntry'' или ''interiorReturn''.
====Возвращает====
Возвращает string с именем интерьера или false, если таковое не может быть получено.
----
===getInteriorMarker===
Эта функция извлекает элемент [[marker]], связанный с интерьером. Это позволит вам регулировать видимость маркеров интерьеров через использование функции [[setElementVisibleTo]].
====Синтаксис====
<syntaxhighlight lang="lua">
marker getInteriorMarker ( element interiorEntry/InteriorReturn )
</syntaxhighlight>
====Требуемые аргументы====
*'''interior:''' Интерьер, маркер связанного с которым вы хотите заполучить. Это могут быть ''interiorEntry'' или ''interiorReturn''.
====Возвращает====
Возвращает элемент маркера, связанный с указанным интерьером или false, если таковой не может быть получен.
==События==
===onInteriorHit===
Это событие срабатывает, когда срабатывает точка перехода, перед тем, как игрок перемещается к пункту своего назначения.
====Параметры====
<syntaxhighlight lang="lua">
player hitPlayer
</syntaxhighlight>
*'''hitPlayer''': Игрок, от которого сработала точка перехода.
====Source====
[[event system#Event source|Source]] этого события - элемент интерьера, который сработал.
====Эффект отмены====
Если событие [[Event system#Canceling|отменено]], игрок не будет перемещен к пункту своего назначения.
----
===onInteriorWarped===
Это событие срабатывает, когда цель-интерьер была успешно достигнута.
====Параметры====
<syntaxhighlight lang="lua">
player warpedPlayer
</syntaxhighlight>
*'''warpedPlayer''': Игрок, переместившийся к пункту своего назначения.
====Source====
[[event system#Event source|Source]] этого события - элемент интерьера, '''к''' которому переместились.
----
===onPlayerInteriorHit===
Это событие срабатывает, когда игрок достигает точки перехода интерьера, перед тем, как он достиг пункта своего назначения
====Параметры====
<syntaxhighlight lang="lua">
element hitInterior
</syntaxhighlight>
*'''hitInterior''': Элемент интерьера, который был достигнут.
====Source====
[[event system#Event source|Source]] этого события - игрок, который достиг элемента интерьера.
====Эффект отмены====
Если событие [[Event system#Canceling|отменено]], игрок не будет перемещен к пункту своего назначения.
----
===onPlayerInteriorWarped===
Это событие срабатывает, когда цель-интерьер была успешно достигнута.
====Параметры====
<syntaxhighlight lang="lua">
element warpedInterior
</syntaxhighlight>
*'''warpedInterior''': Интерьер, '''в''' который переместились.
====Source====
[[event system#Event source|Source]] этого события - игрок, переместившийся к пункту своего назначения.
----
===Примеры===
'''Скоро будут'''
[[en:Resource:Interiors]]

Latest revision as of 03:05, 1 April 2016

Ресурс interiors предоставляет общую ситему для использования интерьеров из одиночной игры, которая включена в поставку сервера MTASA, начиная с версии 1.0. Буквально это подразумевает расставление точек перехода в соответствующий интерьер, для активации которых требуется попадание игрока в маркер.

Подгрузка интерьеров из ресурса

По умолчанию в ресурс interiors включено свыше 200 собственных интерьерных локаций из одиночной игры. Вкупе с измерениями, все вцелом и каждая в отдельности из точек перехода являются уникальными локациями - вцелом более 450 мест.

Подгрузить их легко. Старт ресурса interiors автоматически загрузит все предустановленные точки перехода и сразу будет готов к использованию.

Добавление своих интерьеров

Ресурс interiors поддерживает гибкую систему элементов .map для добавления ваших собственных интерьеров. В синтаксисе указываются entry (вход) и return (выход). Элемент interiorEntry обязан иметь уникальный id, а элемент interiorReturn использует атрибут "refid" для связи с ним.

<interiorEntry	id=""  posX=""  posY=""  posZ=""  rotation=""  dimension=""  interior="" oneway=""  />
<interiorReturn	 refid=""  posX=""  posY=""  posZ=""  rotation=""  dimension=""  interior=""  />

Требуемые аргументы

  • posX: Число с плавающей точкой, отвечающее за позицию по оси X точки входа в интерьер.
  • posY: Число с плавающей точкой, отвечающее за позицию по оси Y точки входа в интерьер.
  • posZ: Число с плавающей точкой, отвечающее за позицию по оси Z точки входа в интерьер.
  • rotation: Число с плавающей точкой, отвечающее за угол вращения игрока, когда он достиг маркера указанного элемента.
  • dimension: Целое число, отвечающее за измерение игрока, когда он достиг точки перехода указанного элемента. Другими словами, в каком измерении расположена точка перехода.
  • interior: Целое число, отвечающее за интерьерный мир игрока, когда он достиг точки перехода указанного элемента. Другими словами, в каком интерьере расположена точка перехода.

Опциональные аргументы

  • oneway: Если значение установлено на true, маркер interiorReturn не будет создан, и точка перехода будет работать лишь в одну сторону - из interiorEntry к interiorReturn без обратного пути.

Образец

<interiorEntry	id="AMMUN1"	posX="1368.35"	posY="-1279.06"	posZ="12.55"	rotation="-0.100006"	dimension="0"	interior="0"	/>
<interiorReturn	refid="AMMUN1"	posX="286.15"	posY="-41.54"	posZ="1000.57"	rotation="90"	interior="1"	dimension="0"	/>

Элемент interiorEntry расположен в координатах 1368.35,-1279.06,12.55. Когда игрок попадает в данные координаты, его переносит в координаты, указанные в элементе interiorReturn - 286.15,-41.54,1000.57 со вращением 90 градусов, в новый интерьерный мир 1. Когда игрок снова встанет на маркер, все произойдет наоборот.

Взаимодействие вашего скрипта с ресурсом interiors

Ресурс interiors предоставляет несколько событий и функций с целью обеспечить его настраиваемость.

Экспортируемые функции

Пожалуйста, не забывайте, что обязательно нужно использовать call с функциями других ресурсов.


getInteriorName

Эта функция извлекает the общее имя интерьера. Это значит, что оно либо id, либо общий refid.

Синтаксис

string getInteriorName ( element interiorEntry/InteriorReturn )

Требуемые артументы

  • interior: Интерьер, имя которого вы хотите получить. Это могут быть interiorEntry или interiorReturn.

Возвращает

Возвращает string с именем интерьера или false, если таковое не может быть получено.



getInteriorMarker

Эта функция извлекает элемент marker, связанный с интерьером. Это позволит вам регулировать видимость маркеров интерьеров через использование функции setElementVisibleTo.

Синтаксис

marker getInteriorMarker ( element interiorEntry/InteriorReturn )

Требуемые аргументы

  • interior: Интерьер, маркер связанного с которым вы хотите заполучить. Это могут быть interiorEntry или interiorReturn.

Возвращает

Возвращает элемент маркера, связанный с указанным интерьером или false, если таковой не может быть получен.

События

onInteriorHit

Это событие срабатывает, когда срабатывает точка перехода, перед тем, как игрок перемещается к пункту своего назначения.

Параметры

player hitPlayer
  • hitPlayer: Игрок, от которого сработала точка перехода.

Source

Source этого события - элемент интерьера, который сработал.

Эффект отмены

Если событие отменено, игрок не будет перемещен к пункту своего назначения.



onInteriorWarped

Это событие срабатывает, когда цель-интерьер была успешно достигнута.

Параметры

player warpedPlayer
  • warpedPlayer: Игрок, переместившийся к пункту своего назначения.

Source

Source этого события - элемент интерьера, к которому переместились.



onPlayerInteriorHit

Это событие срабатывает, когда игрок достигает точки перехода интерьера, перед тем, как он достиг пункта своего назначения

Параметры

element hitInterior
  • hitInterior: Элемент интерьера, который был достигнут.

Source

Source этого события - игрок, который достиг элемента интерьера.

Эффект отмены

Если событие отменено, игрок не будет перемещен к пункту своего назначения.



onPlayerInteriorWarped

Это событие срабатывает, когда цель-интерьер была успешно достигнута.

Параметры

element warpedInterior
  • warpedInterior: Интерьер, в который переместились.

Source

Source этого события - игрок, переместившийся к пункту своего назначения.



Примеры

Скоро будут