Помощь LUA (Запись текста в отдельный файл)

azimoff2

Потрачен
Автор темы
64
9
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Версия SA-MP
  1. 0.3.7 (R1)
  2. 0.3.7-R3
Есть ли возможность реализовать систему под действием которой при выдаче деморгана с причиной "до бана" будет записываться в отдельный файл ник.
Т.е администратор вводит команду /jail 228 30 Бот и скрипт записывает имя посаженого человека в отдельный файл.
При этом в файл записывалось еще /banoff 0 например.

Например: Администратор Name_Text [86] посадил игрока Main_Test 33] в деморган на 3000 минут. Причина: до бана (чит)

Пробовал реализовать это так:
Папка создавалась, но txt не записывался.


123123:
require 'lib.moonloader'
local sp = require 'lib.samp.events'

function main()
    while not isSampAvailable() do wait(0) end
    if not doesDirectoryExist(getWorkingDirectory()..'\\Bans') then createDirectory(getWorkingDirectory()..'\\Bans') end
    while true do
        wait(0)
    end
end

function sp.onServerMessage(clr, text)
    if text:match("{FF0000}Администратор (.*) посадил игрока (.*). Причина: до бана") then
        local nick = text:match("{FF0000}Администратор .* посадил игрока (.*). Причина: до бана")
        if not doesFileExist(getWorkingDirectory()..'\\Bans\\'..nick..'.txt') then
            file = io.open(getWorkingDirectory().."\\Bans\\"..nick..".txt", "w")
            file:write(text.."\n")
            file:close()
        else
            file = io.open(getWorkingDirectory().."\\Bans\\"..nick..".txt", "a")
            file:write(text.."\n")
            file:close()
        end
    end
end
 
Решение
не супер удобная система, если хочешь создавать файлы с ником в самом названии
удобнее наверное в какой-то один файл записывать
а так - попробуй как тут, хз, можешь гта от имени администратора запустить

yung milonov

Известный
976
477
не супер удобная система, если хочешь создавать файлы с ником в самом названии
удобнее наверное в какой-то один файл записывать
а так - попробуй как тут, хз, можешь гта от имени администратора запустить