- Версия MoonLoader
- .026-beta
В общем, когда в глобальный чат пишется команда "бот кто ...", она обрабатывается, но сам текст "бот кто ..." почему-то не видно у меня в чате. Любой другой текст, в том числе ответ бота, видно
Lua:
local sampev = require('lib.samp.events')
function main()
while not isSampAvailable() do wait(100) end
while not sampIsLocalPlayerSpawned() do wait(100) end
math.randomseed(os.time())
local _, myId = sampGetPlayerIdByCharHandle(PLAYER_PED)
sampev.onServerMessage = function(color, text)
local _, cmdPreStartPos = text:find(':{FFA500} бот ')
if not cmdPreStartPos then return end
local cmd = toTrimmed(text:sub(cmdPreStartPos + 1))
local sepPos = cmd:find(' ');
if not sepPos then return end
local arg1 = cmd:sub(1, sepPos - 1)
local arg2 = cmd:sub(sepPos + 1)
if arg1 == 'кто' then
local maxId = sampGetMaxPlayerId()
local randId
repeat
randId = math.random(0, maxId)
until sampIsPlayerConnected(randId) or randId == myId
sampSendChat('!' .. sampGetPlayerNickname(randId) .. '(' .. randId .. ')' .. ' ' .. arg2)
end
end
end
function toTrimmed(str)
while str:find(' ') == 1 do
str = str:sub(2)
end
while str[#str] == ' ' do
str = str:sub(1, #str - 1)
end
return str
end