Рация с тегом

Tak

Известный
Автор темы
176
70
Автоматическое прописывание выбранного тега в рацию

В разделе "Помощь" искали скрипт на автоматический тег в рацию, написал, скинул.
Вдруг кому еще когда-то пригодится, поэтому создаю тему.
Можете не искать там богоподобного кода, его там нет =)

При первом заходе создает ini файл по пути: moonloader\config\configTeg.ini
В ini файле: tag=Сержант (Сержант - тот тег который будет писаться в рацию)
(При создании tag=none нужно его установить)
Тег можно установить через игру командой /tag Сержант (или прописать его в ini файл после tag=)
Использовать /rt проверка связи
Выведет следующее: [Сержант] проверка связи

Так же есть защита от пустых строк, т.е пустой тег вы не сохраните, и не отправите

У меня написало не в рацию, у вас напишет в рацию
4LtOfN3.png

0MoS3Qt.png

hrBBy1N.png

Код для интересующихся:
Lua:
script_name("Teg chat")
script_authors("Pelemexa (blast.hk)")
script_version("1.0")

local inicfg = require 'inicfg'

local teg = ""


function main()
  if not isSampLoaded() or not isSampfuncsLoaded() then return end
  while not isSampAvailable() do wait(100) end
 
 
  sampRegisterChatCommand('rt', rt)
  sampRegisterChatCommand('teg', tegFunc)
 
  configtegIni = inicfg.load(nil, "configTeg")
  if configtegIni ~= nil then
    teg = configtegIni.settings.teg
  else
    configWrite()
  end
  wait(-1)
end


function tegFunc(str)
    if #str >= 1 then
        configWriteStr(str)
    else
        sampAddChatMessage(string.format("{FF9966}[Тег] Пример: {FF6600}/teg Сержант", teg), -1)
    end
end

function rt(str)
    if teg ~= "none" and #str >= 1 then
        sampSendChat(string.format("/r [%s] %s", teg, str))
    elseif teg == "none" then
        sampAddChatMessage("{FF9966}[Тег] Установите тег командой {FF6600}/teg", -1)
    elseif #str == 0 then
        sampAddChatMessage("{FF9966}[Тег] Введите что-то {FF6600}/rt проверка связи", -1)
    end
end

function configWrite()
    local mainIni = inicfg.load({
      settings =
      {
        teg = "none",
      }
    })
    if inicfg.save(mainIni, "configTeg") then
      print("[Тег] Конфиг успешно создан")
      teg = mainIni.settings.teg
    end
end

function configWriteStr(str)
    if configtegIni ~= nil then
        configtegIni.settings.teg = str
    end
 
 
    if inicfg.save(configtegIni, "configTeg") then
        teg = configtegIni.settings.teg
        sampAddChatMessage(string.format("{FF9966}[Тег] Тeг {FF6600}[%s] {FF9966}успешно сохранен", teg), -1)
    end
end
 

Вложения

  • teg.lua
    1.6 KB · Просмотры: 283

chapo

🫡 В армии с 17.10.2023. В ЛС НЕ ОТВЕЧАЮ
Друг
8,762
11,198
Не очень понимаю, зачем он нужен, ведь почти на всех серверах ПД 'шников заставляют скачивать биндеры по типу MVDHelper 'а, и там это есть.
 

TheRuthArbiter

Неповторимый РПшер
Проверенный
523
305
Не очень понимаю, зачем он нужен, ведь почти на всех серверах ПД 'шников заставляют скачивать биндеры по типу MVDHelper 'а, и там это есть.
Я на ерп хуй клал на эти биндеры и играю без них, для меня эта штучка подойдёт. Автору спасибо!
 

Pakulichev

Software Developer & System Administrator
Друг
1,789
2,130
Что-то мне подсказывает, что INI используется как-то через пятую точку...
 

Pakulichev

Software Developer & System Administrator
Друг
1,789
2,130
Я понимаю, просто сам способ использование мне немного странный. Ты зачем-то запихнул массив с настройками в функцию, хотя мог подгружать его, как дефолтный ещё в начале, не запариваясь с какими-то стрёмными функциями, и всё бы работало нормально и с куда меньшим количеством текста.