В данном уроке будет показан пример, как можно установить смену одежды с интервалом в 2 секунды.
Сначала, мы собираемся рассчитать, сколько штук в каждой категории, и сохранят счет в этой таблице:

PHP код:
local count = {} 
Мы имеем 18 типов одежды, для проверки (они будут зарегистрированы вместе с остальной частью ID в релизе):

PHP код:
for type 017 do
    --
инициализация счетчика
    local clothes 
0
    
-- Мы увеличиваем счетчик до тех пор пока не получим любой неправильный ID
    
while getClothesByTypeIndex typeclothes ) ~= false
        
do clothes clothes 1 end
    
-- помнитечто последний не существуетмы должны удалить его 
    
-- от счетасохраняя его
    count
[type] = clothes 1
end 
Создание функции изменения одежды


Теперь мы создадим функцию, изменяющую непосредственно одежду. Должно быть взято несколько вещей в аккаунт, которые будут записываться в один момент. Декларация начинается здесь:

PHP код:
function doChangeClothes () 
Теперь мы собираемся запустить это для каждого присоединяемого игрока. Это делается восстановлением таблицы каждого игрока на сервере, затем перекрутить через таблицу и поменять их одежду. Сначала мы восстановим таблицу наших игроков:

PHP код:
local players getElementsByType "player" 
Затем мы используем Lua для (for) прокрутки, чтобы пройти каждого игрока в этой таблице.

PHP код:
for iplayer in players do 
Сначала, мы должны выбрать случайный тип, используя Lua math.random. Мы оставим татуировки (тип ID 4-12), потому что они не видимы с одеждой в любых случаях:

PHP код:
        local accessory math.random 0)
        if 
accessory == 1 then
            
--выберите дополнительный тип
            type 
math.random 1317 )
        else
            --
выберите тип причесок/рубашек/брюк/ботинок
            type 
math.random 0)
        
end 
Полные костюмы (тип ID 17) применены сверху рубашек и брюк, таким образом, мы хотели бы их удалить, если любой из них будет выбран:

PHP код:
        if type == or type == 2 then
            removePlayerClothes 
player17 )
        
end 
Теперь, когда мы имеем наш тип, мы должны выбрать случайную часть одежды в пределах этого:

PHP код:
        local clothing math.random 0count[type] ) 
Только добавление этой одежды игроку оставляем, чтобы сделать.

PHP код:
        --мы получаем текстуру и модель через getClothesByTypeIndex
        texture
model getClothesByTypeIndex typeclothing )
        --
и мы добавляем эту часть одежды игроку.
        
addPlayerClothes playertexturemodeltype 
Мы не должны забывать закрывать "для" ("for") прокрутки, и декларации функции.
PHP код:
    end
end 

Запуск функции


Наконец, мы неоднократно вызовем нашу функцию, когда этот скрипт "ресурс" ("resource") (о нём будут объяснено позже) начат.

PHP код:
addEventHandler("onResourceStart"getRootElement(), "clothesStart")
function 
clothesStart resourcename 
Наша функция clothesStart должна быть вызвана только, когда этот (this) скрипт загрузится. Следующая линия заставляет скрипт игнорировать любые загрузки ресурса кроме него собственного:

PHP код:
if resourcename ~= getThisResource() then return end 
Наконец, мы будем использовать функцию setTimer, как в прошлом руководстве, для того чтобы вызывать функцию каждые две секунды.

PHP код:
--0 подразумевает бесконечное времяпока таймер не будет закончен
    setTimer 
"doChangeClothes"2000)
end 
Автор: посторонний сайт