RU/setElementModel

From Multi Theft Auto: Wiki
Jump to navigation Jump to search


Устанавливает модель указанному элементу. Это может быть скин игрока/пешехода, модель транспортного средства или модель объекта.

Синтаксис

bool setElementModel ( element theElement, int model )

Синтаксис ООП Помогите! Я не понимаю, что это!

Метод: element:setModel(...)
Переменная: .model
Парная функция: getElementModel

Обязательные аргументы

Возвращаемые значения

  • true, если удалось сменить модель.
  • false, если указаны неверные аргументы.

Пример использования

Click to collapse [-]
Сервер

Пример 1. Этот пример позволяет игрокам изменять свой собственный скин с помощью команды "/skin [ID]".

local spam = {}

function setSkin(player, cmd, skin)
    if spam[player] and getTickCount() - spam[player] < 4000 then
        return outputChatBox("Вы не можете так часто менять скин!", player, 255, 0, 0)
    end

    skin = skin and tonumber(skin)

    if getElementModel(player) == skin or isPedDead(player) then
        return
    end

    if skin and skin <= 99999 then -- что мы знаем о диапазоне динамических ID пешеходов?
        setElementModel(player, skin)
        spam[player] = getTickCount()
    else
        outputChatBox("Неверный ID скина!", player, 255, 0, 0)
    end
end
addCommandHandler("skin", setSkin)

function cleanUp()
    if spam[source] then
        spam[source] = nil
    end
end
addEventHandler("onPlayerQuit", root, cleanUp)

Пример 2. Этот пример позволяет игрокам преобразовать свой текущий автомобиль в другую модель транспортного средства с помощью команды "/changeveh [ID]".

local spam = {}

function changeMyVehicle(player, command, newModel)
	if spam[player] and getTickCount() - spam[player] < 2500 then
		return outputChatBox("Вы не можете так часто менять модель автомобиля!", player, 255, 0, 0)
	end

	local theVehicle = getPedOccupiedVehicle(player)
	
	if not (theVehicle and getVehicleController(theVehicle) == player) then
		return outputChatBox("Вы должны управлять транспортным средством, чтобы изменить его!", player, 255, 0, 0)
	end

	if isValidModel(newModel) and isElement(theVehicle) then
		setElementModel(theVehicle, newModel)
		spam[player] = getTickCount()
	else
		outputChatBox("Неверный ID модели!", player, 255, 0, 0)
	end
end
addCommandHandler("changeveh", changeMyVehicle)

function isValidModel(modelID)
	modelID = tonumber(modelID)
	if modelID and modelID >= 400 and modelID <= 611 then
		return true
	end
	return false
end

function cleanUp()
	if spam[source] then
		spam[source] = nil
	end
end
addEventHandler("onPlayerQuit", root, cleanUp)

Смотрите также

Серверные функции

Клиентские функции


Общие функции