Лог

Arizona Mobile 3

Потрачен
Автор темы
117
12
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Версия MoonLoader
.026-beta
Можете подсказать как сделать лог скупа/продаж
 

XONE

Участник
7
6
Тут добавил функцию на сохранение логов в файл для примера, а как грабать сами логи можешь посмотреть в функции sampev.onServerMessage

Lua:
local sampev = require("samp.events")

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
 
Последнее редактирование:

Arizona Mobile 3

Потрачен
Автор темы
117
12
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
спс
 

Вложения

  • Screenshot_2024-02-23-22-28-24-115_com.arizona.game.jpg
    Screenshot_2024-02-23-22-28-24-115_com.arizona.game.jpg
    807.7 KB · Просмотры: 43