-
Дерево элементов MTA.
Доброго времени суток. Сегодня я хотел бы поговорить о дереве элементов MTA. Приятного чтения и хорошего дня.
Давайте взглянем на картинку:
http://rghost.ru/57794116/image.png
Как мы видем на этой картинке представлено дерево элементов.
Как вы можете увидеть, родительский элемент - root ( getRootElement() )
То есть всё древо исходит от него - это все объекты, ресурсы, автомобили, игроки на сервере.
Давайте начём освоение и переваривание примеров:
Код:
setElementModel(source, 19)
1.1. source - игрок [тут должен быть указан элемент]
1.2. 19 - ID модели [тут должна быть указана модель]
Этой функцией мы установим игроку source (т.е исполняемому) скин на 19.
Теперь сменим модель автомобилю:
Код:
local veh = createVehicle(411, 0.0, 0.0, 0.0)
setElementModel(veh, 522)
Таким образом мы меняем Infernus на NRG.
Поскольку первый аргумент в функции - the Element, то можно менять модель любому элементу, в том числе и объектам.
Это был легкий пример, теперь приведём более сложный.
Код:
n_el = createElement ( "need" ) -- Создадим элемент "need"
local veh = createVehicle ( 411, 0.0, 0.0, 0.0)
setElementParent(veh, n_el) -- Присвоим созданному автомобилю элемент "need"
guiCreateButton ( 0.0, 0.0, 0.0, 0.0, "Test", false, n_el ) -- Создадим кнопку и присвоим ей элемент n_el ("need")
И в нужном месте вставим:
Код:
destroyElement ( n_el )
В нашем случае удалиться и кнопка, и автомобиль, потому, что мы привязали их к созданному элементу "need" (который тоже удалиться). Опять же, этой функцией ( destroyElement() ) удалиться любой указанный нами элемент, будь то автомобиль, пед, gui, объект и пр.
Все функции элементов можно посмотреть здесь: https://wiki.multitheftauto.com/wiki/Element
Автор - RastaOrecha