Получить текст после скриншота

AndroSamp

Известный
Автор темы
297
48
Можно получить этот текст: Screenshot Taken - sa-mp-000.png после сделанного скрина. Покапался в инете, покапался в файлах, посидел в туалете. Так и не нашел функцию.
 
Решение
Lua:
function main()
    while not isSampAvailable() do wait(100) end

    while true do wait(0)

        local chatstring = sampGetChatString(99)
        if chatstring:find('Screenshot Taken') then
            sampAddChatMessage('-', -1)
            -- код
        end
 
    end
end
Твой код не универсален, так как во первых ищет только по двум словам, а не регуляркой и ещё он сработает если кто то в чате напишет "Screenshot Taken", так что ещё проверочку на цвет добавил.
Lua:
function main()
  if not isSampLoaded() or not isSampfuncsLoaded() then return end
  while not isSampAvailable() do wait(100) end
  while true do
    wait(0)
    if select(1, sampGetChatString(99)):find("Screenshot Taken %- sa%-mp%-%d+%.png") and select(3...

darkjer

Активный
134
68
Можно получить этот текст: Screenshot Taken - sa-mp-000.png после сделанного скрина. Покапался в инете, покапался в файлах, посидел в туалете. Так и не нашел функцию.
sampGetChatString(99)
 
  • Нравится
Реакции: AndroSamp

D3.Pheonix

🎹
Модератор
2,868
1,647
либо через память как то
R1
Samp.dll + 0x119CBC [byte]
Но это не точно, этой функой можно сделать скрин, возможно и обратно сработает, если прочитать память. Проверить могу только вечерком
 
Последнее редактирование:
  • Нравится
Реакции: AndroSamp и Fott

Albertio

Attention! Thanks for your attention.
887
717
Lua:
function main()
    while not isSampAvailable() do wait(100) end

    while true do wait(0)

        local chatstring = sampGetChatString(99)
        if chatstring:find('Screenshot Taken') then
            sampAddChatMessage('-', -1)
            -- код
        end
 
    end
end
Твой код не универсален, так как во первых ищет только по двум словам, а не регуляркой и ещё он сработает если кто то в чате напишет "Screenshot Taken", так что ещё проверочку на цвет добавил.
Lua:
function main()
  if not isSampLoaded() or not isSampfuncsLoaded() then return end
  while not isSampAvailable() do wait(100) end
  while true do
    wait(0)
    if select(1, sampGetChatString(99)):find("Screenshot Taken %- sa%-mp%-%d+%.png") and select(3, sampGetChatString(99)) == 4287146594 then
      sampAddChatMessage("Скриншот", -1)
    end
  end
end
 
  • Нравится
Реакции: Tema05

D3.Pheonix

🎹
Модератор
2,868
1,647
R1
Samp.dll + 0x119CBC [byte]
Но это не точно, этой функой можно сделать скрин, возможно и обратно сработает, если прочитать память. Проверить могу только вечерком
Ну да работает. Читай память по этому офсету. Во время скриншота значение будет 1. Иначе 0.
ТОк хз что лучше, парсить/хукать чат или читать память
 
  • Нравится
Реакции: AndroSamp