RU/createMarker
Эта функция создает маркер. Маркер - это 3D-модель в игровом мире, которая может обозначить какую-либо точку или область, и часто используется, чтобы давать игрокам указания, где именно можно выполнять определенные действия, например, заходить в здание.
Есть ограничения на максимальное число одновременно видимых маркеров, а именно:
- Короны: 32
- Чекпоинты, кольца, цилиндры и стрелки все в сумме: 32
Создавать можно практически неограниченное число маркеров (при условии, что хватает памяти и ограничения по числу элементов), однако игрок сможет увидеть только ближайшие из них, и не более указанных ограничений.
Синтаксис
marker createMarker ( float x, float y, float z, [string theType, float size, int r, int g, int b, int a, visibleTo = getRootElement()] )
Обязательные аргументы
- x: Вещественное число - координата X на карте.
- y: Вещественное число - координата Y на карте.
- z: Вещественное число - координата Z на карте.
Дополнительные аргументы
Примечание. При использовании необязательных аргументов Вам может потребоваться предоставить все аргументы перед тем аргументом, который Вы хотите использовать. Для более подробной информации ознакомьтесь с необязательными аргументами.
- theType: Внешний вид маркера. Доступны следующие типы:
- "checkpoint": Чекпоинт для гонок. Выглядит, как высокая, но не бесконечная светящаяся колонна. Чекпоинты привязываются к земле и становятся невидимыми после того, как над ними проедут на определенной высоте (по координате Z).
- "ring": Кольцо в форме бублика, обычно используется для самолетов и вертолетов.
- "cylinder": Небольшое светящееся кольцо. Они используются в одиночной игре для того, чтобы начать миссию.
- "arrow": Стрелка, указывающая на землю. Такие же стрелки есть в одиночной игре на входе в те здания, в которые игрок может зайти, однако в MTA они по умолчанию не анимированы.
- "corona": Светящийся шар.
- size: Диаметр маркера в метрах.
- r: Целое число - количество красного компонента в цвете маркера (0 - 255).
- g: Целое число - количество красного компонента в цвете маркера (0 - 255).
- b: Целое число - количество красного компонента в цвете маркера (0 - 255).
- a: Целое число - прозрачность маркера (0 - 255 где 0 - полностью прозрачный, а 255 - полностью непрозрачный).
- visibleTo: Только этот элемент и его потомки смогут увидеть маркер. См.visibility.
marker createMarker ( float x, float y, float z, [string theType, float size, int r, int g, int b, int a] )
Обязательные аргументы
- x: Вещественное число - координата X на карте.
- y: Вещественное число - координата Y на карте.
- z: Вещественное число - координата Z на карте.
Дополнительные аргументы
Примечание. При использовании необязательных аргументов Вам может потребоваться предоставить все аргументы перед тем аргументом, который Вы хотите использовать. Для более подробной информации ознакомьтесь с необязательными аргументами.
- theType: Внешний вид маркера. Доступны следующие типы:
- "checkpoint": Чекпоинт для гонок. Выглядит, как высокая, но не бесконечная светящаяся колонна. Чекпоинты привязываются к земле и становятся невидимыми после того, как над ними проедут на определенной высоте (по координате Z).
- "ring": Кольцо в форме бублика, обычно используется для самолетов и вертолетов.
- "cylinder": Небольшое светящееся кольцо. Они используются в одиночной игре для того, чтобы начать миссию.
- "arrow": Стрелка, указывающая на землю. Такие же стрелки есть в одиночной игре на входе в те здания, в которые игрок может зайти, однако в MTA они по умолчанию не анимированы.
- "corona": Светящийся шар.
- size: Диаметр маркера в метрах.
- r: Целое число - количество красного компонента в цвете маркера (0 - 255).
- g: Целое число - количество красного компонента в цвете маркера (0 - 255).
- b: Целое число - количество красного компонента в цвете маркера (0 - 255).
- a: Целое число - прозрачность маркера (0 - 255 где 0 - полностью прозрачный, а 255 - полностью непрозрачный).
Вывод
Возвращает созданный маркер , или false если были переданы некорректные аргументы.
Пример
Создает рядом с игроком маркер, когда он вводит команду 'createmarker':
-- эта функция вызывается при вводе 'createmarker': function consoleCreateMarker ( thePlayer, commandName ) if ( thePlayer ) then local x, y, z = getElementPosition ( thePlayer ) -- get the player's position -- создаем цилиндрический маркер рядом с игроком local theMarker = createMarker ( x + 2, y + 2, z, "cylinder", 1.5, 255, 255, 0, 170 ) if ( theMarker ) then -- проверяем, что успешно создали маркер outputConsole ( "Marker created successfully", thePlayer ) else outputConsole ( "Failed to create marker", thePlayer ) end end end addCommandHandler ( "createmarker", consoleCreateMarker )
Создает маркер в точке 0, 0, 20:
createMarker ( 0, 0, 20 )