<interiorEntry id="" posX="" posY="" posZ="" rotation="" dimension="" interior="" oneway="" />
<interiorReturn refid="" posX="" posY="" posZ="" rotation="" dimension="" interior="" />
<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" / >
<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, если таковое не может быть получен.
Установить открытый гараж Эта функция открывает или закрывает двери гаража указанной в точке города.
Синтаксис
bool setGarageOpen ( int garageID, bool open )
В этом примере открывается дверь гаража, когда игрок входит в столкновении форме рядом с ним, и закрывает его, когда они уходят:
GARAGE_ID = 25
-- create a collision shape and attach event handlers to it when the resource starts
addEventHandler("onResourceStart", getResourceRootElement(getThisResource()),
function (resource)
local garageCube = createColCuboid(1337, 194, 28, 6, 10, 4)
addEventHandler("onColShapeHit", garageCube, onGarageCubeHit)
addEventHandler("onColShapeLeave", garageCube, onGarageCubeLeave)
end)
-- open the door when someone enters the garage's collision shape
function onGarageCubeHit(hitElement, matchingDimension)
if (getElementType(hitElement) == "player") then
-- check to make sure the door is closed
if (not isGarageOpen(GARAGE_ID)) then
-- open the door
setGarageOpen(GARAGE_ID, true)
end
end
end
-- close the door when someone leaves the garage's collision shape
function onGarageCubeLeave(leaveElement, matchingDimension)
if (getElementType(leaveElement) == "player") then
-- check to make sure the door is open
if (isGarageOpen(GARAGE_ID)) then
-- close the door
setGarageOpen(GARAGE_ID, false)
end
end
end