- 23
- 3
- Версия SA-MP
-
- Другая
logfile = "lavkaLogs"
function save_log(logtext, filename)
local current_date = os.date("%d-%m-%Y")
local current_time = os.date("[%H:%M:%S]")
local log_directory = getWorkingDirectory() .. "/logs/"
local file_path = log_directory .. filename .. "_" .. current_date .. ".log"
-- Открываем файл для добавления нового лога
local file = io.open(file_path, "a")
if file then
-- Записываем лог в файл с датой и временем
file:write(current_time .. " " .. logtext .. "\n")
-- Закрываем файл
file:close()
else
print("Ошибка при открытии/создании файла для записи лога: " .. file_path)
createDirectory(log_directory)
end
end
-- Функция для создания папки
function createDirectory(path)
os.execute("mkdir " .. path)
end
function sampev.onServerMessage(color, text)
if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
save_log("Вы арендовали лавку", logfile)
elseif (text:find('^%[Информация%] {FFFFFF}Вы отказались от аренды лавки') or text:find('^%[Информация%] {FFFFFF}Вы сняли лавку') or text:find('^%[Информация%] {FFFFFF}У Вас закончилось время для настройки товаров')) then
save_log("Вы покинули лавку", logfile)
elseif (text:find('^%[Информация%] {FFFFFF}Ваша лавка была закрыта')) then
save_log("Вы потеряли лавку", logfile)
end
if text:find('^.+ купил у вас .+, вы получили %$%d+ от продажи %(комиссия %d процент%(а%)%)') then
local name, product, money = text:match('^(.+) купил у вас (.+), вы получили %$(%d+) от продажи %(комиссия %d процент%(а%)%)')
save_log(name.." купил у вас "..product.." за "..money.."$", logfile)
elseif text:find('^Вы купили .+ у игрока .+ за %$%d+') then
local product, name, money = text:match('^Вы купили (.+) у игрока (.+) за %$(%d+)')
save_log(name.." продал вам "..product.." за "..money.."$", logfile)
end
end
Почему не создаётся файл с текстом ?
function save_log(logtext, filename)
local current_date = os.date("%d-%m-%Y")
local current_time = os.date("[%H:%M:%S]")
local log_directory = getWorkingDirectory() .. "/logs/"
local file_path = log_directory .. filename .. "_" .. current_date .. ".log"
-- Открываем файл для добавления нового лога
local file = io.open(file_path, "a")
if file then
-- Записываем лог в файл с датой и временем
file:write(current_time .. " " .. logtext .. "\n")
-- Закрываем файл
file:close()
else
print("Ошибка при открытии/создании файла для записи лога: " .. file_path)
createDirectory(log_directory)
end
end
-- Функция для создания папки
function createDirectory(path)
os.execute("mkdir " .. path)
end
function sampev.onServerMessage(color, text)
if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
save_log("Вы арендовали лавку", logfile)
elseif (text:find('^%[Информация%] {FFFFFF}Вы отказались от аренды лавки') or text:find('^%[Информация%] {FFFFFF}Вы сняли лавку') or text:find('^%[Информация%] {FFFFFF}У Вас закончилось время для настройки товаров')) then
save_log("Вы покинули лавку", logfile)
elseif (text:find('^%[Информация%] {FFFFFF}Ваша лавка была закрыта')) then
save_log("Вы потеряли лавку", logfile)
end
if text:find('^.+ купил у вас .+, вы получили %$%d+ от продажи %(комиссия %d процент%(а%)%)') then
local name, product, money = text:match('^(.+) купил у вас (.+), вы получили %$(%d+) от продажи %(комиссия %d процент%(а%)%)')
save_log(name.." купил у вас "..product.." за "..money.."$", logfile)
elseif text:find('^Вы купили .+ у игрока .+ за %$%d+') then
local product, name, money = text:match('^Вы купили (.+) у игрока (.+) за %$(%d+)')
save_log(name.." продал вам "..product.." за "..money.."$", logfile)
end
end
Почему не создаётся файл с текстом ?