Помощь по кодировке сообщений чата SA:MP

hookernice

Новичок
Автор темы
1
0
Версия MoonLoader
Другое
Здравствуйте, мне нужен был простой логер сообщений чата в сампе и я написал небольшой код, который просто должен выписывать сообщения игроков в консоль, но по какой-то причине скрипт просто не пропускает никакие сообщения. Смотрел похожие темы - не помогло, попросту не принимает переменную, как я понял, из-за кодировки, и условие с русскими буквами становится невыполнимым, хотя вроде как код написан верно. Я уже и менял кодировку самой переменной, и кодировку условия, и даже файл открывал в разных кодировках, но все впустую. Я бы просто хотел понять в чем может-быть проблема и поэтому прошу помочь.

Заранее спасибо.
Lua:
script_name("Message")

require("lib.moonloader")
require("lib.sampfuncs")
local encoding = require "encoding"
local samp_ev = require "lib.samp.events"

encoding.default = 'CP1251'
-- u8 = encoding.UTF8
-- cp51 = encoding.CP1251

run = false

function main()
    while not isSampAvailable() do wait(1000) end
    print('{27AB0F}LOADED')
    sampRegisterChatCommand('log', function()
        run = not run
        if run then
            sampAddChatMessage("LOG +", -1)
        else
            sampAddChatMessage("LOG -", -1)
        end
    end)
end

function samp_ev.onServerMessage(color, text)
    if text:find("говорит: ") then
        print(text)
    end
end
 

Aniki

🐰
Администратор
1,233
1,580
Это старый баг, нужно или вызывать print внутри lua_thread или поставить sampfuncs 5.7.1+ версии https://www.blast.hk/threads/17/
Пример кода:
Lua:
lua_thread.create(function()
    wait(0)
    print('msg')
end)
 
Последнее редактирование:
  • Влюблен
Реакции: Byte