Проблемы с эхолотом

Minhjhs

Участник
Автор темы
62
16
Версия MoonLoader
.027.0-preview
Я, скачал обновлённую версию скрипта FisherMan
И заметил маленький минус, он не может найти эхолот в инвентаре, часть исходника:
Lua:
--========================================== ECHOLOT ==========================================--

-- объект Эхлолот, хранит ID текстдрава страницы и ячейки в которой находится
local echolot = {pageTextDrawId = -1, slotTextDrawId = -1}

-- клик на Эхолот
function echolot.click()
    wait(inventoryWait*2)
    sampSendClickTextdraw(echolot.pageTextDrawId)
    wait(inventoryWait*2)
    
    -- проверка на то, что в данной ячейке находится Эхолот
    mode, roX, _, _, _, _, _ = sampTextdrawGetModelRotationZoomVehColor(echolot.slotTextDrawId)
    _, outlinecolo = sampTextdrawGetOutlineColor(echolot.slotTextDrawId)
    if mode == 18875 and roX == 263 and outlinecolo == 4284874850 then
        sampSendClickTextdraw(echolot.slotTextDrawId)
        wait(inventoryWait)
        sampSendClickTextdraw(2302)
    else -- если был перемещен - инициализируем заново
        toChat(errorEcholotClickFail)
        echolot.pageTextDrawId = -1
        echolot.slotTextDrawId = -1
        if not echolot.init() then
            return false
        end
        sampSendClickTextdraw(echolot.slotTextDrawId)
        wait(inventoryWait)
        sampSendClickTextdraw(2302)
    end
    
    return true
    
end
-- поиск Эхолота в инвентаре
function echolot.findInInventory()
    for pageNum = 2107, 2110 do
        wait(inventoryWait)
        sampSendClickTextdraw(pageNum)
        wait(inventoryWait)
        for id = 2142, 2207 do
            if sampTextdrawIsExists(id) then
                mode, roX, _, _, _, _, _ = sampTextdrawGetModelRotationZoomVehColor(id)
                _, outlinecolo = sampTextdrawGetOutlineColor(id)

                if mode == 18875 and roX == 263 and outlinecolo == 4284874850 then
                    echolot.pageTextDrawId = pageNum
                    echolot.slotTextDrawId = id
                    return true
                end
            end
        end
    end
    
    return false
end
-- инициализация Эхолота
function echolot.init()
    wait(inventoryWait)
    sampSendChat("/invent")
    wait(inventoryWait)
    -- если Эхолот найден в инвентаре - возвращаем true
    if not echolot.findInInventory() then
        toChat(errorEcholotEnitFail)
        return false
    end
    return true
end
-- использование Эхолота
function echolot.use()
    -- если Эхолот не инициализирован
    if echolot.pageTextDrawId == -1 or echolot.slotTextDrawId == -1 then
        toChat(echolotInintMessage)
        if not echolot.init() then
            return false
        else  -- если инициализация прошла успешно - кликаем на него
            toChat(echolotInintMessageSuccess)
            -- если удалось кликнуть на Эхолот
            if echolot.click() then
                return true
            end
        end
    else -- если уже был инициализирован - кликаем на него
        sampSendChat("/invent")
        wait(inventoryWait*2)
        -- если удалось кликнуть на Эхолот
        if echolot.click() then
            return true
        end
    end
    return false
end
В lua я 0

Играю с лаунчера арз
 
  • Эм
Реакции: YarikVL