Получение статистики

Default_0

Новичок
Автор темы
20
0
Что не так? Статистика не берётся. Только открывается окно.
Lua:
function fZVLdP_44KSRW.onShowDialog(FOAY5H0pRYj_cx,b6IZBAeSNsci,Fm1HtHVhYuDTBDqOov,XNTyFtG,EHC_t4U0m6VUBRlN3116M,RTTSibbWErgJ6X) if SgtV.info.auth then if SgtV.statusUpdate and Fm1HtHVhYuDTBDqOov:find( "Основная статистика" ) then local j4k,UY,bvGsA0f3H8Yn=string.find(RTTSibbWErgJ6X, "Имя:.-[(.-)]" )
  local Rlxgo154,Xf,s5lGwESKHZYjY5QCjtp=string.find(RTTSibbWErgJ6X, "Организация:.-[(.-)]" )
  local ydFkOODr,sFNXDTPQhp7ISP,j4,LSv3qpf_k11xkWMRC9qRh=string.find(RTTSibbWErgJ6X, "Должность:.-}(.-)((d+))" ) if ydFkOODr==  0  then j4,LSv3qpf_k11xkWMRC9qRh= "Не имеется" , 0
end
local Q,u_osnlgUz,UFr_0tfYWIiL=string.find(RTTSibbWErgJ6X, "Номер телефона:.-[(.-)]" )
local ezYpVMjluAAQ2VcVJgZr,mH9gYEsD,NijY=string.find(RTTSibbWErgJ6X, "Пол:.-[(.-)]" ) if j4k> 0 and Q> 0 and Rlxgo154 > 0  then if s5lGwESKHZYjY5QCjtp==  "Инструкторы"  then UpdateProfile(bvGsA0f3H8Yn,j4,LSv3qpf_k11xkWMRC9qRh,UFr_0tfYWIiL,NijY)else sampAddChatMessage( "» Ошибка при обновлении информации. Вы не сотрудник ГЦЛ." ,VVgbX7Esya_n)
end
SgtV.statusUpdate= false return  false  else sampAddChatMessage( "» Ошибка при обновлении информации. Неудачный парсинг. Попробуйте снова." ,VVgbX7Esya_n)SgtV.statusUpdate= false return  false
end end
if Fm1HtHVhYuDTBDqOov:find( "Выберите лицензию" ) and UfChxooRgpK2xLS2bP.license.status then if UfChxooRgpK2xLS2bP.license.id>= 0 and UfChxooRgpK2xLS2bP.license.id<= 5  then sampSendDialogResponse(FOAY5H0pRYj_cx, 1 ,UfChxooRgpK2xLS2bP.license.id, "" )UfChxooRgpK2xLS2bP.license.id=- 1 UfChxooRgpK2xLS2bP.license.status= false return  false  else UfChxooRgpK2xLS2bP.license.id=- 1 UfChxooRgpK2xLS2bP.license.status= false sampAddChatMessage( "» Ошибка. Попробуйте снова." ,S70I)return  false
end end
if SgtV.license.sellgun.status and string.find(Fm1HtHVhYuDTBDqOov, "Мед. карта" ) then local r5mYArW8,z,Lyhdz0H6LV2L4vg=string.find(RTTSibbWErgJ6X, "Имя:s(.-)c" )
local e6Xa,GtitTzly9FLBWo1y8n,RNb=string.find(RTTSibbWErgJ6X, "Статус:s(.-)c" ) if r5mYArW8 > 0 and e6Xa> 0  then if Lyhdz0H6LV2L4vg==SgtV.license.sellgun.name then if string.find(RNb, "Полностью здоровый" ) then if sampIsPlayerConnected(SgtV.license.sellgun.id) then if sampGetPlayerNickname(SgtV.license.sellgun.id)==SgtV.license.sellgun.name then SgtV.license.sellgun.name= nil SgtV.license.sellgun.start= 0 SgtV.license.sellgun.status= false cmdGivelicense(tostring(SgtV.license.sellgun.id).. " 5" )return  false
end end else sampAddChatMessage( "» Ошибка. Попробуйте снова." ,S70I)sampSendChat( "Извините, но я не могу продать Вам лицензию. Вы нездоровы. Приходите, как замените медкарту." )SgtV.license.sellgun.name= nil SgtV.license.sellgun.start= 0 SgtV.license.sellgun.status= false return  false
end end end end elseif SgtV.statusAuth then if Fm1HtHVhYuDTBDqOov:find( "Основная статистика" ) then local qGb_Gx8sqahukH,BfGfnsKTO8QCDpVylbW,yVv3Q1jH=string.find(RTTSibbWErgJ6X, "Имя:.-[(.-)]" )
local KgzmdRAZwBlN0Ze63JR5,Qqlsg6M,ScUBtdauT=string.find(RTTSibbWErgJ6X, "{FFFFFF}Организация:.-[(.-)]" )
local SLc81t4NUV_xsnAgqzA,rURpLx,NvU0eah5CDLebd8,T4tigaj5jVLJP0Fod=string.find(RTTSibbWErgJ6X, "{FFFFFF}Должность:.-}(.-)((d+))" ) if not SLc81t4NUV_xsnAgqzA then SLc81t4NUV_xsnAgqzA,NvU0eah5CDLebd8,T4tigaj5jVLJP0Fod= 1 , "Безработный" , 0
end
local Wh3JK1hPCbJVO,ZsKs0ZLG2,fzlpyZoOFTQP=string.find(RTTSibbWErgJ6X, "Номер телефона:.-[(.-)]" )
local Z07SAuWX4Oq90nvfO7cnc,DoGJPKu,OD5io0zaC8ap4kvUHm=string.find(RTTSibbWErgJ6X, "Пол:.-[(.-)]" ) if qGb_Gx8sqahukH> 0 and Wh3JK1hPCbJVO> 0 and KgzmdRAZwBlN0Ze63JR5 > 0  then if ScUBtdauT==  "Инструкторы" and SLc81t4NUV_xsnAgqzA then Authorization(yVv3Q1jH,NvU0eah5CDLebd8,T4tigaj5jVLJP0Fod,fzlpyZoOFTQP,OD5io0zaC8ap4kvUHm)else sampAddChatMessage( "» Ошибка при авторизации. Вы не сотрудник ГЦЛ." ,VVgbX7Esya_n)
end
SgtV.statusAuth= false return  false  else sampAddChatMessage( "» Ошибка при авторизации. Неудачный парсинг. Попробуйте снова." ,VVgbX7Esya_n)SgtV.statusAuth= false return  false
end end end end
 
Последнее редактирование:

Default_0

Новичок
Автор темы
20
0
где-то, значит, переменную криво написал, проверяй :)
а лучше сразу всем переменным дай нормальные названия.
Переменённые все правильно написанные.

Lua:
function slot3.onShowDialog(slot0, slot1, slot2, slot3, slot4, slot5)
    if uv0.info.auth then
        if uv0.statusUpdate and slot2:find("Основная статистика") then
            slot6, slot7, slot8 = string.find(slot5, "Имя:.-[(.-)]")
            slot9, slot10, slot11 = string.find(slot5, "Организация:.-[(.-)]")
            slot12, slot13, slot14, slot15 = string.find(slot5, "Должность:.-}(.-)((d+))")

            if slot12 == 0 then
                slot15 = 0
                slot14 = "Не имеется"
            end

            slot16, slot17, slot18 = string.find(slot5, "Номер телефона:.-[(.-)]")
            slot19, slot20, slot21 = string.find(slot5, "Пол:.-[(.-)]")

            if slot6 > 0 and slot16 > 0 and slot9 > 0 then
                if slot11 == "Инструкторы" then
                    UpdateProfile(slot8, slot14, slot15, slot18, slot21)
                else
                    sampAddChatMessage("» Ошибка при обновлении информации. Вы не сотрудник ГЦЛ.", uv1)
                end

                uv0.statusUpdate = false

                return false
            else
                sampAddChatMessage("» Ошибка при обновлении информации. Неудачный парсинг. Попробуйте снова.", uv1)

                uv0.statusUpdate = false

                return false
            end
        end
 
Последнее редактирование:

Pakulichev

Software Developer & System Administrator
Друг
1,789
2,131
Квадратные скобки нужно экранировать.
Lua:
%[...]
А вообще, некоторые паттерны составлены некорректно. Стоит подробнее изучить методы использования. Пример дать не могу, так как нет доступа к ПК.
 

Default_0

Новичок
Автор темы
20
0
Квадратные скобки нужно экранировать.
Lua:
%[...]
А вообще, некоторые паттерны составлены некорректно. Стоит подробнее изучить методы использования. Пример дать не могу, так как нет доступа к ПК.
Квадратные скобки используются в статистике
sa-mp-046.png
 

Default_0

Новичок
Автор темы
20
0
Ты тупо декомпилировал чей то скрипт и хочешь чтоб он без каких либо изменений с твоей стороны нормально запустился? не получится
Так я и хочу узнать в чём проблема
 

FBenz

Активный
328
40
Сказали же, нужно экранировать скобки, читай выше. Если ты используешь просто "[]", то это массив, а если "%[*текст*%]", то это текст в квадратных скобках. Почитай про регулярные выражения.
А вообще пздить код плохо, особенно если он закомпилирован