Jump to content

Ресурс не работает. Буду благодарен за помошь.


Recommended Posts

Написал скрипт для сервера, должен выключать определённый ресурс и перезапускать другой. Не работает. Вот скрипт:

function reestr()
    local idResources = getResources()
    for index, res in ipairs(idResources) do
        if getResourceState(ID) == "running" then
            restartResource(ID)
        end
    end
end


function stopFreeroamResources()
    local allResources = getResources()
    for i, resource in ipairs(allResources) do
        if ( getResourceState(freeroam) == "running" ) and ( resource ~= getThisResource() ) then
            stopResource(freeroam)
        end
    end
end

reestr()
stopFreeroamResources()

Заранее спасибо! (Укажите ошибки в коде, учусь писать скрипты для мта.)

Link to comment
  • Scripting Moderators

?. Добро пожаловать на форум.
Обе функции содержат одну ошибку. Вам нужно передавать в getResourceState элемент ресурса, который был получен во время обхода элементов таблицы ресурсов (getResources).
В первой вы передаёте ID, который нигде не фигурирует в коде, когда нужно res.
Во второй, если нужно остановить определённый ресурс, можно обойтись без циклов, получив ресурс по его названию (getResourceFromName).
Рабочий пример:

function stopFreeroamResource()
	local freeroamResource = getResourceFromName("freeroam")
	if (freeroamResource) and getResourceState(freeroamResource) == "running" then
		stopResource(freeroamResource)
	end
end

stopFreeroamResource()

Однако дебаг должен был сообщить об этом. На вики есть руководство по отладке кода. Позволит видеть ошибки, предупреждения и информационные сообщения.

Edited by Sarrum
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...