парсинг серверного диалога

Fuhio

Новичок
Автор темы
6
0
Версия MoonLoader
.026-beta
изображение_2022-07-16_024510250.png

Я попытался первый раз в жизни наговнокодить написать скрипт и столкнулся с проблемой, что при проверке текста после парсинга диалога мне мешает(как я понимаю) код цвета перед числом урожая. Как можно забрать оттуда именно число?

Lua:
local sampev = require 'lib.samp.events'

function sampev.onShowDialog(id, style, title, b1, b2, text)
    if id == 226 then
        sampSendDialogResponse(226, 1, nil, '1')
    end

    
    if id == 225 then
        lua_thread.create(function() wait(10)
            if text:match("Урожай: (%d+) гр.") > 0 then
                sampSendDialogResponse(225, 1, 2, nil)
    
            end
        end)
    end
end
 
Последнее редактирование:
Решение
Посмотреть вложение 157645
Я попытался первый раз в жизни наговнокодить написать скрипт и столкнулся с проблемой, что при проверке текста после парсинга диалога мне мешает(как я понимаю) код цвета перед числом урожая. Как можно забрать оттуда именно число?

Lua:
local sampev = require 'lib.samp.events'

function sampev.onShowDialog(id, style, title, b1, b2, text)
    if id == 226 then
        sampSendDialogResponse(226, 1, nil, '1')
    end

  
    if id == 225 then
        lua_thread.create(function() wait(10)
            if text:match("Урожай: (%d+) гр.") > 0 then
                sampSendDialogResponse(225, 1, 2, nil)
  
            end
        end)
    end
end
Lua:
text:gsub("{.-}", ""):match("Урожай: (%d+)")
еще возможно...

moreveal

Известный
Проверенный
814
462
Посмотреть вложение 157645
Я попытался первый раз в жизни наговнокодить написать скрипт и столкнулся с проблемой, что при проверке текста после парсинга диалога мне мешает(как я понимаю) код цвета перед числом урожая. Как можно забрать оттуда именно число?

Lua:
local sampev = require 'lib.samp.events'

function sampev.onShowDialog(id, style, title, b1, b2, text)
    if id == 226 then
        sampSendDialogResponse(226, 1, nil, '1')
    end

  
    if id == 225 then
        lua_thread.create(function() wait(10)
            if text:match("Урожай: (%d+) гр.") > 0 then
                sampSendDialogResponse(225, 1, 2, nil)
  
            end
        end)
    end
end
Lua:
text:gsub("{.-}", ""):match("Урожай: (%d+)")
еще возможно придется выполнить преобразование с помощью tonumber(), чет не помню, определит ли оно само
 
Последнее редактирование: