поиск строчки

Kecer

Участник
Автор темы
241
11
Версия MoonLoader
.026-beta
Код:
function sampev.onServerMessage(color, text)
    if text:find('Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end

Как указать цвет, условно говоря в чате от сервера появляется сообщение Тестовое сообщение с определённым цветом и тогда оно мне пишет в чат test

Пытался указать так

Код:
function sampev.onServerMessage(color, text)
    if text:find('{FFFFFF}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end

Не получилось

Вот так тоже не работает

Код:
function sampev.onServerMessage(color, text)
    if text:find('%{FFFFFF%}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end

И ещё такой вопрос, как можно узнать цвет определённой строчки в чате?
 
Последнее редактирование:
Решение
Lua:
function sv.onServerMessage(color, text)
    if color == -65281 then
        sampAddChatMessage('найдена строка с нужным цветом - '..text, -1)
    end
end
1657617076428.png





1657616921907.png

🤨
🫁
👖


это ведь не управляющий символ, его незачем экранировать.

Kecer

Участник
Автор темы
241
11

qdIbp

Автор темы
Проверенный
1,438
1,180
Код:
function sampev.onServerMessage(color, text)
    if text:find('%{FFFFFF%}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end

И ещё такой вопрос, как можно узнать цвет определённой строчки в чате?
Попробуй
Lua:
function sampev.onServerMessage(color, text)
    if text:find('%{......%}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end
либо
Lua:
function sampev.onServerMessage(color, text)
    if text:match('%{......%}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end
И ещё такой вопрос, как можно узнать цвет определённой строчки в чате?
Lua:
function sampev.onServerMessage(color, text)
    print(text)
end
Потом смотрешь в moonloader.log

Либо по директории

C:\Users\Ilya\Documents\GTA San Andreas User Files\SAMP
Открываешь chatlog.txt и там тоже все цвета
 

Kecer

Участник
Автор темы
241
11
Попробуй
Lua:
function sampev.onServerMessage(color, text)
    if text:find('%{......%}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end
либо
Lua:
function sampev.onServerMessage(color, text)
    if text:match('%{......%}Тестовое сообщение') then
        sampAddChatMessage("test")
    end
end

Lua:
function sampev.onServerMessage(color, text)
    print(text)
end
Потом смотрешь в moonloader.log

Либо по директории

C:\Users\Ilya\Documents\GTA San Andreas User Files\SAMP
Открываешь chatlog.txt и там тоже все цвета
нету не какой реакции

нету не какой реакции
Сообщение в мунлоге получил
 

qdIbp

Автор темы
Проверенный
1,438
1,180

Kecer

Участник
Автор темы
241
11
зачем экранировать фигурную скобку?

у тебя либа хоть есть?
Яж говорю сообщение получил + обычно работает то-есть када я цвет не указываю, но в таком случае можно обмануть, условно говоря не система напишет сообщение а рандомный игрок
 

Kecer

Участник
Автор темы
241
11
Lua:
function sv.onServerMessage(color, text)
    if color == -65281 then
        sampAddChatMessage('найдена строка с нужным цветом - '..text, -1)
    end
end
Посмотреть вложение 156877




Посмотреть вложение 156875
🤨
🫁
👖


это ведь не управляющий символ, его незачем экранировать.
А если мне надо определённый текст, это получается нужно вот так?

Lua:
function sv.onServerMessage(color, text)
    if text:find("Вам был добавлен предмет 'Талон +1 EXP'.") and color == -65281 then
        sampAddChatMessage('найдена строка с нужным цветом - '..text, -1)
    end
end
 

Sidney31

Известный
1,124
385
А если мне надо определённый текст, это получается нужно вот так?

Lua:
function sv.onServerMessage(color, text)
    if text:find("Вам был добавлен предмет 'Талон +1 EXP'.") and color == -65281 then
        sampAddChatMessage('найдена строка с нужным цветом - '..text, -1)
    end
end
ага